Hej, zastanawiam się w jak w szybki sposób zrobić taki generator dla układu składającego się z 2 wierszy.
Myślałem żeby zrobić coś takiego
ax + ay + az = a
ax + ay + az = a
"a" tutaj wstawiało by się z tablicy od 0 do 9. Tylko jak tutaj zrobić z 0? żeby potem przy pobieraniu współczynników do np: macierzy wyświetlało po prostu 0, a w układzie po prostu nic, gdy te zero jest przy x,y lub przy z.
Tylko proszę bez spamu typu "znajdziesz to w google". Ja się dopiero tego uczę, a mam taki program napisać na 6. Jakakolwiek pomoc mile widziana.
[C] Program do generowania układu równań
[C] Program do generowania układu równań
Edit: Nie zauważyłem, że to C, a nie C++. Zlinczujcie mnie.
Robiłem coś podobnego tylko, że do 10 równań(ale to sobie usuniesz resztę). Tutaj jest program, który to ładnie wyświetla.
a - liczba równań.
b - liczba niewiadomych w równaniu(musi być równa w każdym równaniu)
tablica[a] - tablica dwuwymiarowa, która przechowuje współczynniki
Robiłem coś podobnego tylko, że do 10 równań(ale to sobie usuniesz resztę). Tutaj jest program, który to ładnie wyświetla.
a - liczba równań.
b - liczba niewiadomych w równaniu(musi być równa w każdym równaniu)
tablica[a] - tablica dwuwymiarowa, która przechowuje współczynniki
Kod: Zaznacz cały
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
time_t t;
srand ((int) time(&t));
int a = 2, b;
cout<< endl; //takie tam bajery żeby ładniej w konsoli wyglądało
cout<<" Ile chcesz niewiadomych w rownaniu?"<<endl;
cout<<endl;
cout<<" ";
cin>>b;
cout<<endl;
b=b+1; //musi byc jeszcze jedno miejsce na wynik równania
int tablica[a][b]; //tworzy tablice
for (int i = 0; i < a; ++i) //wypełnia je losowymi zmiennymi w zakresie od 0 do 9.
{for (int j = 0; j < b; ++j)
{
tablica[i][j] = rand() % 10;
}
}
for(int i = 0; i < a; i++) //skomplikowany system wyświetlania
{
cout<<" ";
for(int j=0; j<b; j++)
{
if(j+2==b) //sprawdza czy to przedostatna pozycja w wierszu tablicy.
{ //dlatego wiemy kiedy wstawic "="
if (tablica[i][j]!=0) //jesli nasz wspolczynnik jest rozny od zera to jest wyswietlany
{
cout<<tablica[i][j];
}
switch (j+1) //wyswietla inna nazwe dla kolejnych zmiennych
{case 1:cout<<"x"; break;
case 2:cout<<"y"; break;
case 3:cout<<"z"; break;
case 4:cout<<"w"; break;
case 5:cout<<"v"; break;
case 6:cout<<"u"; break;
case 7:cout<<"t"; break;
case 8:cout<<"s"; break;
case 9:cout<<"r"; break;
case 10:cout<<"q"; break;
}
cout<<"=";
}
else
{
if(j+1==b) //sprawdza czy to już wynik
{cout<<tablica[i][j];
}
else //w każdym innym przypadku wyświetla współczynnik
{ //oraz znak "+"
if (tablica[i][j]!=0)
{
cout<<tablica[i][j];
}
switch (j+1)
{case 1:cout<<"x"; break;
case 2:cout<<"y"; break;
case 3:cout<<"z"; break;
case 4:cout<<"w"; break;
case 5:cout<<"v"; break;
case 6:cout<<"u"; break;
case 7:cout<<"t"; break;
case 8:cout<<"s"; break;
case 9:cout<<"r"; break;
case 10:cout<<"q"; break;
}
cout<<"+";
}
}
}
cout<<endl;
cout<<endl;
}
getch();
}