Witajcie.
Wpadłem na pomysł stworzenia prostego programu który ma na celu symulowanie wzrostu populacji komórek.
Oto kod:
Kod:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int pier_gen; /*pierwsza generacja*/
int ost_gen; /*do ktorej gen symulujemy*/
float czerwona_wsp; /*wspolczynnik wzrostu kom czerwonej*/
float niebieska_wsp; /*wspolczynnik wzrostu kom niebieskiej*/
int czerwona=1; /*ilosc kom czerwonych 1-gen*/
int niebieska=2; /*ilosc kom niebieskich 1-gen*/
/*int nowaczerwona;
int nowaniebieska;*/
cout<<"Podaj ilosc symulacji: ";
cin >>ost_gen;
for (pier_gen=0; pier_gen < ost_gen; pier_gen+=1)
{
czerwona_wsp=0.2;
niebieska_wsp=0.196;
czerwona=czerwona+(czerwona*czerwona_wsp);
niebieska=niebieska+(niebieska*niebieska_wsp);
cout<<"Czerwonych Komorek: "<< czerwona << endl;
cout<<"-----------------------------------------"<<endl;
cout<<"Niebieskich Komorek: "<< niebieska << endl;
cout<<"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"<<endl;
}
system("PAUSE");
return EXIT_SUCCESS;
}
Trudno to jeszcze nazwac symulatorem bo choćby współczynnik wzrostu komórek jest stały(narazie), ale problem tkwi w zliczaniu nowych komórek.
W pętli są współczynniki wzrostu później mnożę pierwotna ilość komórek przez współczynnik wzrostu czyli:
Kod:
czerwona=czerwona+(czerwona*czerwona_wsp)
Przy kolejnej symulacji czerwona powinna wynosić 1.2, a raczej 1 bo z float na int.
Nawet po setnej symulacji wynik nadal wynosi 1 dla czerwonej i 2 dla niebieskiej.
Moje pytanie co jest nie tak?
Mam dodac nową zmienna by liczyła mi komórki czy jeszcze jedną zagnieżdżoną pętlę do zliczania nowych komórek