Вопрос задан 15.09.2018 в 12:36. Предмет Информатика. Спрашивает Щербаков Данила.

На 6 строке выдает нельзя считывать данные этого типа Program Pro; var i,a,b,c,d:integer;

M:array[,,,,] of integer; begin; Readln(SetLength(M,i,a,b,c,d)); for i:=0 to SetLength(M,i,a,b,c,d) do for a:=0 to SetLength(M,i,a,b,c,d) do for b:=0 to SetLength(M,i,a,b,c,d) do for c:=0 to SetLength(M,i,a,b,c,d) do for d:=0 to SetLength(M,i,a,b,c,d) do Readln(M[i,a,b,c,d]); Writeln(M); end.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Жинь Дима.
Слушай ты задаешь ппограмму с помощью команды integer, а она в свое время работает толлько для натуральных чисел поэтому и выдает ошибку. для того чтобы исправить замени ее на real должно получиться
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Представленный вами код на языке программирования Pascal содержит несколько ошибок и неправильных конструкций. Давайте разберемся с ним по порядку.

```pascal Program Pro; var i, a, b, c, d: integer; M: array[,,,,] of integer;

begin Readln(SetLength(M, i, a, b, c, d));

for i := 0 to SetLength(M, i, a, b, c, d) do for a := 0 to SetLength(M, i, a, b, c, d) do for b := 0 to SetLength(M, i, a, b, c, d) do for c := 0 to SetLength(M, i, a, b, c, d) do for d := 0 to SetLength(M, i, a, b, c, d) do Readln(M[i, a, b, c, d]);

Writeln(M); end. ```

Теперь давайте обсудим обнаруженные проблемы:

1. `SetLength` не предназначена для чтения данных. Эта функция используется для изменения размера массива. Ваш код неясен в отношении того, что вы хотите сделать с `SetLength`. Если вы хотите создать многомерный массив, просто определите его размер в объявлении массива.

2. Вложенные циклы в вашем коде имеют неправильные условия. Вероятно, вам нужно использовать `Length` вместо `SetLength`, чтобы получить размеры массива.

3. `Readln(M[i, a, b, c, d]);` - здесь вы пытаетесь считать элемент массива. Однако, так как у вас нет указания на тип данных массива и его размерности, это может привести к ошибкам.

4. `Writeln(M);` - здесь вы пытаетесь вывести весь массив, но это тоже некорректно. Вам нужно указать конкретный элемент массива для вывода.

Поправленный код может выглядеть так:

```pascal Program Pro; var i, a, b, c, d: integer; M: array[0..9, 0..9, 0..9, 0..9, 0..9] of integer; // Пример размеров массива

begin // Необходимо установить размеры массива при его объявлении // Например: M: array[0..9, 0..9, 0..9, 0..9, 0..9] of integer;

for i := 0 to Length(M) - 1 do for a := 0 to Length(M[i]) - 1 do for b := 0 to Length(M[i, a]) - 1 do for c := 0 to Length(M[i, a, b]) - 1 do for d := 0 to Length(M[i, a, b, c]) - 1 do Readln(M[i, a, b, c, d]);

// Вывод конкретного элемента массива Writeln(M[0, 0, 0, 0, 0]); end. ```

Обратите внимание, что я использовал произвольные размеры массива (0..9), и вам нужно адаптировать их под вашу задачу.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос