Предмет: Информатика,
автор: drozst61
Задача: Дано N чисел. Необходимо найти сумму чисел, которые меньше N, написать такую программу на паскале, я написал вот такой код:
var a: array[1..10] of integer;
n,c,i:integer;
begin
readln(n);
for i:=1 to n do
begin
read(a[i]);
end;
c:=0;
for i:= 1 to n do
if a[i] < n then
c:= a[i]+c;
writeln(c);
end.
Проблема в том, что нужно что бы все вводимые числа были неотрицательные, целые и меньше 1001, как это сделать?
Ответы
Автор ответа:
1
Можно при вводе фильтровать что вводится, если число не удовлетворяет требованиям оно игнорируется
var a: array[1..10] of integer;
n,c,i:integer;
inp : real;
begin
readln(n);
i:=1;
repeat
readln(inp);
c := round(inp);
if (inp = c) and (inp >= 0.0) and (inp <1001.0) then
begin
a[i]:= c;
i:=i+1;
end;
until(i=n+1);
c:=0;
for i:= 1 to n do
if a[i] < n then
c:= a[i]+c;
writeln(c);
end.
drozst61:
Не подходит, попробовал сдать задачу(там сайт), не прошло проверку
Похожие вопросы
Предмет: Українська мова,
автор: koropatova
Предмет: Қазақ тiлi,
автор: Angelina13022007
Предмет: Русский язык,
автор: анютка106
Предмет: Биология,
автор: 4OMER
Предмет: Биология,
автор: lemuro4kaovt2gn