- •Основы программирования на турбо паскале методические указания
- •Введение
- •Знакомство со средой программирования Turbo Pascal 7.0
- •Лабораторная работа №1 Структура программы на Паскале. Организация ввода-вывода данных. Использование стандартных функций.
- •Основные стандартные функции
- •Выражения
- •Задания для самостоятельной работы
- •Лабораторная работа №2 Программы разветвляющейся структуры
- •Практические задания
- •Var c: char;
- •I: integer;
- •Практические задания
- •Var a,b,c,X: integer;
- •Var X,y,r:real;
- •Задания для самостоятельной работы
- •Лабораторная работа №3 Программы циклической структуры
- •Практические задания
- •Var X,y,a, x1, x2, h, xmin, ymin, sa: real;
- •Задания для самостоятельной работы
- •Лабораторная работа №4 Работа с массивами и строками
- •1) Тип «массив»
- •Var a: Vector;
- •2) Тип «строка»
- •Var s: String[80];
- •Практические задания
- •Var a: array[1..100] of real;
- •I,j,n: integer;
- •Var a: array [1..10,1..10] of real;
- •I,j,n,m,m1,m2: integer;
- •Var s: string;
- •I: integer;
- •Задания для самостоятельной работы
- •Лабораторная работа №5 Процедуры и функции
- •1) Процедуры
- •Var a: mass;
- •Var I: integer;
- •2) Функции
- •Var a: mass;
- •Практические задания
- •Var a,b,c,s: real;
- •Var p: real;
- •If exist(a,b,c) then
- •Var a,b: vect;
- •Задания для самостоятельной работы
- •Лабораторная работа №6 Типизированные и текстовые файлы
- •Var f: File of real;
- •Var t: text80;
- •1) Типизированные файлы
- •2) Текстовые файлы
- •Практические задания
- •Var n,I,X,xmax: integer;
- •Var I,j,n:integer;
- •Задания для самостоятельной работы
- •Лабораторная работа №7 Графика в Турбо Паскале
- •Практические задания
- •Var gd,gm,n,I: integer;
- •Var I,X,y: integer;
- •Initgraph(gd,gm,'');
- •Задания для самостоятельной работы
- •394026 Воронеж, Московский просп., 14
Практические задания
1. Изучить и запустить программу, осуществляющую ввод массива с клавиатуры, сортировку его по убыванию и вывод на экран. С ее помощью составить программу, выполняющую следующие действия над вещественным одномерным массивом А(n):
а) поиск и вывод на экран минимального и максимального элементов с указанием номера;
б) перестановку элементов массива (1-го с последним, 2-го с предпоследним, и т.д.);
в) сортировку элементов массива по возрастанию методом пузырька;
г) замену каждого из элементов массива aij на разность aij – acp, где acp – среднее арифметическое элементов массива.
Var a: array[1..100] of real;
I,j,n: integer;
z: real;
begin
{Ввод массива А(n)}
write(Введите длину массива (n<100):);
readln(n);
writeln(Введите элементы массива:);
for i:=1 to n do
begin
write(A[, i, ]=);
readln(A[i])
end;
{Вывод массива в одну строку}
writeln(Массив А:);
for i:=1 to n do write(A[i]:6:3, );
writeln;
{Сортировка}
for i:=1 to n-1 do
for j:=i+1 to n do
if A[i]<A[j] then
begin
z:=A[i]; A[i]:=A[j]; A[j]:=z
end;
{Вывод отсортированного массива}
writeln(Отсортированный массив:);
for i:=1 to n do write(A[i]:6:3, );
writeln;
readln
end.
2. Изучить и запустить программу, осуществляющую ввод матрицы А с клавиатуры, перестановку указанных строк и вывод матрицы на экран в виде таблицы. С ее помощью составить программу, выполняющую следующие действия над вещественным двумерным массивом А(mn), m≠n:
а) поиск и вывод на экран минимального и максимального элементов матрицы с указанием их позиции;
б) подсчет количества положительных и отрицательных элементов матрицы А;
в) транспонирование матрицы А;
г) вычисление и печать результатов перемножения матриц А и АТ: B=ААТ, С=АТА.
д) перестановку столбцов матрицы А, чтобы максимальный элемент оказался в первом столбце, и перестановку строк, чтобы он оказался в левом верхнем углу матрицы.
Var a: array [1..10,1..10] of real;
I,j,n,m,m1,m2: integer;
z: real;
begin
{Ввод матрицы А}
write(Введите число строк (m<10):);
readln(m);
write(Введите число столбцов (n<10):);
readln(n);
for i:=1 to m do
for j:=1 to n do
begin
write(A[, i, ,, j, ]=);
readln[a[i,j]]
end;
{Вывод матрицы в виде таблицы}
writeln(Исходная матрица:);
for i:=1 to m do
begin
for j:=1 to n do write(a[i,j], );
writeln
end;
{Ввод номеров переставляемых строк}
write(Введите номера переставляемых строк: );
readln(m1,m2);
if (m1>m) or (m2>m) or (m1=m2) then
begin
writeln(Неверные номера строк);
exit
end;
{Перестановка}
for j:=1 to n do
begin
z:=a[m1,j]; a[m1,j]:=a[m2,j]; a[m2,j]:=z
end;
{Вывод матрицы в виде таблицы}
writeln(Матрица после перестановка:);
for i:=1 to m do
begin
for j:=1 to n do write(a[i,j], );
writeln
end;
readln
end.
3. Изучить и запустить программу, подсчитывающую, сколько раз встречается каждый символ в задаваемой с клавиатуры строке.
