- •Основы программирования
- •Турбо Паскаль Основы понятия
- •Алфавит языка паскаль
- •Спец символы:
- •Тип данных определяет:
- •Основные типы данных:
- •I Числовые типы данных
- •II Строковые переменные
- •Функции и операции для работы над строками
- •III Символьные переменные
- •Операции для работы с символами
- •Функции для работы с символами (char)
- •IV Логические переменные
- •Xor логическое исключающее “исключающий”
- •Правила записи арифметических выражений на языке паскаль:
- •Структура программы на языке паскаль.
- •Раздел операторов
- •Оператор присваивания
- •Оператор ввода данных
- •Оператор вывода данных
- •Вывод чисел типа real
- •Порядок составления программы:
- •Интерфейс пользователя
- •Программа с «неудобным» интерфейсом
- •Программа с «удобным» интерфейсом.
- •Линейные алгоритмические конструкции
- •Блок-схема
- •Язык программирования паскаль
- •Условные алгоритмические конструкции Оператор «ветвление»
- •Блок схема
- •Паскаль
- •Условный оператор может быть записан и в краткой форме.
- •Блок схема
- •Паскаль
- •Блок схема
- •Язык программирования паскаль
- •Оператор «выбор».
- •Блок схема
- •Язык программирования паскаль
- •Циклические алгоритмические конструкции
- •Цикл со счётчиком (с параметром):
- •Вариант использования «обратного» счётчика downto.
- •Блок схема
- •Язык программирования паскаль
- •Циклы с пред и пост условием:
- •Цикл с постусловием (оператор repeat):
- •Блок схема
- •Язык программирования паскаль
- •Цикл с предусловием (оператор while):
- •Блок схема
- •Язык программирования паскаль
- •Отличие операторов repeat и while:
- •Коротко о главном.
- •Программа с линейной структурой:
- •2. Ветвление(if):
- •3. Выбор (case):
- •4. Цикл со счётчиком (for):
- •5. Цикл с постусловием (repeat):
- •6. Цикл с предусловием (while);
- •Массивы.
- •Массив - пронумерованное множество данных одного типа. Для обращения к элементу массива надо указать имя массива и порядковый номер элемента (индекс).
- •1) Описание массива
- •2) Задание начальных значений
- •1. Нахождение суммы (произведения) с поиском.
- •2 Составные задачи на поиск в массиве.
- •5.2 Метод «пузырька».
- •Вывод массива.
- •Многомерные массивы
- •1) Описание массива
- •2) Ввод двумерного массива - задание начальных значений
- •3)Вывод на экран значения элементов массива по строкам:
- •4) Работа с элементами массивов
- •1. Вычисление суммы, произведения, количества элементов массива.
- •2. Поиск минимального (максимального) элемента массива
- •3. Сортировка двумерного массива.
- •Работа с файлами
- •Описание (объявление) файла
- •Назначение файла (Процедура Assign)
- •Ввод данных из файла
- •Открытие файла для чтения
- •Чтение из файла
- •Чтение до конца файла
- •Чтение до конца файла
- •Вывод (запись) в файл Инструкция вывода в файл
- •Открытие файла для записи (вывода в файл)
- •Создание нового файла или замена существующего файла
- •Запись файла в режиме добавления
- •Закрытие файла
- •Переименование файла
- •Стирание файла
- •Работа со строковыми типами данных
- •Описание (объявление) строковых переменных
- •Операции над строками.
- •Графический интерфейс системы программирования Turbo pascal .
2) Ввод двумерного массива - задание начальных значений
ввод с клавиатуры:
for i:=1 to 3 do
begin
for j:=1 to 4 do
begin
write (‘введите число’);
readln (a[i,j]);
end;
end;
for i:=1 to 3 do
begin
for j:=1 to 4 do
begin
write (‘a[’,I,’,’,j,’]=’);
readln (a[i,j]);
end;
end;
генерация случайных чисел:
Randomize
for i:=1 to 3 do
begin
for j:=1 to 4 do
begin
a[i,j] := Random(10);
write (a[i,j] ,’ ‘);
end;
writeln;
end;
используются числа в промежутке от 0 до 9
Randomize
for i:=1 to 3 do
begin
for j:=1 to 4 do
begin
a[i,j] := Random(30)-10;
write (a[i,j] ,’ ‘);
end;
writeln;
end;
Используются числа в промежутке от -10 до 19, (30-количественный диапазон чисел, 10-сдвиг по числовой шкале относительно 0 указывающий с какого числа используются числа.
3)Вывод на экран значения элементов массива по строкам:
For i:=1 to 3 do
Begin
For j:= 1 to 4 do
write ( a[i, j] ‘ ‘) ;
writeln; {перевод курсора на новую строку}
end;
4) Работа с элементами массивов
1. Вычисление суммы, произведения, количества элементов массива.
1.1 Вычисление суммы элементов.
Summa := 0;
For i:=1 to 3 do
For о:=1 to 4 do
Summa := summa + a[i,j];
1.2 Вычисление произведения элементов.
proiz := 1;
For i:=1 to 3 do
For о:=1 to 4 do
Proiz := Proiz * a[i,j];
1.3 Вычисление суммы (произведения) элементов, удовлетворяющих заданному условию.
Summa := 0;
For i:=1 to n do
For j:=1 to m do
If a[i,j] >0 Then Summa := summa + a[i,j];
1.4 Нахождение количества элементов, удовлетворяющих заданному условию.
найти количество положительных элементов в каждой строке массива.
For i:=1 to n do
Begin
Коlich:=0;
For j:=1 to m do
If a[i,j] > 0 Then
kolich:= kolich + 1;
Writeln(‘Колич. Положит. Знач. в’,i,‘строке =’,kolich);
End;
найти количество чётных элементов массива.
Коlich:=0;
For i:=1 to n do
For j:=1 to m do
If a[i,j] mod 2 = 0 Then
kolich:= kolich + 1;
Writeln(‘ Положит. Знач. ’,kolich);
2. Поиск минимального (максимального) элемента массива
Алгоритм поиска минимального (максимального) элемента в неупорядоченном массиве довольно очевиден: делается предположение, что первый элемент массива является минимальным (максимальным), затем остальные элементы массива последовательно сравниваются с этим элементом. Если во время очередной проверки обнаруживается, что проверяемый элемент меньше (больше) принятого за минимальный (максимальный), то этот элемент принимается за минимальный (максимальный) и продолжается проверка оставшихся элементов.
Найти максимальный (минимальный) элемент массива и его индекс.
max := а[1,1]; { max - максимальный, элемент}
Nmax: = 1; { Nmax- номер макс. элемента}
For i:=1 to 3 do
For j:=1 to 4 do
If a[i,j] > max Then ( If a[i] < min Then )
Begin
max:= a[i,j];
Nmax: = [i, j];
end;
writeln (‘макс. значение =’,max,’индекс макс. элемента’,Nmax);
1)если в условии знак > то мы находим максимальный элемент, если знак < то минимальный.
2) если неравенство строгое (> или <) то мы находим первый максимальный или минимальный элемент, а если нестрогое (>=или<=) то последний.