irinaphones8
?>

Нужно написать программу, которая переводит шестнадцатеричное число в десятичное. у меня возникли проблемы, не знаю что делать с буквами a b c d e f, вот что я написал: var a, x, y, n, q, p, z, i, w: integer; b: array [1..99999] of integer; begin writeln; write('введите число: '); read(a); write('введите систему, в которой находится число: '); read(w); q: =a; n: =1; if w=16 then begin write(q, ' в шестнадцатеричной системе = '); repeat x: =a mod 10; y: =a div 10; b[n]: =x; a: =y; n: =n+1; until y=0; end; z: =1; for i: =1 to n-1 do begin b[i]: =b[i]*z; z: =z*w; end; p: =0; for i: =1 to n-1 do p: =p+b[i]; write(p, ' в десятичной системе '); end.

Информатика

Ответы

iralkap
Const   d = '0123456789'; var   i, m, k: longint;   c: char;   n: string; begin   write('введите шестнадцатиричное число: '); readln(n);   m : = 0;   while n[1] = '0' do delete(n, 1, 1);   for i : = 1 to length(n) do   begin       c : = n[i];       case c of           'f', 'f': k : = 15;           'e', 'e': k : = 14;           'd', 'd': k : = 13;           'c', 'c': k : = 12;           'b', 'b': k : = 11;           'a', 'a': k : = 10;       else k : = pos(c, d) - 1       end;       m : = 16 * m + k   end;   writeln(n, '(16)=', m, '(10)') end. тестовое решение: введите шестнадцатиричное число: 1a2b3c 1a2b3c(16)=1715004(10)
nevzorova
Основные функции:       исполнение запросов программ (ввод и вывод данных, запуск и остановка других программ, выделение и освобождение дополнительной памяти и       загрузка программ в оперативную память и их выполнение.       стандартизованный доступ к периферийным устройствам (устройства ввода-вывода).       оперативной памятью (распределение между процессами, организация виртуальной памяти).       доступом к данным на энергонезависимых носителях (таких как жёсткий диск, оптические диски и организованным в той или иной файловой системе.       обеспечение пользовательского интерфейса.       сохранение информации об ошибках системы. дополнительные функции:       параллельное или псевдопараллельное выполнение       эффективное распределение ресурсов вычислительной системы между процессами.       разграничение доступа различных процессов к ресурсам.       организация надёжных вычислений (невозможности одного вычислительного процесса намеренно или по ошибке повлиять на вычисления в другом процессе), основана на разграничении доступа к ресурсам.       взаимодействие между процессами: обмен данными, взаимная синхронизация.       защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений.       многопользовательский режим работы и разграничение прав доступа
saljagindima
Uses crt; var   x,y: real; begin   clrscr;   x: =0;   while x< =3.8 do   begin         y: =sqrt((1/2*x-1)+2);         writeln(x: 3: 1,'  ',y: 10: 8);         x: =x+0.1   end;   readkey end. результат выполнения программы: 0.0  1.00000000 0.1  1.02469508 0.2  1.04880885 0.3  1.07238053 0.4  1.09544512 0.5  1.11803399 0.6  1.14017543 0.7  1.16189500 0.8  1.18321596 0.9  1.20415946 1.0  1.22474487 1.1  1.24498996 1.2  1.26491106 1.3  1.28452326 1.4  1.30384048 1.5  1.32287566 1.6  1.34164079 1.7  1.36014705 1.8  1.37840488 1.9  1.39642400 2.0  1.41421356 2.1  1.43178211 2.2  1.44913767 2.3  1.46628783 2.4  1.48323970 2.5  1.50000000 2.6  1.51657509 2.7  1.53297097 2.8  1.54919334 2.9  1.56524758 3.0  1.58113883 3.1  1.59687194 3.2  1.61245155 3.3  1.62788206 3.4  1.64316767 3.5  1.65831240 3.6  1.67332005 3.7  1.68819430 3.8  1.70293864

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Нужно написать программу, которая переводит шестнадцатеричное число в десятичное. у меня возникли проблемы, не знаю что делать с буквами a b c d e f, вот что я написал: var a, x, y, n, q, p, z, i, w: integer; b: array [1..99999] of integer; begin writeln; write('введите число: '); read(a); write('введите систему, в которой находится число: '); read(w); q: =a; n: =1; if w=16 then begin write(q, ' в шестнадцатеричной системе = '); repeat x: =a mod 10; y: =a div 10; b[n]: =x; a: =y; n: =n+1; until y=0; end; z: =1; for i: =1 to n-1 do begin b[i]: =b[i]*z; z: =z*w; end; p: =0; for i: =1 to n-1 do p: =p+b[i]; write(p, ' в десятичной системе '); end.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

orange-salon-job77
v-shevlyakov7992
mshelen732
Kuzina Sergeevna
Sashagleb19
asemchenko
Ioanova Korneeva1093
muziumednogorsk
waspmoto6188
Kalmikova1666
Хромов1501
nmakarchuk
ovdei71
dailyan539
Taurus59707