нужно!! 1.Перевод чисел в десятичную систему счисления (записать весь порядок счисления) 2.Перевод чисел из десятичной системы счисления 3 Сложение двух чисел в двоичной системе счисления (записать пример столбиком и всё необходимые пометки)
Нужно найти сумму произведений каждого разряда числа на основание системы счисления (в данном случае это 8) в степени порядкового номера разряда, начиная с 0 от разряда единиц.
2. Перевод чисел из десятичной системы счисления
Например:
Нужно делить исходное число и получаемые частные на основание требуемой системы счисления (в данном случае это 16) и записывать остатки. Потом необходимо в обратном порядке начиная с последнего частного записать остатки.
285 / 16 = 17 и ост. 13
17 / 16 = 1 и ост. 1
Сначала пишем последнее частное (выделено жирным), а потом все остатки в обратном порядке: 11 13 (заменяем 13 на его обозначение в 16-ричной системе) = 11D₁₆
3. Сложение двух чисел в двоичной системе счисления
Точками отмечены перенесенные в этот разряд единицы.
Сложение в двоичной системе в столбик происходит так же, как и в десятичной, только: 1 + 1 = 10 (остается ноль, а единица переносится в следующий разряд), 1 + 1 + 1 = 10 + 1 = 11 (остается единица, а вторая единица переносится в следующий разряд).
У меня получилось вот что (смотри скриншоты листинга программы и результата работы этой программы): uses Crt; const n = 10; var A: array [1..n] of integer; i: integer; begin ClrScr; Randomize; WriteLn ( ' Massiv I: '); for i:=1 to n do begin A[i] := 1+random(n); Write (A[i]:4); end; WriteLn; WriteLn ( ' Massiv II: '); for i:=1 to n do begin if (A[i] mod 2 =0) then A[i]:=0 else A[i]:=3*A[i]; Write (A[i]:4); end; ReadLn; end.
Program q1; uses crt; const n=10; var i,j:integer; mass:array [1..n] of integer; countNum:integer; // переменная для хранения количества нечетных чисел proizv:integer; // переменная для хранения произведения нечетных чисел BEGIN proizv:=1; // так как, изначально равно 0, а при умножении на 0 будет всегда 0 {создание последовательности n целых чисел} Writeln('Случайные целые числа: '); for i:=1 to n do begin mass[ i ]:=random(9)+1; //присваеваем переменной случайное значение от 1 до 10 write(inttostr(mass[ i ])+', '); end; {Вычисление произведения и количества нечетных чисел} for i:=1 to n do if mass[ i ] mod 2 <> 0 then //проверяем не четное-ли число, если да, то.. . begin inc(countNum); //увеличиваем на один кол-во нечетных чисел proizv:=proizv*mass[ i ]; // высчитываем произведение end; {Вывод результатов} writeln; writeln('Всего нечетных чисел: '+inttostr(countNum)); writeln('Их произведение: '+inttostr(proizv)); END.
1. Перевод чисел в десятичную систему счисления
Например:![435_8 \rightarrow X_{10}](/tpl/images/1153/7723/54fd9.png)
Нужно найти сумму произведений каждого разряда числа на основание системы счисления (в данном случае это 8) в степени порядкового номера разряда, начиная с 0 от разряда единиц.
2. Перевод чисел из десятичной системы счисления
Например:![285_{10} \rightarrow X_{16}](/tpl/images/1153/7723/c6c66.png)
Нужно делить исходное число и получаемые частные на основание требуемой системы счисления (в данном случае это 16) и записывать остатки. Потом необходимо в обратном порядке начиная с последнего частного записать остатки.
285 / 16 = 17 и ост. 13
17 / 16 = 1 и ост. 1
Сначала пишем последнее частное (выделено жирным), а потом все остатки в обратном порядке: 11 13 (заменяем 13 на его обозначение в 16-ричной системе) = 11D₁₆
3. Сложение двух чисел в двоичной системе счисления
Точками отмечены перенесенные в этот разряд единицы.
Сложение в двоичной системе в столбик происходит так же, как и в десятичной, только: 1 + 1 = 10 (остается ноль, а единица переносится в следующий разряд), 1 + 1 + 1 = 10 + 1 = 11 (остается единица, а вторая единица переносится в следующий разряд).