- •Лекции по Turbo Pascal 7.0
- •1 Курс, «Информатика»
- •Интегрированная среда Turbo Pascal 7.0
- •Первый шаг
- •Создание нового файла
- •Набор и редактирование текста программы
- •Клавиши перемещения курсора
- •Клавиши для редактирования текста:
- •Сохранение и открытие программ
- •Запуск программы
- •Завершение работы
- •А теперь, когда вы уже знаете, как набирать и запускать программы на компьютере, начнём изучать язык паскаль.
- •Первая программа
- •Краткая история
- •Что такое программа?
- •Зарезервированные слова
- •Переменные
- •Константы
- •Стандартные математические операции
- •В информатике, как и в математике, на ноль делить нельзя!
- •Оператор присваивания
- •Пример программы
- •Операторы ввода и вывода.
- •Оператор ввода Readln
- •Оператор вывода Write
- •Самостоятельные задания
- •Работа с цифрами
- •Выделение цифр числа
- •Конструирование числа по его цифрам
- •Обобщение
- •Самостоятельные задания
- •Условный оператор
- •Что такое условие?
- •Укороченный вариант условного оператора
- •Составной оператор
- •Составные условия
- •“Защита от дурака”
- •Вложенные условные операторы
- •Оператор выбора Case
- •Самостоятельные задания
- •Стандартные типы переменных
- •Общий обзор стандартных типов.
- •Целые типы
- •Вещественные типы
- •Способ записи вещественных чисел
- •Вывод на экран вещественных чисел
- •Точность и диапазон вещественных чисел различных типов
- •Вещественные функции
- •Линейная запись математических выражений
- •Логический тип
- •Символьные типы
- •Стандартные функции для работы со строками
- •Стандартные функции для типа char
- •Подпрограммы
- •Зачем нужны подпрограммы?
- •Процедуры
- •Аргументы процедуры
- •Результаты процедуры
- •Функции
- •Самостоятельные задания
- •Цикл For
- •Руками не трогать!
- •Нахождение суммы
- •Нахождение произведения
- •Нахождение количества
- •Цикл While ... Do
- •Цикл Repeat ... Until
- •2.7. Самостоятельные задания
- •Цикл в цикле
- •Натуральные числа
- •Делители чисел
- •Самостоятельные задания.
- •Простые числа
- •Самостоятельные задания.
- •Наибольший общий делитель двух чисел.
- •Самостоятельные задания.
- •Наименьшее общее кратное двух чисел
- •Самостоятельные задания.
- •Массивы
- •Определение и примеры
- •Операции с элементами массива
- •Анализ информации в массиве
- •Рекуррентные соотношения
- •Самостоятельное задание
- •Последовательность Фибоначчи
- •Другие рекуррентные последовательности
- •Оптимизация программ
- •Задача про интеллигентного студента.
- •Самостоятельные задания
- •Оформление программ
- •Понятие модуля
- •Управление цветом
- •Управление звуком
- •Опрос клавиатуры
- •Управление курсором.
- •Дополнительные задачи и вопросы
- •Теоретические вопросы
- •Практические задачи
- •Условия
- •Ряды и рекуррентные последовательности
- •Просмотр всех команд меню
- •Команды меню File
- •Команды меню Edit
- •Команды меню Search
- •Команды меню Run
- •Команды меню Compile
- •Команды меню Debug
- •Команды меню Options
- •Команды меню Window
- •Команды меню Help
- •Синтаксические ошибки
- •Ошибки выполнения
- •Логические ошибки
- •Средства отладки
- •Пошаговый режим работы программы
- •Просмотр/изменение переменных
- •Окно Watch
- •1. Теоретическая часть
- •1.1. Понятие алгоритма и его свойства.
- •1.2. Культура программирования
- •1.3. Устройство компьютера и его компоненты.
- •1.4. Информация
- •1.5. Логика
- •1.6. Системы счисления
- •1.7. Арифметические действия с двоичными числами
- •1.8. Информационные взаимодействия – коммуникации
- •1.9. Информационная революция
- •1.10. Компьютеры и информационное общество.
- •1.11. Польза и опасности компьютеризации.
- •1.12. Киберфобия.
- •1.13. Компьютеры и будущее
- •1.14. Понятие информационного моделирования.
- •2. Толковый словарик
-
Нахождение произведения
Похожим образом находится произведение нескольких различных элементов. Только начальное значение переменной, в которой будет храниться произведение, должно быть равно не нулю, а единице. И множители надо не прибавлять, а домножать:
program The_product_of_natural_numbers_from_1_to_5;
var p, i : integer;
begin
p := 1; { вначале произведение равно 1 }
For i := 1 to 5 do
begin
p := p * i { находим произведение }
end;
writeln (’Произведение чисел от 1 до 5 равно ’, p)
end.
Эта программа находит произведение первых пяти натуральных чисел. Измените эту программу так, чтобы она находила произведение первых 10 натуральных чисел и объясните причину полученного неправильного результата. Исправьте программу так, чтобы она давала правильный результат. А чему равно произведение чисел от -5 до 5? Почему?
-
Нахождение количества
Очень часто приходится решать задачу, в которой необходимо найти количество чисел, которые удовлетворяют некоторым условиям. Например, найти количество нечётных чисел в заданном интервале. Для решения этой задачи необходимо организовать цикл, в котором будут поочерёдно перебираться все значения из заданного интервала. В теле цикла надо будет проверять: удовлетворяет ли параметр цикла указанному условию? Если да, то это найденное значение надо посчитать, то есть увеличить счётчик найденных элементов на единицу (в самом начале этот счётчик должен быть равен нулю); если нет, то перейти к следующему элементу.
Применим всё вышесказанное к решению такой задачи: "Найти количество нечётных чисел из интервала от 30 до 50".
Для этого нам надо будет организовать цикл для переменной i, которая будет перебирать поочерёдно значения от 30 до 50. В теле цикла мы должны будем проверять: является ли i нечётным числом? Помните как это делать? Нужно сравнить остаток от деления i на 2 с нулём – чётные числа делятся на 2, нечётные нет. Для такой проверки надо использовать условный оператор if. Если i – число чётное, то этот остаток не равен нулю. В этом случае нужно увеличить счётчик на единицу, то есть посчитать найденное число. В конце программы выводим результат на экран.
Переведём теперь это всё с русского на язык паскаль:
program Skoko_nechetnyx_chisel_ot_30_do_50;
var k, i : integer;
begin
k := 0; { вначале счётчик равен 0 }
For i := 30 to 50 do
begin
if k mod 2 <> 0 { Если число не делится на 2, то оно нечётное … }
then k := k + 1 { … и его надо посчитать }
end;
writeln('В интервале от 30 до 50 ', k, ' нечётных чисел')
end.
Как вы уже заметили, цикл For используют тогда, когда заранее, перед началом его работы известно, сколько раз он должен выполниться. Однако, порой бывает необходимо организовать такой цикл, о котором заранее не будет известно, сколько раз его надо выполнять. Например, задача о нахождении суммы цифр данного числа N. Если мы не знаем, сколько в этом числе цифр, то не сможем решить эту задачу используя цикл For. Для таких целей используют цикл While – цикл пока.