Пользователь вводит число в шестнадцатеричной системе счисления, а обратно получает его преобразованное в десятичную систему.
Решение:
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
#include <math.h>
#include «stdafx.h» #include <iostream> using namespace std; int main() {setlocale(LC_ALL,«Rus»); char hex_str[255]; int dec=0, i, n, _int; float x=0; cout<<» Введите строку >> «; cin.getline(hex_str, 255); n=strlen(hex_str); for (i=n—1; i>=0; i—) {_int=hex_str[i]; if ((_int>=48) && (_int<58)) dec+=(_int—48)*pow(16, x); else if ((_int>=65) && (_int<71)) dec+=((_int—55)*(pow(16, x))); else { cout<<» Error \n«; goto exit; } //досрочное завершение x++; } cout<<endl<<hex_str<<» в десятичной СС = «<<dec<<endl; exit: cout<<» Нажмите любую клавишу для выхода»; system(«pause>>void»); return 0; } |