Объяснение:
1)У тебя спрашивают b=1? У тебя дано b=3, значит b!=1. Если нет, то переходим к следующим указаниям: с=с-b=4-3=1, b=b+c=3+1(Потому что в предыдущем шаге мы дали новое значение для c, вернее произвели математическую операцию с ним. Возвращаемся(Слева линия) снова к логическому условию. Я честно говоря ХЗ, что они тут имели ввиду, но после того, что я описал c=1,но если мы продолжим проверку b=1, то c начнет принимать отрицательные значения. Цикл вышел, как мне кажется.
Теперь мне лень расписывать - держи фото/скрины
Не знаю, что у тебя за язык программирования, но я сделал тоже самое на Python, вроде результат отличатся не должен.
1) Диапазон чисел будет вычисляться по формуле N = 2^n
n = 4, значит N = 2^4 = 2*2*2*2=16
Диапазон чисел от 0 до 15
2)
а) 32 переведем в 2 систему счисления
32/2=16 ост.0
16/2=8 ост.0
8/2=4 ост.0
4/2=2 ост.0
2/2=1 ост.0
число 32 = 100000
ответ: в 8 разрядном представлении число 32 записывается 00100000
б) -32
Найдем модуль числа -32. Он равен 32
Двоичная запись числа 32 - 00100000
Инвертируем число (заменяем 0 на 1, заменяем 1 на 0)
Получится 11011111
Добавляем к полученному числу 1
11011111+1=11100000
ответ: в 8 разрядном представлении число -32 записывается 11100000
в) 102 переведем в двоичную систему счисления
102/2=51 ост.0
51/2=25 ост.1
25/2=12 ост.1
12/2=6 ост.0
6/2=3 ост.0
3/2=1 ост.1
В 2 системе счисления 102=1100110
ответ: в 8 разрядном представлении число 102 записывается 01100110
г) -102
Модуль найдем -102 - это 102
Двоичная запись числа 102 - это -01100110
Инвертируем полученное число и получаем: 10011001
Прибавляем 1.
10011001+1=10011010
ответ: -102 записывается как 10011010
д) 126
126/2=63 ост.0
63/2=31 ост.1
31/2=15 ост1
15/2=7 ост.1
7/2=3 ост.1
3/2=1 ост.1
Число 126 записывается 1111110
ответ: в 8 разрядном представлении число 126 записывается 01111110
е) -126
Найдем модуль этого числа 126
В 8 разрядном представлении оно записывается 01111110
Инвертируем полученное число и получаем: 10000001
Прибавляем 1
10000001+1=10000010
ответ:-126 в 8 разрядном представлении записывается 10000010
3.
а) 00010101=0*2^7+0*2^6+0*2^5+1*2^4+0*2^3+1*2^2+0*2^1+1*2^0=16+4+1=21
б) 11111110 - это число отрицательное, тк 1 цифра = 1
Решаем обратно:
Вычтем 1
11111110-1=11111101
Инвертируем: 00000010
Переводим: 00000010 = 2 в 10 системе счисления. (это получился модуль исходного числа)
Значит это число -2
в) 00111111 = 1*2^5+1*2^4+1*2^3+1*2^2+1*2^1+1*2^0=32+16+8+4+2+1=63
г) 10101010 - это число отрицательное,тк первая цифра в записи 1
Вычтем 1
10101010-1=10101001
Инвертируем: 01010110
Переводим:
01010110=1*2^6+0*2^5+1*2^4+0*2^3+1*2^2+1*2^1+0*2^0=64+16+4+2=86 (это модуль)
Записано число -86
4)
Различие заключается в количестве отводимых ячеек памяти под одно вещественное число: для чисел с удвоенной точностью отводят 64 ячейки памяти (для 32 -битного процессора). Следовательно, можно записать больше чисел, точность при вычислениях будет больше.
Поделитесь своими знаниями, ответьте на вопрос:
Решить.даны натуральные числа n, m; найти нод(n, m использовать программу, включающую рекурсивную процедуру вычисления нод, основанную на соотношении нод(n, m)=нод(m, r), где r – остаток от деления n на mпаскаль)
a,b:integer;
procedure nod(x,y:integer);
begin
if x=y then writeln(x)
else if x>y then nod(x-y,y) else nod(x,y-x);
end;
begin
writeln('Введите два числа ');
readln(a,b);
write('НОД: ');
nod(a,b);
end.
Тестовое решение:
Введите два числа
33
18
НОД: 3