
- •Занятие №1: Программирование линейных алгоритмов.
- •1.1 Записать в Турбо Паскале арифметическое выражение:
- •1.2 Записать в виде алгебраической формулы:
- •2. Составить программу для вычисления значений переменных. Вывести значения вводимых исходных данных и результаты вычислений, сопровождая вывод наименованиями выводимых переменных.
- •Занятие №2: Программирование алгоритмов разветвляющейся структуры.
- •Составить программу для вычисления значений заданной функции, используя исходные данные. Выполнить проверку работы программы, значения аргумента выбрать самостоятельно.
- •Составить программу для вычисления значений заданной функции, используя исходные данные. Выполнить проверку работы программы, значения аргумента выбрать самостоятельно.
- •Вычислить значение функции, заданной графически. Рисунок графика выбрать в соответствии с номером своего варианта:
- •Занятие №3: Решение задач на составление программ разветвляющейся структуры. Решение уравнений и неравенств с использованием условного оператора.
- •Определить, имеется ли среди целых чисел a, b и с хотя бы одно четное.
- •Составить программу решения системы неравенств:
- •Занятие №4: Программирование циклических алгоритмов. Вычисление конечных сумм. Вычисление суммы бесконечного ряда. Табулирование функции.
- •1. Составьте программу, реализующую алгоритм вычисления суммы данного ряда.Записать результат работы программы при заданном значении аргумента.
- •3. Составить программу для вычисления суммы бесконечного ряда с погрешностью ε.
- •Занятие №5: Вычисление полиномов и их производных. Нахождение наибольшего и наименьшего значения функции.
- •В ычислить значения многочлена и его первую производную, используя формулу Горнера значения функции в заданном интервале с заданным шагом. Значения аргумента подобрать самостоятельно:
- •Найти наибольшее и наименьшее значения функции в заданном интервале с заданным шагом:
- •Занятие №6: Решение задач на использование комбинации операторов цикла и ветвления.
- •Чему равна знакочередующаяся сумма цифр числа n.
- •Даны натуральное число n и вещественное число X.Составить программу для вычисления:
- •Занятие №7: Программирование вложенных циклов
- •Занятие №8: Организация циклов в программе. Использование реккурентных соотношений
- •Занятие №9: Процедуры и функции
- •Составить программу для суммирования простых чисел из промежутка [m;n] . Использовать функцию, проверяющую является ли число простым.
- •Составить программу вычисления данного выражения: , где - функция нахождения максимального из двух чисел.
- •Заданы координаты вершин пятиугольника . Составить программу, определяющую периметр пятиугольника. Вычисление длин сторон оформить в виде функции по известной формуле: .
- •Составить программу упорядочивания последовательности 3 данных чисел X,y,z по убыванию с использованием подпрограммы-процедуры упорядочивания.
- •Занятие №10: Описание и использование одномерных массивов. Решение задач на обработку одномерных массивов.
- •1 . В одномерном массиве х, состоящем из n целых элементов, вычислить: a) количество элементов, удовлетворяющих условию ; b) сумму элементов, кратных 3.
- •3. Заданы два одномерных массива а и в размерности n. Составить программу, проверяющую, можно ли, меняя местами элементы одномерного массива а, получить одномерный массив в.
- •Занятие №11: Решение задач на обработку одномерных массивов. Использование массивов в качестве параметров в подпрограммах.
- •Занятие №12: Двумерные массивы.
- •Дана прямоугольная матрица размера m×n. Составить программу, которая находит столбцы с наибольшей и наименьшей суммой элементов. Вывести найденные столбцы и суммы их элементов.
- •С формировать квадратную матрицу по заданному образцу:
- •З анятие №13: Решение задач на обработку двумерных массивов. Использование матриц в качестве параметров в подпрограммах.
- •Для каждого столбца прямоугольной целочисленной матрицы определить сумму модулей его элементов, а затем сгруппировать столбцы в порядке возрастания этих сумм.
- •Занятие №14: Символьные переменные и строки. Обработка строк.
- •Дана строка. Удвоить каждую встречающуюся «о» и «а».
- •В заданном тексте удалить из текста пробелы и подсчитать длину сформированного текста.
- •Заняите №15: Решение задач обработки строк
- •Строка содержит произвольные символы таблицы ascii. Удалить из строки все цифры и повторить дважды каждый символ, кроме пробела, не являющийся цифрой. Просмотр строки осуществлять один раз.
- •Занятие №16: Понятие о файловом типе. Типы файлов. Процедуры и функции для работы с файлами.
- •Создать файл, состоящий из n целых чисел. Вывести содержимое этого файла на экран.
- •Н айти количество нечётных отрицательных элементов файла, созданного в задании 1, и полученный результат записать в новый файл.
- •З анятие №17: Записи. Обработка массива записей.
- •З анятие №18: Работа с файлами. Решение задач.
- •Дан текстовый файл f1. Переписать в обратном порядке его строки в файл f2. Содержимое файла f1 в оперативную память не копировать (в виде массива, стека, очереди и т.П.).
- •Занятие №19: Модули. Использование стандартных модулей.Работа с модулем Graph.
- •Исследовать область определения функции и построить график функций:
- •Построить кривые по заданному параметрическому представлению или заданному в полярных координатах:
- •Занятие №20: Вычисление определённого интеграла методом прямоугольников.
- •Занятие №21: Программирование операций с типами множеств
- •Занятие №22: Программирование задач с использованием динамических переменных.
- •Составить программу, которая вводит в память 12 целых чисел и находит количество элементов списка, кратных 3.
- •Занятие №23: Создание оконного интерфейса
- •Вычислить произведение трёх наименьших элементов отсортированного по возрастанию массива f(14)
- •Занятие №24: Создание интерфейса в виде меню
- •Создать прогамму, которая исполняет вывод на экран дисплея меню согласно предложенному варианту.
- •Занятие №25: Использование процедур и функций в работе с массивами.
- •В каждом из массивов а, в и с найти максимальный по модулю элемент и вычесть его из каждого элемента соответствующего массива
- •В каждом из массивов а(5), в(6) и с(7) найти максимальный по модулю элемент.
Составить программу упорядочивания последовательности 3 данных чисел X,y,z по убыванию с использованием подпрограммы-процедуры упорядочивания.
program prac4;
var x,y,z:integer;
procedure sort;
var arr:array[1..3] of integer;
i,t:integer;
begin
arr[1]:=x;
arr[2]:=y;
arr[3]:=z;
t:=1;
for i:=2 to 3 do if arr[t]<arr[i] then t:=i;
i:=arr[1];
arr[1]:=arr[t];
arr[t]:=i;
if arr[3]>arr[2] then
begin
t:=arr[3];
arr[3]:=arr[2];
arr[2]:=t;
end;
x:=arr[1];
y:=arr[2];
z:=arr[3];
end;
begin
readln(x,y,z);
sort;
writeln(x,y,z);
readln;
end.
Вопросы к лабораторной работе №8
Что такое подпрограмма? Для чего используются подпрограммы?
В чём отличие между подпрограммами-процедурами и подпрограммами-функциями?
Что лежит в основе метода программирования сверху вниз?
Каким образом осуществляется обмен данными между основной программой и подпрограммой?
Какие параметры подпрограммы называются формальными, а какие – фактическими?
Какие два способа передачи параметров вы знаете? В чём их отличие?
Что такое область видимости переменной? Какие переменные называются локальными, а какие - глобальными?
Занятие №10: Описание и использование одномерных массивов. Решение задач на обработку одномерных массивов.
1 . В одномерном массиве х, состоящем из n целых элементов, вычислить: a) количество элементов, удовлетворяющих условию ; b) сумму элементов, кратных 3.
program prac1;
const N=10;
var X:array[1..N] of byte;
i,c,s:integer;
begin
randomize;
for i:=1 to N do
begin
X[i]:=random(10);
write(X[i],' ');
end;
writeln;
for i:=1 to N do
begin
if X[i]<=6 then c:=c+1;
if X[i] mod 3 = 0 then s:=s+X[i];
end;
writeln(c,' ',s);
r
eadln;
end.
2.
Д
ана
прямокутна матриця розміру m×n.
Скласти програму, яка знаходить стовпці
з найбільшою і найменшою сумою елементів.
Вивести знайдені стовпці і суми їх
елементів.
program prac2;
var matrix:array[1..N,1..M] of byte;
smax,i,j,smin,cmin,cmax,s:integer;
begin
cmin:=1;cmax:=1;
smax:=0;smin:=0;
randomize;
for j:=1 to N do
begin
for i:=1 to M do
begin
matrix[i,j]:=random(10);
write(matrix[i,j],' ');
end;
writeln;
end;
for i:= 1 to M do
smax:=smax+matrix[i,1];
smin:=smax;
for j:=2 to N do
begin
s:=0;
for i:=1 to M do
s:=s+matrix[j,i];
if s>smax then
begin
smax:=s;cmax:=j;
end
else if s<smin then
begin
smin:=s;cmin:=j;
end;
end;
for i:=1 to M do
write(matrix[cmax ,i]);
writeln;
for i:=1 to M do
write(matrix[cmin ,i]);
writeln;
writeln(smax);
writeln(smin);
readln;
end.
3. Заданы два одномерных массива а и в размерности n. Составить программу, проверяющую, можно ли, меняя местами элементы одномерного массива а, получить одномерный массив в.
program prac3;
const N=10;
var A,B:array[1..N] of integer;
var temp,i,j:integer;
label z;
begin
for i:=1 to N do
begin
writeln('A',i);
readln(A[i]);
writeln('B',i);
readln(b[i]);
end;
for i:=1 to N do
begin
j:=i;
while j<N do
begin
inc(j);
if A[j]=B[i] then
begin
temp:=A[i];
A[i]:=A[j];
A[j]:=temp;
break;
end;
end;
if B[i] <> A[i] then
begin
writeln('mnojestva elementov massivov ne identichni');
GoTo z;
end;
end;
writeln('mnojestva elementov massivov identichni');
z:
readln;
end.
Контрольные вопросы:
Дайте определение массива.
Массив – ряд нумерованных переменных одного типа.
В каком разделе (разделах) программы допустимо описание данных типа массив?
В разделе описания.
Какие типы данных недопустимы для компонентов массива? Какие допустимы?
В качестве элементов массива можно использовать любой тип данных, поэтому вполне правомерно существование массивов записей, массивов указателей, массивов строк, массивов и т.д.
Дайте определение индекса. Какие типы данных можно использовать при описании индекса?
Индекс – идентификатор переменной в массиве.При его описании можно использовать перечисляемые типы(целочисленные и char).
Какой массив называется одномерным? Двумерным? N-мерным?
Одномерный – линейный массив.
Двумерным называется массив, элемент которого зависит от его местоположения в строке и в столбце.
N-мерным называется массив, в котором каждая группа элементов, кроме первой в иерархии, состоит из дочерних групп, и в свою очередь является дочерней группой группы, которая выше в иерархии.А всего в иерархии N уровней.
Как располагаются в памяти элементы одномерного массива? Двумерного массива?
Элементы одномерного массива располагаются в памяти линейно.Элементы двумерного – сгруппированно.Первый индекс – индекс группы, второй – индекс элемента.
Какие алгоритмы поиска в массиве Вам известны? Опишите один из них.
Поиск перебором, двоичный поиск.