Лабораторные задания.
ЛАБОРАТОРНАЯ РАБОТА №4. УСЛОВНЫЙ ОПЕРАТОР. ОПЕРАТОР ВЫБОРА. ЦИКЛИЧЕСКИЕ ОПЕРАТОРЫ. РАЬОТА С МАССИВАМИ. Цель работы: закрепить знания об условном операторе, операторе выбора и циклических операторах языка Паскаль. Получить навык работы с одномерными и двухмерными массивами. Краткие теоретические сведения. 1)Массив -это пронумерованная последовательность величин одинакового типа, обозначаемая одним именем. Элементы массива располагаются в последовательных ячейках памяти, обозначаются именем массива и индексом. Каждое из значений, составляющих массив, называется его компонентой (или элементом массива). Массиву присваивается имя, посредством которого можно ссылаться как на массив данных в целом, так и на любую из его компонент. Массив это однородный, упорядоченный структурированный тип данных с прямым доступом к элементам. Массив описывается так:
имя массива:array [тип индекса] of базовый тип; Чаще всего типом индекса является диапазон. Например, var B: Array [1..5] Of Real; R: Array [1..34]Of Char; 2) Если за каждым элементом массива закреплен только один его порядковый номер, то такой массив называется линейным. Вообще количество индексов элементов массива определяет размерность. По этому признаку массивы делятся на одномерные (линейные), двумерные, трехмерные и т.д. Заполнить массив можно с помощью оператора присваивания. Этот способ заполнения элементов массива особенно удобен, когда между элементами существует какая-либо зависимость, например, арифметическая или геометрическая прогрессии, или элементы связаны между собой каким-либо соотношением. Другой вариант присваивания значений элементам массива – заполнение значениями, полученными с помощью генератора случайных чисел.
3) Условный оператор if может иметь две формы – краткую и полную.
E APMAAAAiBgAAAAA= " fillcolor="white [3201]" strokecolor="black [3213]" strokeweight="1pt">
Рисунок 1. Алгоритмическая схема краткой формы учловного оператора При выполнении оператора анализируется условие. Если оно имеет значение True, выполняется оператор, иначе ничего не происходит и условный оператор завершает свою работу. Оператор может быть составным. Программный код в этом случае имеет вид: If Усл. Then Begin Оператор 1; Оператор 2; Оператор 3; end;
Рисунок 2. Алгоритмическая схема полной формы условного оператора Эта схема соответствует такой строке программного кода
if Услов. then Оператор 1 else Оператор 2; При выполнении оператора анализируется условие. Если оно имеет значение, выполняется Оператор 1, иначе выполняется Оператор 2 оператор завершает свою работу. Как и в краткой форме операторы могут быть составными.
4) Оператор выбора case позволяет выбрать одно из нескольких возможных продолжение программы. Параметром, по которому осуществляется выбор, служит ключ выбора – выражение любого порядкового типа (целого, символьного).
Рисунок 3. Алгоритмическая схема оператора выбора
Эта схема соответствует такой строке программного кода case <ключ_выбора> of < список_выбора > else < оператор > end; Оператор работает следующим образом, вначале вычисляется выражение <ключ_выбора>, а затем в последовательности операторов <список_выбора> выполняется тот, которому предшествует константа, равная вычисленному значению, после чего оператор выбора завершает свою работу. Если в списке выбора не будет найдена, соответствующая вычисленному значению ключа выбора, управление передается операторам, стоящим за словом else.
5) Циклические операторы используются для многократного повторения некоторого фрагмента программы, который называют телом цикла. Если количество повторений заранее известно, то используется счетный оператор цикла for.
Рисунок 4. Алгоритмическая схема счетного оператора цикла Эта схема соответствует такой строке программного кода for < параметр_цикла > :=<нач_значение> to < кон_значение > do Оператор При выполнении оператора for вначале вычисляется значение < нач_значение > и осуществляется присваивание < параметр_цикла > :=<нач_значение> После этого циклически повторяется следующая последовательность действий: 1. Проверяется условие <параметр_цикла>><кон_значение>. Если условие выполнено оператор прекращает работу. Иначе п.2 2. Выполняется Оператор 3. Происходит наращивание переменной <параметр_цикла> на единицу.
6) Оператор цикла с предварительной проверкой условия while в алгоритмической форме имеет вид
Рисунок 5. Алгоритмическая схема оператора цикла с предварительной проверкой условия. Эта схема соответствует такой строке программного кода while Усл do Оператор
При выполнении оператора анализируется условие. Если оно имеет значение True, выполняется Оператор, после чего вычисление выражения и его проверка повторяются. Если условие имеет значение False, оператор while прекращает свою работу.
7) Оператор цикла с постпроверкой условия repeat…until в алгоритмической форме имеет вид
Рисунок 6. Алгоритмическая схема оператора цикла с постпроверкой условия.
Эта схема соответствует такой строке программного кода repeat Оператор until Усл; Оператор выполняется хотя бы один раз, после чего вычисляется выражение Усл. Если его значение false, то Оператор повторяется, в противном случае цикл repeat…until завершает свою работу.
8) Изобразить и пояснить алгоритм программы, в которой пользователь заполняет одномерный массив, содержащий 8 элементов, а затем он выводиться на экран. Program test1; var A: array [1..8] of real; i,j: integer; begin for i:=1 to 8 do begin writeln(‘Vvedite znachenie A [‘,I,’]’); readln(A[i]); end; writeln (‘Massiw A’); for j:=1 to 8 do begin writeln(‘A[‘,J,’]=’,A[j]:7:3); end; end. 9) Написать и пояснить программу на языке Паскаль, в которой пользователь заполняет двухмерный массив размером 4х5 элементов, а затем он выводиться на экран. Program test2; var A: array [1..4,1..5] of real; i, j, k, m: integer; begin for i:=1 to 4 do begin writeln(‘Vvedite znachenie A[‘,I,’]’); readln (A[i]); end; begin for j:=1 to 5 do begin writeln(Vvedite znachenie A[‘,J,’]); readln(A[j]); end; writeln(‘Massiw A’); for k:=1 to 4 do begin for m:=1 to 5 do writeln(‘A[‘,K,’,M,’]=’, A[k,m]:7:3); end; end. Лабораторные задания.
Задание 1 – Напишите программу на языке Паскаль для работы с одномерным массивом в соответствии со своим вариантом. Массив должен заполняться пользователем вручную. Программа, которая находит в одномерном массиве максимальный элемент.
Program maksmas; var a: array[1..5] of integer; max, i: integer; begin for i:=1 to 5 do begin writeln(‘Vvedite znachenie a[‘,i,’]’); read(a[i]); end; writeln; for i:=1 to 5 do write(a[i],’ ‘) writeln; max:=a[i]; for i:=1 to 5 do if a[i]>max then a[i]:=max; writeln(‘maximum=’, max); read(i); end. Задание 2 – Напишите программу на языке Паскаль для работы с двухмерным массивом в соответствии со своим вариантом. Массив должен заполняться автоматически случайными числами. Программа должна находить среднее арифметическое значение элементов в каждой строке.
Program zadanie_2; var a: array [1..5,1..5] of integer; i,j,c: integer; begin randomize; for i:=1 to 5 do begin for j:=1 to 5 do a[i,j]:=random (100); end; writeln(‘Massiw’); for i:=1 to 5 do begin writeln (‘ ’); for j:=1 to 5 do write(a[i,j],’ ‘); end; readln; writeln(‘Srednee arifmeticheskoe’); for i:=1 to 5 do begin c:=0; for j:=1 to 5 do c:=(a[i,j]+c); writeln(c/5:7:2); end; readln;
end. Вывод: в ходе лабораторной работы мы закрепили знания об условном операторе, операторе выбора и циклических операторах языка Паскаль. Получили навык работы с одномерными и двухмерными массивами.
Читайте также: S: Клинико-лабораторные критерии субклинической формы гепатита А Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|