mykolivannp085fw
28.03.2021 04:13

Словесный алгоритм Вопрос № 11 Написать алгоритм решения примера в виде блок схемы: 4z C = 3х+8y-42 172 5x-iz 8 х


Словесный алгоритм Вопрос № 11 Написать алгоритм решения примера в виде блок схемы: 4z C = 3х+8y-42

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Даниил223223
04.04.2021 12:21
N=8 в задании, насколько я понимаю, означает решение для восьмибитного представления данных, т.е. для случай, когда левый бит отводится под знак (0 - плюс, 1 - минус), а семь правых битов используются для представления числа.
Отрицательное число представляется в дополнительном коде, т.е. нули заменяются единицами (и единицы - нулями), а потом в младшем разряде к полученному числу прибавляется единица.
Вначале перевод.
-13(10)=-0001101(2)
Инвертируем биты: 1110010
Прибавляем единицу: 1110011
И дописываем слева 1 в качестве знака. 1 1110011
Аналогичным образом поступаем и с числом -7:
-7(10)=-0000111(2)
Инвертируем биты: 1111000
Прибавляем единицу: 1111001
И дописываем слева 1 в качестве знака. 1 1111001
Теперь сложение. Выполняем его в столбик для всех восьми бит.
   11110011
+ 11111001
 
   11101100
У нас при сложении появилась единица переноса из левого разряда, но дальше уже разрядов нет и она просто отбрасывается.
Результат получился с единичным знаковым разрядом. Поэтому для получения величины результата поступаем в обратном порядке: отделяем семь правых бит, вычитаем единицу и снова инвертируем полученное значение. Вместо единичного знакового разряда приписываем числу знак минус.
1101100 - 1 = 1101011. Инверсия: 0010100, результат -10100(2)=-20(10)
0,0(0 оценок)
Ответ:
tuysdik
17.12.2021 03:36
Если дальше завершить программу, то получим это:
program HelloWorld;
    function ez(a: longint): boolean;        var c: integer;        begin            ez := a >= 2;            for c := 2 to trunc(sqrt(a)) do if a mod c = 0 then ez := false        end;        var i, k: integer;        num: array [1 .. 100] of integer;
begin    for i := 0 to 99 do num[i+1] := i + 1;        k := 0;    i := 1;        while k < 7 do begin        if ez(num[i]) = true            then k := k + 1;        i := i + 2;    end;        write(num[i-2]);    end.
ответ 19
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота