Я бы задание дал «для введенной цифры (0–9) вывести название на анг. языке».
И этого достаточно.
А вот когда говорят
«для КАЖДОЙ введенной цифры»
то это предполагает, что вводится то будет множество цифр.
Вот я ввел число 123 и мне должно быть напечатано тогда one two three
Но это я так...преподы могут эти тонкости не знать и задание пройдет.
Правильно ли сделал...ну, как бы да, хотя писать каждый раз WriteLn избыточно и просто можно было выбрать слово из массива слов по индексу 0–9...но почему бы и не так как ты :) Как можно с массивом прикрепляю на скрине
Программа:
var
input: string;
digit: Integer;
code: Integer;
begin
WriteLn('Введите цифру (0-9):');
ReadLn(input);
Val(input, digit, code);
if code = 0 then
begin
if (digit >= 0) and (digit <= 9) then
begin
case digit of
0: WriteLn('Zero');
1: WriteLn('One');
2: WriteLn('Two');
3: WriteLn('Three');
4: WriteLn('Four');
5: WriteLn('Five');
6: WriteLn('Six');
7: WriteLn('Seven');
8: WriteLn('Eight');
9: WriteLn('Nine');
end;
end
else
begin
WriteLn('Ошибка: введено значение вне диапазона (0-9).');
end;
end
else
begin
WriteLn('Ошибка: некорректный ввод. Пожалуйста, введите целое число.');
end;
end.