saban15
18.08.2022 16:02

Ошибка времени выполнения: Индекс находился вне границ массива

Program Zadacha;
Var A:Array[1..999,1..999]of byte;
i,j,nmax,max,min,nmin:integer;
begin
for i:=1 to 5 do
begin
for j:=1 to 10 do
Begin
A[i,j]:=Random(100)-5;
Write (A[i,j]:4);
end;
writeln;
end;

for i:=1 to 5 do
begin
max:=A[i,1];
min:=A[i,1];
for j:=1 to 10 do
Begin
If A[i,j]>max then
begin
max:=A[i,j];
nmax:=j;
end;
If A[i,j] begin
min:=A[i,j];
nmin:=j;
end;
end;
A[i,nmin]:=max; ) ОШИБКА ТУТ В ЭТИ ДВУХ СТРОКАХ.
A[i,nmax]:=min; )
end;
writeln;
for i:=1 to 5 do begin
for j:=1 to 10 do begin
Write(A[i,j]:4);
end;
writeln;
end;
end.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
666Лиза66611
29.01.2020 16:32

1)

var mas: array[1..10] of real = {.,.,}; // перечисление элементов массива, который дан по условию задания

var counter: integer;

begin

for i:= 1 to 10 do

begin

if mas[i]<0 then counter:=counter+1;

end;

end.

2)

var mas: array[1..5] of integer = {.,.,}; // перечисление элементов массива, который дан по условию задания

var counter: integer;

begin

for i:= 1 to 5 do

begin

if (mas[i]>0) and (i mod 2 = 0) then counter:=counter+1;

end;

end.

3)

var mas: array[1..15] of integer = {.,.,}; // перечисление элементов массива, который дан по условию задания

var counter: integer;

begin

for i:= 1 to 15 do

begin

if (mas[i]>5) and (i mod 2 = 0) then counter:=counter+1;

end;

end.

4)

var mas: array[1..15] of integer;

var counter: integer;

begin

for i:= 1 to 15 do

begin

mas[i] = random(20) - 5;

end;

for i:= 1 to 15 do

begin

writeln(mas[i]);

end;

for i:= 1 to 15 do

begin

if (mas[i]>0) then counter:=counter+1;

end;

end.

5)

var mas: array[1..7] of real = {.,.,}; // перечисление элементов массива, который дан по условию задания

var counter: integer;

begin

for i:= 1 to 7 do

begin

readln(mas[i]);

end;

for i:= 1 to 7 do

begin

if mas[i]>0 then mas[i]=0;

end;

for i:= 1 to 7 do

begin

writeln(mas[i]);

end;

end.

6)

var mas: array[1..10] of real = {.,.,}; // перечисление элементов массива, который дан по условию задания

var counter: integer;

var sum: real;

var average: real;

begin

for i:= 1 to 7 do

begin

readln(mas[i]);

end;

for i:= 1 to 7 do

begin

if mas[i]<0 then

begin

sum:=sum+mas[i];

counter:=counter+1;

end

end;

average:= sum/counter;

end.

Объяснение:

0,0(0 оценок)
Ответ:
smail520
16.10.2022 03:58

Python 3.7

import re

import string

def clrStr(strng: str) -> str:

   return re.sub(r' +', ' ', re.sub(rf'[{string.punctuation}]|\n', '', strng))

raw_string = input()

clean_string = clrStr(raw_string)

print(max(clean_string.split(' '), key = lambda p: len(p)))

И никаких велосипедов с перебором всего списка слов в цикле.

Объяснение:

Да, я специально решил эту задачу не так, как просят в условии. Ведь в условии вам максимально разжевали подход к решению. Но, стоит заметить, что по дурацки. Питоньи списки можно перебирать циклом вида for item in list, не обращаясь к исходному списку по индексам. Так же функция max() может принимать аргумент key, который является функцией, с которой интерпретатор будет выбирать максимум из указанного списка.

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота