Var ar:array[1..s] of integer; n,m,i:integer; begin writeln('N'); readln(n); writeln('M'); readln(m); writeln('Array:'); for i:=1 to s do readln(ar[i]); writeln('First array:'); for i:=1 to s do begin write(ar[i]:4); if ar[i] div n<>0 then ar[i]:=ar[i]+m; end; writeln; writeln('Final array:'); for i:=1 to s do write(ar[i]:4); end.
Пример ввода: 3 3 1 2 3 4 5 Пример вывода: First array: 1 2 3 4 5 Final array: 1 2 6 7 8
2. Осуществите перевод указанных чисел, которые заданы в 10-й СС в 2-ю, 8-ю и 16-ю СС.
а) 281₁₀ = n₂
281 mod 2 = 1; 140 mod 2 = 0; 70 mod 2 = 0; 35 mod 2 = 1; 17 mod 2 = 1; 8 mod 2 = 0; 4 mod 2 = 0; 2 mod 2 = 0; 1 mod 2 = 1
Записываем остаток от деления в обратном порядке и получаем число: 100011001₂
281₁₀ = 100011001₂
281₁₀ = n₈
281 mod 8 = 1; 35 mod 8 = 3; 4 mod 8 = 4; 0 mod 8 = 0
Записываем остаток от деления в обратном порядке и получаем число: 0431₈
281₁₀ = 0431₈
281₁₀ = n₁₆
281 mod 16 = 9; 17 mod 16 = 1; 1 mod 16 = 1
Записываем остаток от деления в обратном порядке и получаем число: 119₁₆
281₁₀ = 119₁₆
б) 525₁₀ = n₂
525 mod 2 = 1; 262 mod 2 = 0; 131 mod 2 = 1; 65 mod 2 = 1; 32 mod 2 = 0; 16 mod 2 = 0; 8 mod 2 = 0; 4 mod 2 = 0; 2 mod 2 = 0; 1 mod 2 = 1
Записываем остаток от деления в обратном порядке и получаем число: 1000001101₂
525₁₀ = 1000001101₂
525₁₀ = n₈
525 mod 8 = 5; 65 mod 8 = 1; 8 mod 8 = 0; 1 mod 8 = 1
Записываем остаток от деления в обратном порядке и получаем число: 1015₈
525₁₀ = 1015₈
525₁₀ = n₁₆
525 mod 16 = 13; 32 mod 16 = 0; 2 mod 16 = 2; 0 mod 16 = 0
Записываем остаток от деления в обратном порядке и получаем число: 020D₁₆
525₁₀ = 020D₁₆
в) 2019₁₀ = n₂
2019 mod 2 = 1; 1009 mod 2 = 1; 504 mod 2 = 0; 252 mod 2 = 0; 126 mod 2 = 0; 63 mod 2 = 1; 31 mod 2 = 1; 15 mod 2 = 1; 7 mod 2 = 1; 3 mod 2 = 1; 1 mod 2 = 1
Записываем остаток от деления в обратном порядке и получаем число: 11111100011₂
2019₁₀ = 11111100011₂
2019₁₀ = n₈
2019 mod 8 = 3; 252 mod 8 = 4; 31 mod 8 = 7; 3 mod 8 = 3; 0 mod 8 = 0
Записываем остаток от деления в обратном порядке и получаем число: 03743₈
2019₁₀ = 03743₈
2019₁₀ = n₁₆
2018 mod 16 = 3; 126 mod 16 = 14; 7 mod 16 = 7; 0 mod 16 = 0
Записываем остаток от деления в обратном порядке и получаем число: 07E3₁₆
2019₁₀ = 07E3₁₆
3. Осуществите перевод указанных чисел, которые заданы в восьмеричной системе счисления в шестнадцатеричную.
а) 784₈ - данное число не может существовать в 8-й системе счисления (присутствует цифра 8, а 8-я СС - это от 0 до 7 и плавающая точка).
Const
s=5;
Var
ar:array[1..s] of integer;
n,m,i:integer;
begin
writeln('N');
readln(n);
writeln('M');
readln(m);
writeln('Array:');
for i:=1 to s do
readln(ar[i]);
writeln('First array:');
for i:=1 to s do
begin
write(ar[i]:4);
if ar[i] div n<>0 then ar[i]:=ar[i]+m;
end;
writeln;
writeln('Final array:');
for i:=1 to s do
write(ar[i]:4);
end.
Пример ввода:
3
3
1
2
3
4
5
Пример вывода:
First array:
1 2 3 4 5
Final array:
1 2 6 7 8
//Блок-схема во вложении
1. a) 106,5625₁₀
б) 45,859375₁₀
в) 228,20703125₁₀
2. а) 100011001₂; 0431₈; 119₁₆
б) 1000001101₂; 1015₈; 020D₁₆
в) 11111100011₂; 03743₈; 07E3₁₆
3. а) -
б) 10B₁₆
Объяснение:
1. Покажите перевод указанных чисел в десятичную систему счисления.
а) 1101010,1001₂ = n₁₀
Переводим целую часть: 1101010₂ = 2⁶ * 1 + 2⁵ * 1 + 2⁴ * 0 + 2³ * 1 + 2² * 0 + 2¹ * 1 + 2⁰ * 0 = 64 + 32 + 8 + 2 = 106₁₀
Переводим дробовую часть:
1001₂ = 2⁻¹ * 1 + 2⁻² * 0 + 2⁻³ * 0 + 2⁻⁴ * 1 = 0,5 + 0,0625 = 0,5625
Получаем число: 106,5625₁₀
1101010,1001₂ = 106,5625₁₀
б) 55,67₈ = n₁₀
Переводим целую часть: 55₈ = 8¹ * 5 + 8⁰ * 5 = 40 + 5 = 45₁₀
Переводим дробовую часть: 67₈ = 8⁻¹ * 6 + 8⁻² * 7 = 0,75 + 0,109375 = 0,859375
Получаем число: 45,859375₁₀
55,67₈ = 45,859375₁₀
в) E4,35₁₆ = n₁₀
Переводим целую часть: E4₁₆ = 16¹ * 14 + 16⁰ * 4 = 224 + 4 = 228₁₀
Переводим дробовую часть: 35₁₆ = 16⁻¹ * 3 + 16⁻² * 5 = 0,1875 + 0,01953125 = 0,20703125
Получаем число: 228,20703125₁₀
E4,35₁₆ = 228,20703125₁₀
2. Осуществите перевод указанных чисел, которые заданы в 10-й СС в 2-ю, 8-ю и 16-ю СС.
а) 281₁₀ = n₂
281 mod 2 = 1; 140 mod 2 = 0; 70 mod 2 = 0; 35 mod 2 = 1; 17 mod 2 = 1; 8 mod 2 = 0; 4 mod 2 = 0; 2 mod 2 = 0; 1 mod 2 = 1
Записываем остаток от деления в обратном порядке и получаем число: 100011001₂
281₁₀ = 100011001₂
281₁₀ = n₈
281 mod 8 = 1; 35 mod 8 = 3; 4 mod 8 = 4; 0 mod 8 = 0
Записываем остаток от деления в обратном порядке и получаем число: 0431₈
281₁₀ = 0431₈
281₁₀ = n₁₆
281 mod 16 = 9; 17 mod 16 = 1; 1 mod 16 = 1
Записываем остаток от деления в обратном порядке и получаем число: 119₁₆
281₁₀ = 119₁₆
б) 525₁₀ = n₂
525 mod 2 = 1; 262 mod 2 = 0; 131 mod 2 = 1; 65 mod 2 = 1; 32 mod 2 = 0; 16 mod 2 = 0; 8 mod 2 = 0; 4 mod 2 = 0; 2 mod 2 = 0; 1 mod 2 = 1
Записываем остаток от деления в обратном порядке и получаем число: 1000001101₂
525₁₀ = 1000001101₂
525₁₀ = n₈
525 mod 8 = 5; 65 mod 8 = 1; 8 mod 8 = 0; 1 mod 8 = 1
Записываем остаток от деления в обратном порядке и получаем число: 1015₈
525₁₀ = 1015₈
525₁₀ = n₁₆
525 mod 16 = 13; 32 mod 16 = 0; 2 mod 16 = 2; 0 mod 16 = 0
Записываем остаток от деления в обратном порядке и получаем число: 020D₁₆
525₁₀ = 020D₁₆
в) 2019₁₀ = n₂
2019 mod 2 = 1; 1009 mod 2 = 1; 504 mod 2 = 0; 252 mod 2 = 0; 126 mod 2 = 0; 63 mod 2 = 1; 31 mod 2 = 1; 15 mod 2 = 1; 7 mod 2 = 1; 3 mod 2 = 1; 1 mod 2 = 1
Записываем остаток от деления в обратном порядке и получаем число: 11111100011₂
2019₁₀ = 11111100011₂
2019₁₀ = n₈
2019 mod 8 = 3; 252 mod 8 = 4; 31 mod 8 = 7; 3 mod 8 = 3; 0 mod 8 = 0
Записываем остаток от деления в обратном порядке и получаем число: 03743₈
2019₁₀ = 03743₈
2019₁₀ = n₁₆
2018 mod 16 = 3; 126 mod 16 = 14; 7 mod 16 = 7; 0 mod 16 = 0
Записываем остаток от деления в обратном порядке и получаем число: 07E3₁₆
2019₁₀ = 07E3₁₆
3. Осуществите перевод указанных чисел, которые заданы в восьмеричной системе счисления в шестнадцатеричную.
а) 784₈ - данное число не может существовать в 8-й системе счисления (присутствует цифра 8, а 8-я СС - это от 0 до 7 и плавающая точка).
б) 413₈ = n₁₆
Сначала переведём 413₈ в 10-ю СС, а потом в 16-ю:
413₈ = 8² * 4 + 8¹ * 1 + 8⁰ * 3 = 256 + 8 + 3 = 267₁₀
267 mod 16 = 11; 16 mod 16 = 0; 1 mod 16 = 1
Записываем остаток от деления в обратном порядке и получаем число: 10B₁₆
413₈ = 10B₁₆