Diskuze: Expression Solver
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 5 zpráv z 5.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Tak, bude to sice trochu komplexnější, ale vyzkoušej tohle...
int numbers [4] = { 2, 2, 2, 2 };
int result = 8;
int _temp_result = 0;
for(n=0; n<4; n++){
_temp_result += numbers[n];
}
if(_temp_result == result) cout << "Znamenko je plus!\n";
for(n=0; n<4; n++){
_temp_result -= numbers[n];
}
if(_temp_result == result) cout << "Znamenko je minus!\n";
for(n=0; n<4; n++){
_temp_result *= numbers[n];
}
if(_temp_result == result) cout << "Znamenko je krat!\n";
for(n=0; n<4; n++){
_temp_result /= numbers[n];
}
if(_temp_result == result) cout << "Znamenko je deleno!\n";
Nicméně funguje to jen pokud jsou znaménka stejná. (tzn. ne 8+8-8*8 např.)
PS: V C++ nejsem moc zběhlý, tak jsem někde mohl udělat chybu. Sorry kdyžtak.
Ďakujem za snahu, ale bolo by dobré, aby to fungovalo aj vtedy, keď nie
sú znamienka rovnaké
Tohle je trochu složitější, vem si, kolik bude asi možností, jak to
složit, máš celkem 4 znaménka a máš je dosadit do 3 míst. Pokud se tedy
nepletu jsou to variace s opakováním a to máš 4 na 3 a to je 64 možných
možností, tím pádem, bud si je můžeš všechny takhle vypsat, nebo na to
udělat cyklus, který bude projíždět možnosti. skus si to tady prostudovat,
třeba ti to pomůže http://forum.matematika.cz/viewtopic.php?…
Viem to je kombinatorika
Vypisovať sa mi to nechce... tak jedine spraviť cyklus
(btw to forum pomohlo)
Zobrazeno 5 zpráv z 5.