Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы на экзамен по информатике.docx
Скачиваний:
5
Добавлен:
27.04.2019
Размер:
106.96 Кб
Скачать

Вопрос 14. Двумерные массивы и вложенные циклы.

Двумерный массив

Организацию обработки элементов статического двумерного (многомерного) массива можно организовать с использованием сложноциклической структуры. Так как, например, при заполнении массива необходимо произвести обход всех элементов по строкам ( i ) изменяя индексы столбцов ( j ). Таким образом объявленный массив из N строк и M столбцов

Const

n=6;

m=8;

Var

a : array [1..n, 1..m] of integer;

В квадратной матрице количество строк и столбцов - одинаково и равно n.

Любая квадратная матрица имеет элементы главной и побочной диагонали.

Диагональные элементы главной диагонали :

a[1 , 1];a[2 , 2];a[3 , 3];….;a[n , n].

Элементами побочной диагонали являются :

a[1 , n];a[2 , n-1];a[3 , n-2];…;a[n-1 , 2];a[n , 1].

Циклы могут быть простые и вложенные (кратные, циклы в цикле). Для решения многих задач так же используют структуру вложенных циклов, которую и называют сложноциклической. Вложенными могут быть циклы любых типов : for, while, repeat … until.

Вопрос 15. Структура программы в языке Pascal Заголовок программы

В заголовке указывается имя программы и список параметров. Общий вид:

program n (input, output, x, y,…);

здесь n – имя программы; input – файл ввода; output – файл вывода; x, y – внешние файлы, используемые в программе.

Заголовка может и не быть или он может быть без параметров.

Рrogram Z;    Label; {описание меток}   Const; {описание констант}   Type; {описание типов}   Var; {описание переменных}   Procedure; {описание процедур}   Function; {описание функций} Begin   . . .   . . . end.

Раздел меток (label)

Любой выполняемый оператор может быть снабжен меткой – целой положительной константой, содержащей не более 4-х цифр. Все метки, встречающиеся в программе, должны быть описаны в разделе label.

Общий вид:

label l1, l2, l3…;

здесь l1, l2, l3 – метки.

Раздел констант (const)

Если в программе используются константы, имеющие достаточно громоздкую запись (например, число пи с 8-ю знаками), либо сменные константы (для задания варианта программы), то такие константы обычно обозначаются какими-либо именами и описываются в разделе const, а в программе используются только имена констант. Это делает программу более наглядной и удобной при отладке и внесении изменений.

Общий вид:

const a1 = c1; a2 = c2; …

здесь a1 – имя константы, c1 – значение константы.

Раздел типов (type)

Если в программе вводится тип, отличный от стандартного, то этот тип описывается в разделе type:

type t1 = вид_типа;

t2 = вид_типа;

где t1 и t2 – идентификаторы вводимых типов.

Пусть в программе встречаются переменные v11, v12,…; все они должны быть описаны следующим образом:

var v11, v12,…: type1;

v21, v22,…: type2; …

здесь v11, v12,… - имена переменных; type1 – тип переменных v11, v12,…; type2 – тип переменных v21, v22,….

Раздел процедур и функций

Здесь присутствуют заголовки и тела пользовательских процедур и функций.

Раздел действий (операторов)

Эта часть программы начинается с ключевого слова begin и заканчивается словом end, после которого должна стоять точка. Раздел действий есть выполняемая часть программы, состоящая из операторов.

Вопрос 16 Операторы присваивания, ввода, вывода. Соответствие типов.

Оператор присваивания - основной оператор любого языка программирования.

Общая форма записи оператора:

  имя величины := выражение

Например, V:=5;

или X:=A+1;

Операторы ввода

Для того чтобы получить данные, вводимые пользователем вручную (то есть с клавиатуры), применяются команды

read(<список_ввода>) и readln(<список_ввода>).

Список ввода - это последовательность имен переменных, разделенных запятыми.

Например, при помощи команды

read(k,x,c,s);

программа может получить с клавиатуры данные сразу для четырех переменных.

Операторы вывода

Для того чтобы вывести на экран какое-либо сообщение, используют процедуру

write(<список_вывода>) или writeln(<список_вывода>).

Примеры операторов вывода:

write (a);

writeln (s,m,k);

write ( ‘Длина окружности ’, L, ’ см.’ );

Совместимость типов данных

В общем случае при выполнении арифметических (и любых других) операций компилятору требуется, чтобы типы операндов совпадали.

Нельзя, например, сложить массив и множество, нельзя передать вещественное число переменной, ожидающей целый аргумент, и т.п.

В то же время, любая переменная, в расчете на вещественные значения, сможет работать и с целыми числами.