rb-zakaz
?>

Найти ошибку в программе! как ошибку он мне выдает 9-ую строчку "индекс находился вне границ массива" const n=10; var a: array [1..n] of integer ; min, i, j, f, k: integer; begin for i: =1 to n do a[i]: =-10+random(21); for i: =1 to n do write (a[i], ' '); min: =maxint; for i: =1 to n do if (a[i]+a[j]) writeln (f, k); end.

Информатика

Ответы

delonghisochi
Здесь ошибок масса. Во-первых, вместо j почему-то используется не описанная переменная l. А во-вторых, после окончания цикла с write, переменная i будет иметь значение n+1, и поэтому обращение к элементу a[i] вызовет выдачу указанного в вопросе сообщения.
bykovaam
1. Если число оканчивается на 6, то оно четное согласно признаку делимости на 2, поэтому проверка на четность не нужна.

// PascalABC.NET 3.3, сборка 1634 от 14.02.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(ReadInteger('n='),20,80); a.Println;
  var k:=a.Where(t->t mod 10=6).Count;
  if k>0 then Writeln(k)
  else Writeln('Нет')
end.

Пример
n= 15
47 53 73 26 75 64 70 32 27 80 29 53 20 62 66
2

2. Достаточно много раз нужно запускать задачу, чтобы суметь получить случайную последовательность с парой одинаковых соседних элементов...

// PascalABC.NET 3.3, сборка 1634 от 14.02.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(10,0,100); a.Println;
  var k:=a.Pairwise.Where(t->t[0]=t[1]).Count;
  if k>0 then Writeln(k)
  else Writeln('Нет')
end.

Пример
60 41 87 87 95 75 72 32 8 52
1
markitandl
1)
var a:array [1..100] of integer;
i,n,k:integer;
begin
readln(n); //количество элементов массива
for i:=1 to n do
read(a[i]); //ввод массива через пробел с клавиатуры
writeln;
readln(k); //ввод значения, номер которого будем искать
for i:=1 to n do
if a[i]=k then writeln(i) //поиск номера введенного элемента
end.
2)
var a:array [1..100] of integer;
i,n,s:integer;
begin
s:=0;
readln(n); //количество элементов массива
for i:=1 to n do
read(a[i]); //ввод массива через пробел с клавиатуры
writeln;
for i:=1 to n do
if a[i]=5 then s:=s+1; //подсчёт кол-ва элементов равнх 5
writeln(s)
end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Найти ошибку в программе! как ошибку он мне выдает 9-ую строчку "индекс находился вне границ массива" const n=10; var a: array [1..n] of integer ; min, i, j, f, k: integer; begin for i: =1 to n do a[i]: =-10+random(21); for i: =1 to n do write (a[i], ' '); min: =maxint; for i: =1 to n do if (a[i]+a[j]) writeln (f, k); end.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

ВалерийАндреевна1788
Дмитрий Бундин
Kondratev Ruzavina22
Анна гутлина
verav75
picassovrn
Aleks0091
Воздвиженская
александр496
rada8080
triumfmodern
lavr74
amaraks67
rashodnikoff
kostmax1971