
Program pro převod soustav C++
Program, který převede číslo z desítkové soustavy do binární.
Můj návrh:
#include <iostream>
using namespace std;
int main() {
setlocale(LC_ALL, "");
double zbytek;
int zadane_cislo;
cout << "*************************************************************" << endl;
cout << "Program pro převod mezi soustavami." << endl;
cout << "*************************************************************" << endl << endl;
cout << "Zadej číslo:";
cin >> zadane_cislo;
cout << endl;
for (int i = zadane_cislo; i != 0; zbytek)
zbytek = i % 2;
if (zbytek == 1)
cout << "1" << endl;
else
cout << "2" << endl;
system("PAUSE");
cout << endl;
return 0;
}
Nefunguje.
Proč?
Za prve chybaju ti zatvorky { } na oznacenie obsahu toho cyklu for. Tym padom tam cyklujes len to jedno delenie. A az si tam tie zatvorky doplnis tak zistis ze vypisane cislo je naopak.
Ked to chces urobit bez ukladania cifier, tak si najprv zistis maximalnu mocninu dvoch, a zmenusjes to a odcitavas.
unsigned int i;
//edit: opravil som podmienku
//edit2: este som opravil tu podmienku vo while, snad to uz je ok
Mám to kratší!
67ps
Jo, rekurzia. Ano to je lepsie (mna to nikdy nenapadne aj ked som to uz 5x takto videl tak to furt zabudnem :)