write(a:5) что делает эта строка по замыслу? у нас переменная а не может быть в принципи 5 символов после запятой, округление лишнее
имхо, использование типов явно лишнее
та и потом, в теле первого цикла ты какой именно елемент масиива пытаешься присвоить рандом?)) )
укажи его, нельзя просто так присваивать елемент
детская ошибка, бывает
и потом, в результате всех перемножений получается число выходяшие за рамки интеджер
поэтому нужно использовать лонгинт, а то ты уввидишь отрицатеьные значения перемнной С
Program Lab_4;
uses crt;
var a:array [1..10] of integer;
i:integer;
S:longint;
Begin
clrscr;
Randomize;
For I:=1 To 10 Do
begin
a:=100-random(201);
writeln(a);
end;
writeln;
S:=1;
for i:=1 to 10 do begin
If a > 1 Then begin
S:=S*a;
Writeln('S=',S);
end
else
end;
Readkey;
End.
Другие языки программирования и технологии
помогите найти ошибку в коде. ПАскаль
На первый взгляд, ошибок нет, только зачем два цикла?
Program Lab_4;
uses crt;
Cоnst N=10;
Var a: array [1..N] of real; ' Зачем переопределять стандартный тип array?
k: integer;
S: real; ' Случайное число может быть и нецелым
Begin
clrscr;
Randomize; {генератор случ значений} ' Никогда не понимал, зачем этот Randomize нужен?
S:=1;
For k:=1 To N Do
begin
a[k] := 100-random(201);
write(a[k]:5);
If a[k] > 0 Then S := S*a[k];
end;
writeln;
Write('S=',S);
Readkey;
End.
Program Lab_4;
uses crt;
Cоnst N=10;
Var a: array [1..N] of real; ' Зачем переопределять стандартный тип array?
k: integer;
S: real; ' Случайное число может быть и нецелым
Begin
clrscr;
Randomize; {генератор случ значений} ' Никогда не понимал, зачем этот Randomize нужен?
S:=1;
For k:=1 To N Do
begin
a[k] := 100-random(201);
write(a[k]:5);
If a[k] > 0 Then S := S*a[k];
end;
writeln;
Write('S=',S);
Readkey;
End.
Мда. Ты хоть сам понимаешь что ты написал? Ты сам понимаешь КАК работает этот код.
У вас значения массива могут достигать 100... Даже если во всем массиве будет 3 числа близких к сотне, размера переменной S типа Integer просто-напросто не хватит для хранения произведения...
Ты сам Знаешь что написал. Мудвен
Похожие вопросы
- Помогите найти ошибки в коде (паскаль)
- Помогите найти ошибку в коде в паскале
- помогите найти ошибку в коде на Си
- Помогите найти ошибку в коде
- Помогите найти ошибку в коде. делфи
- Помогите найти ошибку в задачи,Паскаль...
- Помогите найти ошибку в коде с++. Скорее всего ошибка в сравнении строк.
- Помогите найти ошибку в программе Паскаль!
- Помогите найти ошибку в программе (паскаль)
- помогите найти ошибку в коде VBA exel !