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*
Комментарий*

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

Ohokio198336
YuRII1236
Aleksei806
Natysya7777
siren89
Surkova_Pavlovna
mashiga2632
Тимур Андраниковна634
Tamara
Alekseevich1012
annakuzina2023
Burov1446
kareeva
koxhulya61
Наталья Юрьевич1228