Moje zdanie brzmi: ,,Napisz program, który przekształca podaną przez użytkownika liczbę całkowitą na tablicę znaków reprezentującą wartość liczby w systemie binarnym i wyświetla zawartość tablicy znaków na konsoli.
Wskazówki: 1. załóż, że liczba jest dodatnia, a jej maksymalna wartość to 255 i na tej podstawie dobierz rozmiar tablicy oraz typ wczytywanej zmiennej
2. pamiętaj, żeby zastosować tablicę znaków a nie tablicę liczb
3. zastosuj pętlę oraz operacje przesunięcia bitowego w celu pozyskania kolejnych cyfr w systemie binarnym (0 lub 1)
4. pamiętaj, aby w ostatnim elemencie tablicy znaków umieścić znak specjalny końca ‘\0’."
Program jest napisany poprawnie i działą prawidłowo. Jednak powinienem go przemodelować by działał tak samo ale kod wyglądał inaczej (inny sposób na podobnych funckjach i komendach). Prosiłbym właśnie o pomoc w zamianie kodu na inny
#include <iostream>
using namespace std;
int main()
{
unsigned int liczba;
int i=31;
int numer=0;
cout << "Podaj liczbe: ";
cin >> liczba;
char tab[9];
bool zera=false;
while (i--)
{
if (liczba >> i & 1& !zera)
zera = true;
if (zera)
{
if (((liczba >> i) & 1) == 1)
{
tab[numer]='1';
}
else
{
tab[numer]='0';
}
numer++;
}
}
cout<<"Liczba w systemie binarnym wynosi: "<<endl;
tab[numer] = '\0';
cout<<tab<<endl;
system("Pause");
return 0;
}