Перейти к содержанию

Программа должна вычислить произведения первой и последней цифр в каждом из чисел и вывести наименьшее из найденных произведений

Требовалось написать программу, при выполнении которой с клавиатуры считываются два натуральных числа N и M одинаковой размерности, не превосходящие $10^9$.

Программа должна вычислить произведения первой и последней цифр в каждом из чисел и вывести наименьшее из найденных произведений. Если произведения одинаковы, то одно из них. (Например, для чисел N = 3125,M = 2416 программа должна вывести 12.)

Программист торопился и написал программу неправильно.

Последовательно выполните следующее.

1. Напишите, что выведет программа при вводе чисел 102 и 105.

2.Приведите пример двух таких чисел, для которых, несмотря на ошибки, программа напечатает правильный ответ.

3. Найдите все ошибки в этой программе (их может быть одна или несколько).Известно, что каждая ошибка затрагивает только одну строку и может быть исправлена без изменения других строк.

Для каждой ошибки:

1) выпишите строку, в которой сделана ошибка;

2) укажите, как исправить ошибку,— приведите правильный вариант строки.

Достаточно указать ошибки и способ их исправления для одного языка программирования.

Обратите внимание, что требуется найти ошибки в данной программе, а не написать свою, возможно, использующую другой алгоритм решения. Исправление ошибки должно затрагивать только строку, в которой находится ошибка.


1. При вводе чисел 102 и 105 программа выведет число 100.

2. Пример входных чисел, для которых программа работает правильно: 28 и 33.

3. Программа содержит две строки с ошибками (Паскаль):

1) Строку

S:= N div 10; T:= M div 10;

следует заменить на

S:= N mod 10; T:= M mod 10;

2) Строку

if S * N > T * M then

следует заменить на

if S * N < T * M then