Dneska som sa nudil tak som pomocou svojich chabých znalostí c++ spravil tento primitívny program :) A mám otázku dalo by sa to spraviť jednoduchšie? :) Pretože toto mi príde ako mohutný kód na niečo také banálne ako prevod :) Ps... Viem že nepoužívam std:: a že by som sa za to mal smažiť v pekle :)
#include <iostream>
using namespace std; // prepáčte
int main()
{
setlocale(LC_ALL, "");
int moznost;
int cislo;
cout << "Stlačte 1 ak chcete prepočítať číslo z 10tkovej do 2kovej sústavy" << endl;
cout << "Zadajte 2 ak chcte číslo prepočítať z 2kovej do 10tkovej sústavy " << endl;
cin >> moznost;
switch (moznost)
{
case 1:
cout << "Zadajte číslo ktoré chcete prepočítať do 2kovej súsravy" << endl;
cin >> cislo;
if (cislo > 255)
{
cout << "Zadali ste nesprávne číslo" << endl;
}
else
{
if (cislo < 128)
{
cout << "0 ";
}
else
{
cislo = cislo - 128; cout << "1 ";
}
if (cislo < 64)
{
cout << "0 ";
}
else
{
cislo = cislo - 64; cout << "1 ";
}
if (cislo < 32)
{
cout << "0 ";
}
else
{
cislo = cislo - 32; cout << "1 ";
}
if (cislo < 16)
{
cout << "0 ";
}
else
{
cislo = cislo - 16; cout << "1 ";
}
if (cislo < 8)
{
cout << "0 ";
}
else
{
cislo = cislo - 8; cout << "1 ";
}
if (cislo < 4)
{
cout << "0 ";
}
else
{
cislo = cislo - 4; cout << "1 ";
}
if (cislo < 2)
{
cout << "0 ";
}
else
{
cislo = cislo - 2; cout << "1 ";
}
if (cislo < 1)
{
cout << "0 ";
}
else
{
cislo = cislo - 1; cout << "1 ";
}
}
break;
case 2:
int a, b, c, d, e, f, g, h, vysledok = 0;
cout << "Zadajte číslo ktoré chcete prepočítať z 2tkovej sústavy do 10tkovej" << endl;
cin >> a >> b >> c >> d >> e >> f >> g >> h;
if (a == 1)
{
vysledok = vysledok + 128;
}
else if(a == 0)
{
vysledok = vysledok + 0;
}
if (b == 1)
{
vysledok = vysledok + 64;
}
else if(b == 0)
{
vysledok = vysledok + 0;
}
if (c == 1)
{
vysledok = vysledok + 32;
}
else if(c == 0)
{
vysledok = vysledok + 0;
}
if (d == 1)
{
vysledok = vysledok + 16;
}
else if(d == 0)
{
vysledok = vysledok + 0;
}
if (e == 1)
{
vysledok = vysledok + 8;
}
else if (e==0)
{
vysledok = vysledok + 0;
}
if (f == 1)
{
vysledok = vysledok + 4;
}
else if(f == 0)
{
vysledok = vysledok + 0;
}
if (g == 1)
{
vysledok = vysledok + 2;
}
else if(g == 0)
{
vysledok = vysledok + 0;
}
if (h == 1)
{
vysledok = vysledok + 1;
}
else if (h == 0)
{
vysledok = vysledok + 0;
}
cout << a << b << c << d << e << f << g << h << " = " << vysledok << endl;
}
return 0;
}