Chciałem napisać program który zamienia liczby z systemu dziesiętnego na szesnastkowy jednak kompletnie nie wiem jak sie do tego zabrać...Napisałem takie coś, działa dla binarnego jednak ten szesnastkowy kompletnie się wywala...
#include <iostream>
using namespace std;
void binarny(int liczba){
const int MAX=100;
int tab[MAX],i=0;
while(liczba){
tab[i++]=liczba%2;
liczba/=2;
}
for(int j=i-1; j>=0;j--){
cout<<tab[j];
}
}
void szesnastkowy(int liczba){
const int MAX=100;
int tab[MAX],i=0,buffor;
while(liczba){
buffor=liczba%16;
if(buffor==0) tab[i++]=0;
else if(buffor%16==1) tab[i++]=1;
else if(buffor%16==2) tab[i++]=2;
else if(buffor%16==3) tab[i++]=3;
else if(buffor%16==4) tab[i++]=4;
else if(buffor%16==5) tab[i++]=5;
else if(buffor%16==6) tab[i++]=6;
else if(buffor%16==7) tab[i++]=7;
else if(buffor%16==8) tab[i++]=8;
else if(buffor%16==9) tab[i++]=9;
else if(buffor%16==10) tab[i++]='A';
else if(buffor%16==11) tab[i++]='B';
else if(buffor%16==12) tab[i++]='C';
else if(buffor%16==13) tab[i++]='D';
else if(buffor%16==14) tab[i++]='E';
else if(buffor%16==15) tab[i++]='F';
liczba/=16;
}
for(int j=i-1; j>=0;j--){
cout<<tab[j];
}
}
int main()
{
int liczba;
cout<<"Podaj liczbe: ";
cin>>liczba;
binarny(liczba);
cout<<endl;
szesnastkowy(liczba);
return 0;
}