
- •Самарский государственный университет путей сообщения
- •Информатика Основы программирования в среде Turbo Pascal
- •О сновы программирования в среде turbo pascal введение
- •Лабораторная работа №1. Знакомство с интегрированной средой Turbo Pascal
- •Задание 1. Знакомство с интерфейсом среды Turbo Pascal
- •Задание 2. Работа с буфером обмена
- •Задание 3. Компиляция и запуск программы
- •Лабораторная работа №2. Программирование линейных алгоритмов
- •Задание 1. Вычисление площади треугольника
- •Задание 2. Вычисление сопротивления цепи
- •Задание 3. Вычисление значения функции
- •Задание 4. Самостоятельное решение задач
- •Тестовое задание. Вариант задает преподаватель!
- •Лабораторная работа №3. Разветвляющиеся алгоритмы
- •Р ис. 1. Блок-схема условного оператора
- •Задание 1. Использование условного оператора
- •Р ис. 2. Блок-схема программы
- •Задание 2. Вложенные условные операторы
- •Задание 3. Нахождение максимума двух чисел
- •Задание 4. Самостоятельное решение задач
- •Тестовое задание. Вариант вашего задания совпадает с номером вашего компьютера!
- •Контрольное задание Вариант вашего задания задает преподаватель!
- •Лабораторная работа №4. Программирование циклов с условием
- •Задание 1. Оператор цикла с предусловием
- •Задание 2. Программа "Угадай число".
- •Задание 3. Алгоритм Евклида.
- •Задание 4. Оператор цикла с постусловием
- •Задание 5. Решение задач по теме
- •Лабораторная работа №5. Программирование циклов с параметром
- •Задание 1. Нахождение суммы
- •Задание 2. Таблица перевода миль в километры
- •Задание 3. Табулирование функции
- •Задание 4. Решение задач по теме Номера задач задает преподаватель!
- •Контрольное задание Вариант вашего задания задает преподаватель!
- •Лабораторная работа №6. Решение задач целочисленной арифметики
- •Номера задач задает преподаватель!
- •Лабораторная работа №6. Одномерные массивы
- •Задание 1. Ввод и вывод элементов массива
- •Задание 2. Использование массивов при вычислении значений функции
- •Задание 3. Однотипная обработка элементов массива
- •Задание 4. Нахождение минимального (максимального) элемента массива
- •Задание 5. Нахождение суммы элементов массива
- •Задание 6. Нахождение количества элементов массива
- •Задание 7. Решение задач по теме Номера задач задает преподаватель!
- •Контрольное задание Вариант вашего задания задает преподаватель!
- •Лабораторная работа №7. Строковые переменные
- •Задание 1. Проверка на совпадение первой и последней букв строки
- •Задание 2. Подсчет количества букв
- •Задание 3. Слова - перевёртыши
- •Задание 4. Замена букв в слове
- •Задание 5. Удаление символов в слове
- •Задание 6. Решение задач по теме Номера задач задает преподаватель!
- •Контрольное задание Вариант вашего задания задает преподаватель!
- •Лабораторная работа №8. Файлы
- •Задание 1. Запись вводимых данных во внешний файл
- •Задание 2. Чтение данных из файла
- •Задание 3. Нахождение суммы компонент числового файла
- •Задание 4. Вывод списка учащихся из файла
- •Контрольное задание Вариант вашего задания задает преподаватель!
- •Библиографический список
Задание 3. Алгоритм Евклида.
Алгоритм Евклида используется при подсчете НОД (наибольшего общего делителя) двух натуральных чисел. Этот алгоритм базируется на утверждении о том, что:
Н
ОД(А, В) = А, если А = В
НОД(А, В) = НОД(А, ВА), если А < В
НОД(А, В) = НОД(А В, В), если А > В
При этом программа по существу сводится к повторению условного оператора.
Program Evklid;
var a, b: integer;
begin
Writeln ('Введите числа a и b ');
read (a,b);
while (a < > b) do
if a > b then a:= a b
else b:= b a;
writeln ('НОД=', a)
end.
Запустите Turbo Pascal.
В окне редактирования наберите текст программы.
Протестируйте программу несколько раз.
Сохраните программу под именем Evklid.
Задание 4. Оператор цикла с постусловием
Оператор цикла с постусловием имеет вид:
Repeat <оператор 1>;
<оператор 2>;
……..
<оператор N>
Until <условие>;
О
ператор
организует выполнение нескольких
операторов неизвестное заранее число
раз. Тело цикла выполняется до тех пор,
пока условие ложно, выполнение
прекращается, когда условие становится
истинным (см. рис.6). Оператор цикла с
постусловием всегда выполняется хотя
бы один раз.
Рис. 6. Блок-схема оператора цикла с постусловием
Составить программу на языке Turbo Pascal для вывода значений функции на отрезке [a, b] с шагом h, используя цикл с постусловием.
Запустите Turbo Pascal.
В окне редактирования наберите текст программы:
Program Tab_2;
var a, b, h, x, y: real;
begin
Writeln ('Введите значения a, b, h');
Read (a, b, h);
x:=a;
Repeat
y:=x*(1+exp(-x*x));
Writeln ('x=', x:6:2, ' y=', y:6:2);
x:=x+h
Until x>b
end.
Откомпилируйте программу.
Запустите программу на выполнение.
Сохраните программу на диске.
Задание 5. Решение задач по теме
Самостоятельно составьте программу игры "Угадай число" и программу нахождения НОД двух целых чисел, используя оператор цикла с постусловием.
Лабораторная работа №5. Программирование циклов с параметром
Цель работы: Овладеть навыками программирования на языке Turbo Pascal алгоритмов циклической структуры
Существует две формы оператора цикла с параметром:
For <параметр>:=<начальное знач.> To <конечное знач.>
Do <оператор>;
For <параметр>:=<конечное знач.> DownTo <начальное знач.>
Do <оператор>;
Операторы цикла For организуют выполнение одного оператора известное заранее число раз. Если в цикле требуется выполнить несколько операторов, то из них нужно организовать составной оператор. В ходе выполнения цикла значения параметра изменяется от начального до конечного с шагом 1 (для цикла For…To) или от конечного до начального с шагом -1 (для цикла For…Downto). Тип начального и конечного значений должен совпадать с типом параметра цикла. Выход из цикла осуществляется при достижении параметром конечного (или соответственно начального) значения.
Задание 1. Нахождение суммы
Составить программу
на языке Turbo Pascal для вычисления значения
суммы
.
Запустите Turbo Pascal.
В окне редактирования наберите текст программы:
Program Summa;
var i, n, s: integer;
begin
Writeln ('Введите значение n');
Read (n);
s:=0;
For i:=1 To n
Do s:=s+(i*i*i 1);
Writeln ('s=', s : 6);
end.
Запустите программу на выполнение.
Сохраните программу на диске.
Самостоятельно составьте программу нахождения суммы
для произвольного значения n. (Проверка: для n = 15 сумма должна быть равна 3.3182289932Е+00 или 3.318).