zheckachernev
12.12.2022 10:56

Встроке 16 пишет "нет индексного свойства по умолчанию для типа integer"

program p3;
var a,k,i,j,m,n: integer;
s1,s2: real;
b,x: array[1..100] of real;
y: array[1..100,1..100] of real;
begin
s1: =0;
write('введите n=');
readln(n);
write('введите m=');
readln(m);
for i: =1 to n do
for j: =1 to m do
begin
write('a[',i,j,']=');
read(a[i,j]);
end;
for i: =1 to n do
for j: =1 to m do
s1: =s1+sqrt(sin(a[i,;
for i: =1 to n do
begin
write('x[',i,']=');
read (x[i]);
end;
for k: =1 to n do
begin
s2: =0;
for i: =1 to k do
s2: =s2+x[i]+cos(a[k,i]);
b[k]: =k*s1/s2;
write(' ',b[k]: 0: 4);
end;
end.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
промышок
24.04.2021 02:05

Объяснение:

Есть ошибки. Не будет компилироваться. Будет ошибка выполнения в первой программе для отрицательных значений x.

Жирным выделены строчки, где есть ошибки.

1) Описание переменных следует писать так

Var x, y: real;

2) Пропущена точка с запятой

y:= sqrt(x);

3) Корень с отрицательного числа

y:= sqrt(x)

4) Во второй программе в объявлении переменных

Var x, y: real;

5) Пропущены знаки операций

y :=3 * x / (8 - x)

6) во второй программе, если знаменатель == 0, то после вывода - решений нет, следует вывод не инициализированного значения у.

Вывод значения y надо перенести выше, после вычисления y.

Program nl;

Var: x,y; real;

Begin

Readln (x);

if x >= 0 then

y:= x*x

Else

y:= sqrt(x)

Writeln(y);

End.

Program nl;

Var: x,y;real;

Begin

Readln(x);

if (8-x)<>0 then

y:=3x/8-x

Else

Writeln('решений нет');

Writeln(y);

End.

Так лучше будет (по возможности исправлено)

{ Тело первой программы }

Var x, y: real;

Begin

 Write ('Input x: ');

 Readln(x);

 if x >= 0 then

    y := x * x

 Else

    y := sqrt(abs(x));

 Writeln('y: ', y: 10: 3);

 Readln();   // удерживаем консоль

End.

{ Тело второй программы }

Var x, y: real;

Begin

 Write ('Input x: ');

 Readln(x);

 if (8-x) <> 0 then

   bеgin

    y:=3*x/(8-x);

     Writeln(' y=', y: 10: 2);

  end

 Else

   Writeln('решений нет');

  Readln();   // удерживаем консоль

End.                                    

0,0(0 оценок)
Ответ:
sweet690
03.04.2021 15:08

Python

from random import randint

n=int(input('Введите размер массива: '))

a=[0]*n

b=0

for i in range(0, n-1):

   a[i]=randint(0, 1000)

# это часть для замены функции getH  

   c=a[i]

   if a[i]>=100: c=a[i]//100

   elif a[i]>10: c=a[i]//10

# конец определения первой цифры

   if c==8:

       b+=1

print(a)

print('Элементов начинающихся с 8 =',b)

# задание 2

# это вместо sorted.

i=1

while i<n:

  if a[i]<a[i-1]:

      z=a[i-1]

      a[i-1]=a[i]

      a[i]=z

      if i>1:

          i-=1

  else:   i+=1

# конец сортировки

i=1

b=1

print('3 минимальных элемента')

print(a[0])

while b<3 and b<n:

  if a[i]!=a[i-1]:

      print(a[i])

      b+=1

  i+=1


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