- •Информатика
- •Введение
- •Алгоритм и программа
- •Интегрированная инструментальная среда turbo pascal 7.0.
- •Начало работы
- •Клавиатура
- •Диалоговые окна
- •Подготовка текста программы Начало работы
- •Ввод текста и внесение изменений в текст программы
- •Компиляция
- •Пробный запуск программы на выполнение
- •Буфер промежуточного хранения
- •Использование справочной системы
- •Сохранение текста программы в файле
- •Отладка программы
- •Завершение работы
- •Алфавит языка
- •Символы, используемые в идентификаторах
- •Разделители
- •Специальные символы
- •Знаки пунктуации
- •Основные типы данных
- •Описание переменных
- •Инструкция присваивания
- •Выражение
- •Тип выражения
- •Выполнение инструкции присваивания
- •Константы
- •Целые константы
- •Вещественные константы
- •Строковые и символьные константы
- •Константные выражения
- •Типизированные константы
- •Стандартные функции
- •Арифметические функции
- •Функции преобразования типа
- •Функции для величин порядкого типа
- •Ввод и вывод информации
- •Инструкции write и writeln
- •Инструкции read и readln
- •Общая структура программы
- •Раздел объявлений и соглашений
- •Заголовок
- •Глобальные директивы компилятора
- •Оператор uses
- •Объявления глобальных меток, констант, типов и переменных
- •Процедуры и функции
- •Заголовок процедуры или функции
- •Объявления локальных меток, констант, типов и переменных
- •Тело процедуры/функции
- •Основной блок программы
- •Управляющие структуры
- •Условие
- •Условный оператор if
- •Условный оператор case
- •Оператор цикла for
- •Оператор цикла repeat
- •Оператор цикла while
- •Оператор безусловного перехода goto
- •Пустой оператор
- •Составной оператор
- •Массивы
- •Объявление массива
- •Некоторые типичные действия с массивами
- •Вывод массива
- •Ввод массива
- •Сортировка массива
- •Сортировка методом прямого выбора
- •Сортировка методом прямого обмена
- •Поиск в массиве
- •Поиск минимального (максимального) элемента массива
- •Операции с матрицами
- •Сложение матриц
- •Транспонирование матрицы
- •Умножение матриц
- •Символы и строки
- •Символы
- •Массив символов
- •Функция length
- •Процедура delete
- •Функция pos
- •Функция copy
- •Процедуры и функции
- •Процедура
- •Функции
- •Параметры-процедуры и параметры-функции.
- •Процедура exit
- •Директивы подпрограмм
- •Директива forward
- •Директивы far и near
- •Директива external
- •Директива assembler
- •Директива inline
- •Директива interupt
- •Рекурсия Понятие рекурсии
- •Пример программы: поиск пути
- •Вывод в файл
- •Объявление файла
- •Назначение файла
- •Инструкции вывода в файл
- •Открытие файла для вывода
- •Ошибки открытия файла
- •Закрытие файла
- •Ввод из файла
- •Открытие файла
- •Чтение из файла
- •Конец файла и конец строки
- •Введение в структурное программирование
- •Рекомендательный библиографический список Основной:
- •Дополнительный:
Поиск минимального (максимального) элемента массива
Алгоритм поиска минимального (максимального) элемента массива довольно очевиден: делается предположение, что первый элемент массива является минимальным (максимальным), затем остальные элементы массива сравниваются с этим элементом. Если обнаруживается, что проверяемый элемент меньше ( больше) принятого за минимальный (максимальный) и продолжается проверка оставшихся элементов. Ниже на рис. 20 представлена блок-схема алгоритма поиска минимального элемента в массиве из 10 целых чисел.
Рис.20. Блок-схема алгоритма поиска минимального элемента.
Программа:
Program Example ;
Var
A : Array[1..10] of integer ; { массив целых чисел ] ;
Min : Integer ; { номер минимального элемента массива }
i : Integer ; { номер элемента сравниваемого с минимальным}
Begin
WriteLn(‘ Введите 10 целых чисел в одной строке через пробел ‘) ;
for i :=1 to 10 do ReadLn(A[i]) ; { Ввод массива целых }
Min := A[1] ;
for i := 2 to 10 do
if A[i] < Min then Min := A[i] ;
WriteLn(‘ Минимальный элемент массива : ‘, Min:3) ;
End.
Операции с матрицами
Матрицей A размерности n m называется двумерный массив из n строк и m столбцов :
где элементы матрицы A.
Наиболее типичные действия производимые над матрицами:
сложение матриц;
транспонирование матрицы;
умножение матриц.
Сложение матриц
Рассмотрим на примере сложения двух матриц A и B размерности 3 4.
Блок-схема алгоритма сложения матриц представлена на рис. 21.
Рис.21. Блок-схема алгоритма сложения матриц.
Программа:
program Summa_matrix;
Const
m=4;
n=3;
Type
matrix = array[1..n,1..m] of Integer;
Var
A,B,C : matrix;
i,j : Integer;
BEGIN
Writeln('Ввод матрицы A');
for i:= 1 to n do
begin
writeln('Cтрока',i:2);
for j := 1 to m do
begin
write('Столбец',j:2,'->');
readln(A[i,j])
end;
end;
Writeln('Ввод матрицы B');
for i:= 1 to n do
begin
writeln('Cтрока',i:2);
for j := 1 to m do
begin
write('Столбец',j:2,'->');
readln(B[i,j])
end;
end;
writeln('Матрица С - сумма матриц A и B') ;
for i:= 1 to n do begin
for j := 1 to m do begin
C[i,j] := A[i,j] + B[i,j] ;
write(C[i,j]:3)
end ;
writeln ;
end
End.
Транспонирование матрицы
Пусть дана матрица размерности n m. Матрица размерности m n называется транспонированной к матрице A, если ее элементы определены по формуле .
Рассмотрим пример транспонирования матрицы размерности 2 3.
Блок-схема алгоритма транспонирования матрицы представлена на рис. 22.
Рис.22. Блок-схема алгоритма транспонирования матрицы.
Программа:
program Transp_matrix;
Const
m=3;
n=2;
Var
A : array[1..n,1..m] of integer;
B : array[1..m,1..n] of integer;
i,j : Integer;
BEGIN
Writeln('Ввод матрицы A');
for i:= 1 to n do
begin
writeln('Cтрока',i:2);
for j := 1 to m do
begin
write('Столбец',j:2,'->');
readln(A[i,j])
end;
end;
writeln('Матрица B - Транспонированная к матрице A') ;
for i:= 1 to m do begin
for j := 1 to n do begin
B[i,j] := A[j,i] ;
write(B[i,j]:3)
end ;
writeln ;
end
End.