
- •Самарский государственный университет путей сообщения
- •Информатика Основы программирования в среде 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. Вывод списка учащихся из файла
- •Контрольное задание Вариант вашего задания задает преподаватель!
- •Библиографический список
Лабораторная работа №4. Программирование циклов с условием
Цель работы: Овладеть навыками программирования на языке Turbo Pascal алгоритмов циклической структуры.
Алгоритм называется циклическим, если он содержит многократное выполнение одних и тех же ветвей при различных значениях промежуточных данных. Различают циклы с параметрами и циклы с условием.
В Turbo Pascal используется три формы оператора цикла, с помощью которых можно осуществить многократно повторяющиеся вычисления:
оператор цикла с предусловием;
оператор цикла с постусловием;
о
ператор цикла с параметром.
Оператор цикла с предусловием имеет вид:
While <условие> Do <оператор>
Он организует выполнение оператора неизвестное заранее число раз. Тело цикла выполняется до тех пор, пока условие истинно, выполнение прекращается, когда условие становится ложным. Так как истинность условия проверяется в начале каждой итерации, то тело цикла может не выполниться ни разу. Если после ключевого слова Do необходимо выполнить несколько операторов, то используется составной оператор Begin … End.
Оператор цикла с предусловием имеет следующую блок-схему:
Рис. 4. Блок-схема оператора цикла с предусловием
Задание 1. Оператор цикла с предусловием
Составить программу
на языке Turbo Pascal для вывода значений
функции
на отрезке [a,
b]
с шагом h,
используя цикл с предусловием.
Блок-схема предложенной задачи будет иметь вид (рис.5):
Запустите Turbo Pascal.
В окне редактирования наберите текст программы:
Program Tab_1;
var a, b, h, x, y: real;
b
egin
Writeln ('Введите значения a, b, h');
Read (a, b, h);
x:=a;
While ( x<=b) Do
Begin
y:=x*(1+exp(-x*x));
Writeln ('x=', x : 6 : 2, ' y=', y : 6 : 2);
x:=x+h
End;
end.
Откомпилируйте программу.
Запустите программу на выполнение. Сохраните программу на диске.
Рис. 5.
Задание 2. Программа "Угадай число".
Проиллюстрируем работу оператора While на примере программы, моделирующей игру "Угадай число". Первый игрок должен задумать число. Второй игрок должен угадать это число с нескольких попыток. При каждой попытке первый игрок должен сообщать второму о том, больше или меньше названное число задуманного.
Составим программу, в которой роль первого игрока будет выполнять компьютер.
Для "задумывания" числа будем использовать функцию:
Random (i),
которая возвращает целое случайное число, лежащее в интервале (0, i), здесь очевидно параметр i также должен быть целого типа.
Обозначим через z задуманное число (это число можно получить с помощью оператора присваивания z:=random(1000)), а через р – число, вводимое пользователем с клавиатуры. Тогда на каждом шаге угадывания числа р и z должны сравниваться между собой до тех пор, пока они не совпадут, т.е. не станет справедливым равенство р = z.
Таким образом, вся программа может быть записана так:
Program Ugaday;
var p, z: integer;
begin
z:=random(1000);
writeln ('Угадай число!');
read(p);
while p<>z do
begin
if p<z then writeln(' меньше')
else writeln(' больше');
read(p)
end;
writeln(' Угадал! ')
end.
Запустите Turbo Pascal.
В окне редактирования наберите текст программы.
Протестируйте программу несколько раз.
Сохраните программу под именем Ugaday.