Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Сумма индексов

Автор: Gl00M 11.10.2006 20:14

В целочисл.массиве А от 1 до 22 вычислить сумму элементов с индексами,кратными 3
Делаю вот так:

Program ms;
uses Crt;
const n=22;
var a:array[1..n] of integer;
i:word;
s:integer;
Begin
ClrScr;
randomize;
s:=0;
For i:=1 to n do begin
a[i]:=50-random(100);
write(a[i]:4);
if i div 3 then s:=s+a[i];
end;
writeln;
writeln('Summa = ',s);
readln;
End.

в if i div 3 then s:=s+a[i]; выдается ошибка...
как определить кратность? smile.gif

Автор: volvo 11.10.2006 20:29

А что это ты пробуешь делать

If i div 3 then ...
? blink.gif

Надо бы еще на 0 проверять...

Автор: Gl00M 11.10.2006 22:47

Ну, на винограде вот так:

Program ms;
uses Crt;
const n=22;
var a:array[1..n] of integer;
i:word;
s:integer;
Begin
ClrScr;
randomize;
s:=0;
For i:=1 to n do begin
a[i]:=50-random(100);
write(a[i]:4);
if i mod 3=0 then s:=s+a[i];
end;
writeln;
writeln('Summa = ',s);
readln;
End.

Но if i mod 3=0 then s:=s+a[i]; не считает сумму! sad.gif

Автор: volvo 11.10.2006 22:52

С чего ты это взял? Все нормально считает... Хочешь проверить?

Begin
ClrScr;
randomize;
s:=0;
For i:=1 to n do begin
a[i]:=50-random(100);
if i mod 3=0 then begin
write(a[i]:4);
s:=s+a[i];
end;
end;

writeln;
writeln('Summa = ',s);
readln;
End.
Посчитай сумму всех чисел вручную и сравни со значением S...