Задача: Дано 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, как это сделать?
Ответы на вопрос
Ответил settom
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:
Не подходит, попробовал сдать задачу(там сайт), не прошло проверку
Новые вопросы
Математика,
1 год назад
Алгебра,
1 год назад
Математика,
6 лет назад
История,
6 лет назад
Математика,
8 лет назад