- •Алфавит и словарь языка Паскаль
- •Правила написания идентификаторов:
- •Константы и переменные
- •Типы данных
- •Перечень типов данных в Турбо Паскале
- •Стандартные библиотечные модули
- •Примечание
- •Операторы
- •Простые операторы
- •Структурные операторы
- •Стандартные арифметические действия
- •Практическое занятие №2 процедуры ввода-вывода
- •Процедура чтения read
- •Процедура записи write
- •Практическое задание n2 3 Структурные операторы. Операторы условия.
- •Оператор условия If
- •Практическое задание № 4
- •Оператор повтора repeat
- •Практическое задание n9 6 Контрольная работа по Turbo Pascal 7.0
- •Практическое задание n2 7 Массивы
- •Поиск элемента в массиве
- •1: Write (‘ номер элемента массива, равного данному ’, I); 2: End.
- •Практическое задание n2 9 Таблицы
- •Вычисление суммы элементов главной диагонали квадратной таблицы.
- •Нахождение сумм элементов столбцов таблицы,
- •Процедуры без параметров
- •Var a, b: integer; {локальные переменные}
- •Наберите программу вычисления наименьшего общего кратного.
- •2.0Ператор безусловного перехода.
- •Рекурсии
- •Наберите программу вычисления факториала числа с использованием рекурсии.
- •7. Проем о:,
- •Практическое задание № 13 записи
- •Дан массив записей, содержащий сведения о работниках предприятия.
- •,J: integer; s: real; p: string [10]; begin { формирование массива записей }
- •Практическое задание n914 файлы Файл- это совокупность данных, записанная во внешней памяти под определенным именем.
- •Средства обработки файлов.
- •Открытие файла для операции запись производится оператором:
- •Открытие файла для чтения производится оператором: reset (f);
- •Чтение данных из файла осуществляется оператором: read (f, а);
- •Практическое задание № 15 Множества
- •Операции над множествами:
- •Наберите программу, определяющую количество гласных и согласных букв в
- •Управление экраном компьютера
- •Наберите программу, которая в разных текстовых режимах выводит текст, смещая его по диагонали и вставляет строку текста.
- •Наберите программу, которая выводит на экран окно с изменяющимся цветом фона и цветом текста.
- •Задачи для контрольной работы
- •Практическое задание № 8 Сортировка массива
- •Наберите программу сортировки массива методом пузырька:
- •Процедуры с параметрами
- •Управление звуком компьютера
- •2. Наберите программу, позволяющую произвести прсхггую музыкальную гамму.
Практическое задание n2 7 Массивы
В использованных раннее программах производилась обработка одиночных данных - значений простых переменных. При решении практических задач даннье объединяются в различные структуры, наиболее простыми из которых являются массивы.
Массив - именованный набор с фиксированным количеством однотипных данных.
Например, список из классного журнала является массивом. В массиве могут быть одинаковые данные, поэтому элементы массива различаются по своим порядковым номерам. Если каждый элемент имеет один порядковый номер, то такой массив называется одномерным, если два - то это таблица из строк и столбцов. Для таблиц первый номер элемента показывает строку, а второй столбец, на пересечении которых находится элемент. Все строки таблицы имеют одинаковую длину.
В описании массива имеется специальное слово array (массив), после которого в квадратных скобках через две точки указывается диапазон изменения номеров элементов, затем слово of (из) и пишется тип данных массива. Встретив описания массива транслятор отводит для него столько последовательных ячеек, сколько указано в квадратных скобках, и такого формата, каков тип данных массива. Эту память в программе можно использовать целиком или частично, вычисляя значения элементов массива или вводя их с клавиатуры (либо с диска). Чаще всего номера элементов меняются от 1 до заданного числа п.
17
Для ввода данных в память необходимо организовать цикл. Поскольку число повторений ввода данных известно, удобно использовать цикл пересчет. Ввод массива а будет иметь виц:
For I: = 1 to n do Read (a [I]);
Рассмотрим базовые задачи.
Вычисление суммы элементов массива. Выполнение программы вычисления суммы
элементов массива представлено в таблице:
Исходные данные: 3,-2, 9,7, -1, 6,1 |
|||||||
I |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
А [ i ] |
3 |
-2 |
9 |
7 |
-1 |
6 |
1 |
S |
0 |
1 |
10 |
17 |
16 |
22 |
23 |
Program ABC7;
Const n = 7;
Vara:array[1.. n]of real;
S: real; I: integer;
Begin
Write (1 вводите элементы массива - ‘, n, ‘ вещественных чисел через пробел1);
For I: = 1 to n do Read (a [ I ]);
S: = 0;
For I: = 1 to n do S: = S + a[i];
Writeln;
Writeln (‘сумма элементов массиваS =1, S);
Readln;
I
Program ABC9;
Const n = 7;
Vara:array[1 ..n ]of real;
j: integer; с: real;
Begin
For I: = 1 to n do Begin
Write(1 a[‘, I,“] = ’);
Readln (a [ i ])
End;
For I: = 1 to n -1 do For j: = I +1 to n do IF a[ i]>a[ j ]
Then begin C:=a[ i ];
A [ i ]: = a [ j ];
A [ j ]: = с End;
Writeln (‘ упорядоченный по возрастанию массив ’); For I: = 1 to n do readln (a [i]);
End.
Откомпилируйте программу, запустите ее на выполнение.
Введите данные: 126 53 214 6 31 84 99, нажимая после каждой цифры клавишу Enter.
Посмотрите результат выполнения программы. Сохраните ее на носителе и создайте .ехе -файл.
Рассмотрим подробнее один из методов сортировок - “метод пузырька”. Пусть имеется последовательность чисел а1, а2,..., ап, которую необходимо упорядочить по возрастанию. Зафиксируем первый элемент, и будем последовательно сравнивать его со стоящим справа. Если какой-то из элементов справа окажется меньше первого, то мы поменяем местами этот элемент с первым и продолжим сравнение уже нового элемента, стоящего на первом месте, с оставшимися справа числами.
Если снова появится элемент, меньший зафиксированного, то повторим перестановку. В результате первого просмотра последовательности на первом месте окажется наименьший из всех элементов, т.е. он как более “легкий” всплывает наверх (отсюда и название - “метод пузырька’). Теперь зафиксируем второй элемент и повторим просмотр, выполняя при необходимости перестановки элементов и тд.
Чтобы при переборе элементов, стоящих справа от проверяемого, не менялся индекс последнего, индексы фиксируемого и стоящих правее него элементов должны быть различными : i и j Индекс i изменяется от 1 до п -1, индекс j всегда на 1 больше i и пробегает все значения от I + 1 до п. Для каждого значения i индекс j должен последовательно принять все допустимые значения, следовательно, конструкция программы, отражающая полный перебор всех элементов и их упорядочение по возрастанию, представляет собой двойной цикл.