В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Янчик312
Янчик312
17.12.2020 09:28 •  Информатика

Ниже код одной и той же программы на двух языках программирования. си int main (void) { int a, b, x, y; scanf("%i%i", & a, & b); x = (a + 2*b) / 5; y = b - x; printf("%i %i", x, y); } паскаль var a, b, x, y: integer; begin read(a, b); x : = (a + 2*b) div (5); y : = b - x; write(x,' ',y); end. определите, какие значения указал пользователь в качестве входных данных, если известно, что программа в результате вывела два числа: 1 и 0 в указанном порядке.

Показать ответ
Ответ:
StalinReal
StalinReal
02.10.2020 12:16
Идем по программе от конца к началу.
Программа выводит значения x=1 и y=0.
y = b-x ⇒ b = y+x=0+1 = 1
Значение b = 1 найдено.
x = (a+2*b) div 5; (a+2*1) div 5 = 1; (a+2) div 5 = 1
Отметим, что div - это операция целочисленного деления, которая отбрасывает остаток. Допустим, остаток был нулевой, тогда а+2 = 5 ⇒ a=3
Но остаток мог быть и ненулевым! При делении на 5 остатком могут быть числа от 0 до 4, следовательно, в числителе могло быть значение на 1,2,3 или 4 большее, т.е. значение а могло быть не только 3, но и 4,5,6,7.
ответ: a\in[3;7], \ a\in \mathbb N, \ b=1
0,0(0 оценок)
Ответ:
rentbox
rentbox
02.10.2020 12:16
Если программа вывела числа 1 и 0,то итоговым значение x будет x=1, а y=0.
Следовательно (a+2b) div 5 = 1   и    b-1=0
Из второго уравнения можно выразить b = 1
Подставим b =1 в первое уравнение: (a+2) div 5 = 1
a=3 b =1
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота