Нет индексного свойства по умолчанию для типа integer исправьте пожалуйста program max;...

0 голосов
134 просмотров

Нет индексного свойства по умолчанию для типа integer исправьте пожалуйста


program max;
var
ar:array[1..10]of integer;
a,c,i,n:integer;
begin
for i:=1 to n do
begin
read(a[i]);
if i=1 then
c:=a[i];
if a[i]>c then
c:=a[i];
end;
writeln(c);
end.


Информатика (244 баллов) | 134 просмотров
Дан 1 ответ
0 голосов

Вы массив объявили с именем  ar, а пытаетесь его использовать с именем а
Исправленный код выглядит так:

var
  ar: array[1..10]of integer;
  a, c, i, n: integer;

begin
read(n);
  for i := 1 to n do
  begin
    read(ar[i]);
    if i = 1 then
      c := ar[i];
    if ar[i] > c then
      c := ar[i];
  end;
  writeln(c);
end.
 
Вариант №2
program max;
const n = 10;
var
  ar: array[1..10]of integer;
  a, c, i: integer;

begin
  for i := 1 to n do
  begin
    read(ar[i]);
    if i = 1 then
      c := ar[i];
    if ar[i] > c then
      c := ar[i];
  end;
  writeln(c);
end.



(13.9k баллов)
0

выводит 0

0

и все

0

нужна программа: пользователь вводит массив из 10 чисел и надо вывести максимальное число

0

Правильно, что не вводится. Вы хотите вводить значение n? Добавлю в решение такой вариант, минуточку.

0

Готово, смотрите

0

нужно чтобы цикл проходил 10 раз, а не 2

0

Ну, так при запуске программы введите первое число = 10, далее вводите 10 элементов массива

0

а можно сделать так, чтобы при запуске программы пользователь вводил 1, и потом было 10 элементов массива?

0

Добавил второй вариант, когда пользователь просто вводит 10 элементов массива

0

Думаю, что так будет логичнее