в чем ошибка: program gadanie;var a:array[1..1000] of integer;n,s,i:

В чем ошибка: program gadanie;
var a:array[1..1000] of integer;
n,s,i: integer;
begin
readln(n);
s:=0;
for i:=1 to 1000 do
if n mod a[i] = 0 then s:=s+a[i];
writeln(s);
end.

Задать свой вопрос
Артемка
вообще я желаю перебрать массив от 1 до 1000 есть остаток либо нет
Семён Автющенко
я сообразил но в воде написано нужен массив
Ангела Файбишевская
В какой воде?
Арсений Туболцев
в вводе
Игорь Голдобаев
Ты вообще в состоянии разъяснить, для чего он нужен?
Arsenij Amzajan
Вводится массив из 1000 значений? Абсурд.
Anna Dovgoruk
я фото прикрепил с задачей
Тамара Фонова
Ты там хоть раз встретил слово "массив"? Я - нет.
Валентина Дрянных
Вобщем, твоё дело. Я всё одинаково на Поцкале не пишу.
Юлия Полтаракина
а мне надо
1 ответ

Что дотрагивается ошибок, то в условии сказано, что введенное число n находится в спектре [1; 1000], то есть, программка не обязана высчитывать сумму, если юзер ввел  число, не входящее в этот спектр. А вы заместо этого сделали массив, с которым еще и вычисления проводите, хотя сами в него не внесли ни 1-го значения.


Вот верный код:


var

  n, sum: integer;

   

begin

   

  write('Введите число: ');

  readln(n);

   

  if ((n gt;= 1) and (n lt;= 1000)) then

  begin

     for var i := 1 to n do

     begin

        if (n mod i = 0) then

           sum := sum + i;

     end;

     

     write('Сумма всех естественных чисел: ', sum);

  end

   

  else

     write('Ошибка ввода! Число должно быть в спектре [1; 1000]');

   

end.

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт