Răspuns :
poate ti-a fi de folos si varianta c++
eu am generalizat conditia. Numai dupa ce am rezolvat am observat ca se da un numar natural in baza 16, adica contine numai cifre arabe. eu am considerat ca numarul dat contine toate cifrele sistemului hexazecimal de numeratie (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) Daca se doreste modificarea programului se va face, ca nu e greu
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
char n[11];
cout << "introdu nr hexazecimal: ";
cin.getline(n,11);
int len=strlen(n);
unsigned long long int h=0, z=1, coef;
for (int i=len-1; i>=0; --i)
{
if (n[i]=='0') coef=0;
if (n[i]=='1') coef=1;
if (n[i]=='2') coef=2;
if (n[i]=='3') coef=3;
if (n[i]=='4') coef=4;
if (n[i]=='5') coef=5;
if (n[i]=='6') coef=6;
if (n[i]=='7') coef=7;
if (n[i]=='8') coef=8;
if (n[i]=='9') coef=9;
if (n[i]=='A') coef=10;
if (n[i]=='B') coef=11;
if (n[i]=='C') coef=12;
if (n[i]=='D') coef=13;
if (n[i]=='E') coef=14;
if (n[i]=='F') coef=15;
h=h+coef*z;
z=z*16;
}
cout << h << endl;
return 0;
}
Vă mulțumim că ați ales să vizitați site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți alte întrebări sau aveți nevoie de asistență suplimentară, nu ezitați să ne contactați. Vă așteptăm cu drag să reveniți și nu uitați să ne salvați în lista de favorite!