Даны числа n и m. Создайте массив A[n][m] и заполните его змейкой - Pascal
Формулировка задачи:
Здравствуйте. Помогите пожалуйста неумехе. Плохо понимаю Pascal
Задания:
5)
Даны числа n и m. Создайте массив A[n][m] и заполните его змейкой (см. пример). P.S: первые 6 с http://informatics.mccme.ru/Решение задачи: «Даны числа n и m. Создайте массив A[n][m] и заполните его змейкой»
textual
Листинг программы
- uses crt;
- type mas=array[1..100,1.. 100] of integer;
- var a:mas;
- i,j,n,m:integer;
- begin
- clrscr;
- write('n=m=');readln(n,m);
- for i:=1 to n do
- begin
- for j:=1 to m do
- begin
- if i mod 2 =1 then
- a[i,j]:=(i-1)*m+j
- else a[i,j]:=i*m-j+1;
- write(a[i,j]:4);
- end;
- writeln;
- end;
- readln;
- end.
Объяснение кода листинга программы
- Объявляется переменная типа
mas
(массив), названнаяa
. - Объявляются переменные
i
,j
,n
иm
типаinteger
. - Очищается экран.
- Запрашивается у пользователя ввод значений переменных
n
иm
. - Выполняется вложенный цикл по переменным
i
иj
от 1 доn
и от 1 доm
соответственно. 5.1. Если значениеi
делится на 2 с остатком равным 1:- Присваивается значение массиву
a
с индексами [i,j] равное выражению(i-1)*m+j
. 5.2. В противном случае: - Присваивается значение массиву
a
с индексами [i,j] равное выражениюi*m-j+1
. 5.3. Выводится значение массиваa
с индексами [i,j], выровненное по ширине в 4 символа.
- Присваивается значение массиву
- Печатается символ перехода на новую строку.
- Ожидается ввод пользователя перед завершением программы.
Этот код создает и заполняет двумерный массив
A
размеромn
наm
элементов значениями, заполняя его по порядку для нечетных строк и в обратном порядке для четных строк.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д