- •Министерство образования рк
- •Программирование на языке pascal
- •Алматы 2004 содержание
- •Введение
- •Немного о работе в системе турбо паскаль
- •Лабораторная работа №1 переменная. Числа. Инструкция присваивания
- •Краткие теоретические сведения
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Лабораторная работа №2 структура программы в паскале. Ввод и вывод данных. Линейные программы
- •Краткие теоретические сведения
- •Вопросы к защите лабораторной работы
- •Лабораторная работа №3 условный оператор в программах на паскале
- •Краткие теоретические сведения
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Лабораторная работа №4 организация циклов
- •Краткие теоретические сведения
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Лабораторная работа №5 массивы
- •Краткие теоретические сведения.
- •2. Нахождение наибольшего элемента массива.
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Лабораторная работа №6. Обработка таблиц. (двумерных массивов)
- •Краткие теоретические сведения
- •Методические указания по работе и задания
- •Лабораторная работа №7 оператор варианта. (выбора)
- •Краткие теоретические сведения
- •3: Begin
- •4: Begin
- •Методические указания по работе и задания
- •Лабораторная работа №8 подпрограммы
- •Краткие теоретические сведения
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Лабораторная работа №9 рекурсия
- •Краткие теоретические сведения.
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •7 10
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Лабораторная работа №11 компьютерная графика
- •Краткие теоретические сведения.
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Лабораторная работа № 12 записи. Обработка записей
- •Краткие теоретические сведения.
- •Var X: z;
- •Var X: array [ 1.. 100 ] of tovar; y: tovar;
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Лабораторная работа №13 файлы. Работа с файлами в паскале
- •Краткие теоретические сведения.
- •Методические указания по работе и задания
- •Вопросы к защите лабораторной работы
- •Литература
Методические указания по работе и задания
№ |
Условие задачи |
1 |
Найдите произведения элементов строк прямоугольной таблицы. |
2 |
Найдите наибольший элемент квадратной таблицы. |
3 |
Замените все отрицательные числа их модулями. |
4 |
Найдите наим. элемент квадратной таблицы и замените его нулем. |
5 |
В квадратной таблице, не содержащей отр. элементов, найдите корень квадратный из произведения диагональных элементов. |
6 |
В целочисленной прямоугольной таблице увеличьте на 0,5 все отрицательные элементы. |
7 |
В целочисленной прямоугольной таблице расставить строки таким образом, чтобы элементы в первом столбце были упорядочены по убыванию. |
8 |
В квадратной таблице найдите наибольший элемент диагонали. |
9 |
В заданном массиве замените нулем наибольший элемент |
10 |
Поменяйте местами 1-ую и последнюю строки прям-ой таблицы. |
11 |
Составить программу подсчета числа различных элементов двумерного массива. |
12 |
В прямоугольной таблице замените все элементы их квадратами |
13 |
Квадратичную матрицу, состоящую из натуральных чисел повернуть на 90 градусов по часовой стрелке и вывести результат на экран. |
14 |
Написать программу, которая вычисляет сумму диагональных элементов квадратичной матрицы. |
15 |
Написать программу, которая проверяет, является ли введенная матрица магическим квадратом (сумма элементов которой в каждой строке, в каждом столбе и по каждой диагонали одинакова). |
16 |
В квадратной таблице, не содержащей отр. элементов, найдите корень квадратный из произведения диагональных элементов. |
17 |
В целочисленной прямоугольной таблице увеличьте на 0,5 все отрицательные элементы. |
18 |
В целочисленной прямоугольной таблице расставить строки таким образом, чтобы элементы в первом столбце были упорядочены по убыванию. |
19 |
В квадратной таблице найдите наибольший элемент диагонали. |
20 |
В заданном массиве замените нулем наибольший элемент |
21 |
Квадратичную матрицу, состоящую из натуральных чисел повернуть на 90 градусов по часовой стрелке и вывести результат на экран. |
22 |
Написать программу, которая вычисляет сумму диагональных элементов квадратичной матрицы. |
Лабораторная работа №7 оператор варианта. (выбора)
Цель работы: отработать практические навыки работы с оператором выбора (варианта).
Краткие теоретические сведения
Условный оператор позволяет осуществить ветвление программы только по двум направлениям, одно из которых соответствует выполнению проверяемого условия, а другое — невыполнению этого же условия. Если для переменной необходимо осуществить ряд действий, зависящих от других условий, то надо записывать либо вложенные условные операторы, либо несколько таких операторов подряд. Для такой ситуации удобно использовать оператор варианта. Он соответствует структуре, изображенной на рисунке 6.
Данная структура называется также переключателем и выполняется следующим образом. Вход в структуру содержит вычисление или ранее полученное значение переменной (индекса варианта). Это значение может совпасть с меткой, стоящей перед оператором на одной из ветвей переключателя. В таком случае выполняется оператор, помеченный этой меткой, и происходит выход из структуры. Оператор бывает простым или составным, ограниченным операторными скобками begin ... end;. Если значение индекса варианта не совпало ни с одной из меток, то выполняется оператор с номером п + 1 из строки else. Если оператор варианта содержит строку else, то это — полная форма оператора, если такой строки нет, то используется сокращенная форма оператора варианта.
Метки оператора варианта могут быть константами любого типа. Их тип должен совпадать с переменной индекса варианта. Возможно, чтобы индекс варианта был как именем переменной, так и выражением соответствующего типа.
Рис. 6. Структура оператора варианта
На языке Паскаль оператор варианта имеет вид:
case индекс варианта of
метка1: оператор 1;
метка2: оператор 2;
. . .
метка n: оператор n;
else оператор n + 1
end;
Пример программы, содержащей оператор варианта. Одной из распространенных задач раздела физики «Молекулярно-кинетическая теория» является задача, связанная с расчетом числа молекул в единице объема в теле заданной массы и в теле известного объема. Для такой задачи можно построить программу-решатель.
Дано: молярная масса вещества М, плотность данного вещества Р, масса R или объем данного тела V. Требуется найти число молекул К: 1) в единице массы вещества; 2) в теле с заданной массой; 3) в единице объема вещества; 4) в теле с заданным объемом. Для решения задачи воспользуемся формулой:
К= (NA/M)R,
где NA = 6,022 * 10 23 г/моль — число Авогадро.
На основании этой формулы получаем расчетные формулы для программы:
1) К = N A/ М; 2) К= N AR/M; 3) К= NA Р V/ М; 4) К= NA Р/ М.
Программа имеет вид:
program Р20;
const NA = 6.022 E20;
var N: integer; М, R, Р, V, К: real;
begin
writeln (‘зная постоянную Авогадро, плотность Р данного вещества’);
writeln (‘и его молярную массу М, можно найти число молекул в’);
writeln (‘1. в единице массы вещества’);
writeln (‘2. в теле массой R’);
writeln (‘3. в единице объема’);
writeln (‘4. в теле объемом V’);
write (‘введите номер решаемой задачи’);
readln (N);
write (‘введите исходные данные: М = ‘);
readln (М);
case N of
1: К: = NA/M;
2: begin
write (‘R = ‘);
readln (R);
K: = NA -R/M;
end;