Есть ответ 👍

Задача: Дано 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, как это сделать?

227
327
Посмотреть ответы 2

Ответы на вопрос:


Можно при вводе фильтровать что вводится, если число не удовлетворяет требованиям оно игнорируется

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.


Program a; vark, t: integer; beginassign(input, 'input.txt'); reset(input); assign(output, 'output.txt'); rewrite(output); readln(k, t); if (t div k mod 2 = 0) thenwriteln(t mod k)elsewriteln(k - t mod k); close(input); close(output); end.

Популярно: Информатика