Răspuns :
Ti-am "dres" sursa ta (sincer eu n-o faceam asa). Ai greseli in folosirea functiei strcat:
Functia. strcat - concateneaza doua siruri. Tu nu aveai doua siruri.Am incercat sa dezvolt ideea ta fara strcat doar cu vectorul de caractere a[256] declarat global si nu local cum ai facut-o tu. Am mai folosit biblioteca universala <bits/stdc++.h>, pe care te sfatuiesc s-o faci si tu pentru a nu mai scrie atatea biblioteci. Succes!
#include <bits/stdc++.h>
/*63. Fie n nr. natural. Sa se faca conversia lui n in baza 16.*/
char a[256], c;
int n, i, val;
using namespace std;
int main()
{
cin >> n;
while (n)
{
if (n%16 >= 10)
{
val = n%16 - 10;
c = 'A' + val;
a[i ++] = c;
n=n/16;
}
else
{
val = n%16;
c = '0' + val;
a[i ++] = c;
n=n/16;
}
}
cout << a;
return 0;
}
Functia. strcat - concateneaza doua siruri. Tu nu aveai doua siruri.Am incercat sa dezvolt ideea ta fara strcat doar cu vectorul de caractere a[256] declarat global si nu local cum ai facut-o tu. Am mai folosit biblioteca universala <bits/stdc++.h>, pe care te sfatuiesc s-o faci si tu pentru a nu mai scrie atatea biblioteci. Succes!
#include <bits/stdc++.h>
/*63. Fie n nr. natural. Sa se faca conversia lui n in baza 16.*/
char a[256], c;
int n, i, val;
using namespace std;
int main()
{
cin >> n;
while (n)
{
if (n%16 >= 10)
{
val = n%16 - 10;
c = 'A' + val;
a[i ++] = c;
n=n/16;
}
else
{
val = n%16;
c = '0' + val;
a[i ++] = c;
n=n/16;
}
}
cout << a;
return 0;
}
Vă mulțumim că ați vizitat platforma noastră dedicată Informatică. Sperăm că informațiile oferite v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, nu ezitați să ne contactați. Așteptăm cu nerăbdare să vă revedem și nu uitați să ne salvați în lista de favorite!