конкретно в каких стейтментах была ошибка , я не смог разобраться , но фактически у тебя
1.был не правильный вывод (m[1])
2.неправильная итерация по циклу с переменной 'с'
крч легче было просто переделать
var
c, n, i, j: integer;
m: array[1..1000] of integer;
begin
Readln(n);
for i := 1 to n do
begin
m[i] := i;
Write(m[i], ' ');
end;
writeln;
while n >= 1 do
begin
if c+2 < n then c := c + 3 else c := n - c + 3;
for i:=c to n do m[c]:=m[c+1];
n := n - 1;
end;
writeln(m[c]);
end.
Короче. Вот код.
def matrix_gen(gen, n, m): Matrix = []; for i in range(n): a = []; for j in range(m): a.append(gen[j]); Matrix.append(a); return Matrix;Объяснение
Сначало ты инициализируешь функицю с названием "matrix_gen", которая принимает 3 параметра, 'gen' -- это генератор которые ты будешь использовать. 'n' & 'm' это размер матрицы.
Второй строчкой ты инициалихируешь пустой массив, которые похже заполнишь. Третей строчкой ты в for цикле обходишь все строки матрицы, они же подмассивы массива Matrix, просто 'a'. Делаем мы это 'n' раз.
Четвётрой строчкой ты инициализируешь массив(ы, мы в цикле) 'a', и следующей строчкой заполняешь уже его. Так же в for цикле. Всего в нём будет 'm' элементов.
Надеюсь решение правильное. Честно говоря у тебя вопрос очень странно поставлен.
ответ: Петров - биолог ;
Чашкин - физик ;
Иванов - химик ;
Кошкин - историк .
Объяснение: Мы знаем, что Чашкин не биолог и что Петров сразу отдал доклад Чашкина Иванову, а биолог отказался от доклада физика, следовательно Чашкин - физик, а Петров - биолог. Также знаем, что историк читает доклад по химии, а Иванов читает доклад Чашкина по физике, значит историк - Кошкин, а Иванов химик.