Основная загвоздка состоит в том, чтобы понять, что то, что ученики не смогли решить задачу не потому, что мозгов не хватило, а потому, что не хватило исходных данных, - это и есть одно из скрытых условий задачи. Второе скрытое условие, - что ученики знают, сколько человек в классе.
Разложим 40 на три множителя. Возможно шесть вариантов:
Поскольку ученикам потребовалось дополнительное условие, очевидно, что учеников в классе 14 (остальные варианты просто не допускают неоднозначного толкования) .
После того, как учитель сказал, что есть 1 младшая дочь, сразу стало ясно, что правильный ответ 5), то есть 1, 5, 8.
Program n; var a, b, i: integer; begin b:= 0; for i:=1 to 4 do begin readln(a); if a > b then b:=a; end; writeln('Наибольшее: ' + b); end.
Как это работает? Объявляются три целочисленные (interger) переменные: a - вводимое число b - самое большое число i - счётчик цикла После запуска программы переменной b присваивается значение 0 (чтобы было с чем сравнивать при первом значении) Запускается цикл for с счётчиком i Каждый раз цикл просит ввести пользователя число (а) Дальше проверяется условие, если введённое число a больше числа, которое записано как самое большое (if a>b) Если ведённое число больше, чем самое большое, то переменной b присваивается значение a И так пока цикл не закончится Затем выводится переменная b, в которой хранится самое большое из введённых чисел.
Разложим 40 на три множителя. Возможно шесть вариантов:
1) 1+1+40=42
2) 1+4+10=15
3) 2+2+10=14
4) 1+2+20=23
5) 1+5+8=14
6) 2+4+5=11
Поскольку ученикам потребовалось дополнительное условие, очевидно, что учеников в классе 14 (остальные варианты просто не допускают неоднозначного толкования) .
После того, как учитель сказал, что есть 1 младшая дочь, сразу стало ясно, что правильный ответ 5), то есть 1, 5, 8.
var
a, b, i: integer;
begin
b:= 0;
for i:=1 to 4 do
begin
readln(a);
if a > b then
b:=a;
end;
writeln('Наибольшее: ' + b);
end.
Как это работает?
Объявляются три целочисленные (interger) переменные:
a - вводимое число
b - самое большое число
i - счётчик цикла
После запуска программы переменной b присваивается значение 0 (чтобы было с чем сравнивать при первом значении)
Запускается цикл for с счётчиком i
Каждый раз цикл просит ввести пользователя число (а)
Дальше проверяется условие, если введённое число a больше числа, которое записано как самое большое (if a>b)
Если ведённое число больше, чем самое большое, то переменной b присваивается значение a
И так пока цикл не закончится
Затем выводится переменная b, в которой хранится самое большое из введённых чисел.