Witam!
Zrobiłem program, który wypisuje pseudolosowe liczby A,B,C i liczy do tych liczb funkcję kwadratową i wypisuje miejsca zerowa X1 i X2. Tak to wygląda po kompilacji:
A tak wygląda kod źródłowy:
#include <iostream>
#include<cstdlib>
#include<time.h>
#include<math.h>
using namespace std;
int main()
{
int macierz[10][6];
int delta;
srand(time(NULL));
for (int i=0;i<10;i++)
{
macierz[i][0] = rand() % 4 + 1;
macierz[i][1] = rand() % 4 + 1;
macierz[i][2] = rand() % 4 -5;
if (macierz[i][0] == 0)
{
cout<<"To nie jest funkcja kwadratowa!";
return 0;
}
else
delta=(macierz[i][1]*macierz[i][1])-(4*macierz[i][0]*macierz[i][2]);
if (delta>0)
{
macierz[i][3]= (-macierz[i][1]+(sqrt(delta))) / (2*macierz[i][0]);
macierz[i][4]= (-macierz[i][1]-(sqrt(delta))) / (2*macierz[i][0]);
}
else if (delta==0)
{
macierz[i][5]= (-macierz[i][1]) / (2*macierz[i][0]);
}
else if (delta<0){ }
}
for (int i=0;i<10;i++)
{
cout<<"A="<<macierz[i][0]<<" ";
cout<<"B="<<macierz[i][1]<<" ";
cout<<"C="<<macierz[i][2]<<" ";
cout<<"X1="<<macierz[i][3]<<" ";
cout<<"X2="<<macierz[i][4]<<" "<<endl;
//cout<<"X0="<<macierz[i][5]<<" "<<endl;
}
return 0;
}
Chciałbym teraz napisać całkowicie ten sam program tylko, że na wskaźnikach. Próbowałem to zrobić lecz już na samym początku się "zaciąłem". Doszedłem do tego momentu:
#include <iostream>
#include<cstdlib>
#include<time.h>
#include<math.h>
using namespace std;
int main()
{
int macierz[10][6];
int *wskaznik;
wskaznik = &macierz[10][6];
int delta;
srand(time(NULL));
for(int i=0;i<10;i++)
{
*wskaznik=rand()% 3 +1;
*wskaznik=rand()% 3 +1;
*wskaznik=rand()% 4 -5;
wskaznik ++;
Proszę o pomoc - jak zrobić ten program na wskaźnikach?
Z góry dziękuje za odpowiedź