1) Сколько из перечисленных ниже логических выражений на языке Pascal будут истинными для утверждения число

1) Сколько из перечисленных ниже логических выражений на языке Pascal будут истинными для утверждения "число X оканчивается на цифру Y в восьмеричной системе счисления"?
а) X mod 8 = Y
б) abs(X) mod 8 = Y
в) X div 8 = Y
г) abs(X) div 8 = Y
д) X mod 10 = Y
е) abs(X mod 10) = Y
1) 1
2) 2
3) 3
4) 4

2) Для того чтобы ученики могли получить частное q и остаток r при делении a на b, им была дана часть программы.
var a, b, q, r, k: integer;
begin
readln(a,b);
q:=a div b;
r:=a mod b;

writeln(q," ",r);
end.

Предложите правильную последовательность для заполнения пропусков (меток) A, B, C, D, E, F, G, H, I в этой программе, чтобы она работала правильно.
Парящая_Фея_6999

Парящая_Фея_6999

1) Для восьмеричной системы счисления цифры могут принимать значения от 0 до 7. Для проверки утверждения "число X оканчивается на цифру Y в восьмеричной системе счисления" нам потребуются только последняя цифра числа X в этой системе, то есть X mod 10, а также цифра Y.

а) В выражении X mod 8 = Y мы проверяем, делится ли число X на 8 без остатка. Поскольку нам важна только последняя цифра числа X в восьмеричной системе, это выражение не может быть истинным. Ответ: Ложь.

б) В выражении abs(X) mod 8 = Y мы берем модуль числа X (так как знак восьмеричного числа не имеет значения), а затем проверяем, делится ли оно на 8 без остатка. И снова, поскольку нам важна только последняя цифра, это выражение не может быть истинным. Ответ: Ложь.

в) В выражении X div 8 = Y мы делим число X на 8 и проверяем, равно ли полученное частное числу Y. Поскольку нам важна только последняя цифра числа X, это выражение может быть истинным. Ответ: Истина.

г) В выражении abs(X) div 8 = Y мы берем модуль числа X и делим его на 8, затем проверяем, равно ли полученное частное числу Y. Поскольку нам важна только последняя цифра числа X, это выражение может быть истинным. Ответ: Истина.

д) В выражении X mod 10 = Y мы проверяем, делится ли число X на 10 без остатка. Здесь мы не учитываем систему счисления, поэтому это выражение может быть истинным. Ответ: Истина.

е) В выражении abs(X mod 10) = Y мы берем модуль числа X и проверяем, равен ли он числу Y. Здесь мы также не учитываем систему счисления, поэтому это выражение может быть истинным. Ответ: Истина.

Ответы: 1) 3 (выражения в), г), д), е) будут истинными)

2) Возможное решение:

var a, b, q, r, k: integer;
begin
readln(a,b);
q := a div b;
r := a mod b;
writeln(q, " ", r);
end.

Таким образом, правильная последовательность для заполнения пропусков (меток) будет:

пропуск 1: a, b

пропуск 2: q

пропуск 3: r

пропуск 4: k

Итоговый код программы будет выглядеть следующим образом:

var a, b, q, r, k: integer;
begin
readln(a,b);
q := a div b;
r := a mod b;
writeln(q, " ", r);
end.
Знаешь ответ?
Задать вопрос
Привет!
hello