Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиПоискОблакоComboВсе проекты

Написала программу на Pascal для задания, но нужно добавить условие: если введено однозначное или 0, то вывести ошибку

Лилианна Гоголева Ученик (135), закрыт 3 недели назад
Задание: Задано множество N натуральных чисел. Заменить каждое из них на число, которое получается из исходного записью его десятичных цифр в обратном порядке. Полученное множество чисел распечатать.
Вот программа:
type
mass=array [1..100] of integer;
var
n,i,s:integer;
a:mass;
begin
write('Введите количество чисел множества N = ');
read(n);
writeln('Введите эти числа:');
for i:=1 to n do
begin
write('a[',i,']=');
read(a[i]);
end;
begin
write('Множество N:');
for i:=1 to n do
write (a[i]:6);
writeln;
write('Полученное множество M:');
begin
for i:=1 to n do
begin
s:=0;
while a[i]>0 do
begin
s:=s*10+(a[i] mod 10);
a[i]:=a[i] div 10;
end;
a[i]:=s;
write (a[i]:5);
end;
end;
end;
end.
Лучший ответ
Hunter342 Просветленный (42276) 1 месяц назад
if (n <= 0) or (n > 9) так что ли?
Лилианна ГоголеваУченик (135) 1 месяц назад
нет, n - не само введенное число, а количество введенных чисел
Hunter342 Просветленный (42276) Лилианна Гоголева, ну замени на необходимую переменную и все
Остальные ответы
Дмитрий Шишкин Гуру (3766) 1 месяц назад
If a[i] =0 or a[i] div 10 <1 then write ('Ошибка') - примерно так...
Лилианна ГоголеваУченик (135) 1 месяц назад
'<' не применима к integer
Дмитрий Шишкин Гуру (3766) Лилианна Гоголева, правильно - тип real лучше использовать (ибо integer - целые числа, а в real могут быть и дроби).
готфрид лейбницМастер (2269) 1 месяц назад
Напишите разработчикам паскаля. За нахождение такого бага могут и премию дать.
готфрид лейбниц, никакого бага. Полное соответствие стандарту. or выполняется у тебя до сравнений, их следовало взять в скобки.
Похожие вопросы