ИНФОРМАТИКА · 9 КЛАСС
Строки и алгоритмы · Интерактивный конспект

§ 6. Основные алгоритмические конструкции и типы данных

Повторим выполнение алгоритмов, выбор типов и работу подпрограмм.

Попробовать на модели ↓
Разбираемся в теме

Основные пункты параграфа

1

Последовательность и ветвление

Порядок команд и условия определяют ход вычислений.

НАБЛЮДАЙТЕ И ПРОБУЙТЕ

Последовательность и ветвление

Изменяйте параметры, наблюдайте результат и проверяйте объяснение. Сброс возвращает исходный опыт.

Присваивание заменяет значение переменной. В x := x + 1 справа используется старое x, затем результат записывается слева. Команды выполняются последовательно, если конструкция управления не задаёт другой порядок. Для обмена значениями двух переменных нужна временная переменная либо специальная операция обмена.

В if условие имеет тип boolean. При true выполняется ветвь then, при false — else, если она есть. Несколько команд одной ветви объединяют begin и end. Перед else точку с запятой не ставят. Проверяйте равенство границе отдельно: x > 0 не включает нуль.

var x, y, t: integer;
begin
  x := 3; y := 8;
  t := x;
  x := y;
  y := t;
  writeln(x, ' ', y);  // 8 3
end.
Главная мысль: Порядок команд и условия определяют ход вычислений.
2

Циклы и трассировка

Таблица значений помогает проверить начало, повторение и выход из цикла.

НАБЛЮДАЙТЕ И ПРОБУЙТЕ

Циклы и трассировка

Изменяйте параметры, наблюдайте результат и проверяйте объяснение. Сброс возвращает исходный опыт.

Цикл while сначала проверяет условие, поэтому его тело может не выполниться ни разу. В теле должно происходить изменение, которое позволяет условию когда-нибудь стать ложным. Цикл for удобен для заранее известного числа повторений: for i := 1 to n do выполняет тело n раз при положительном n.

Трассировка — последовательная запись значений после команд. Для s := 0; затем for i := 1 to 4 do s := s + i значения суммы: 1, 3, 6, 10. Начальное значение тоже важно: случайное старое значение s испортит результат.

Главная мысль: Таблица значений помогает проверить начало, повторение и выход из цикла.
3

Типы и операции

Тип задаёт допустимые значения и операции над ними.

НАБЛЮДАЙТЕ И ПРОБУЙТЕ

Типы и операции

Изменяйте параметры, наблюдайте результат и проверяйте объяснение. Сброс возвращает исходный опыт.

Целые числа нужны для счётчиков и количества предметов, вещественные — для дробных величин, boolean — для логических значений, char — для одного кодового элемента символа. В PascalABC.NET byte хранит целые от 0 до 255, integer — 32-битные знаковые целые. Результат за пределами типа нельзя считать правильным без проверки переполнения.

Оператор / выполняет обычное деление и при целых операндах. Операторы div и mod применяют к целым: 17 div 5 = 3, 17 mod 5 = 2. Делитель не должен быть нулём. Для положительных целых a = (a div b) · b + a mod b. Вещественные вычисления могут содержать погрешность округления; явное преобразование trunc отбрасывает дробную часть.

ОперацияПримерРезультат
Обычное деление5 / 22,5
Целочисленное частное5 div 22
Остаток5 mod 21
Отбрасывание дробной частиTrunc(2.9)2
Главная мысль: Тип задаёт допустимые значения и операции над ними.
4

Процедуры и функции

Подпрограмма выделяет законченное действие, а параметры передают исходные данные.

НАБЛЮДАЙТЕ И ПРОБУЙТЕ

Процедуры и функции

Изменяйте параметры, наблюдайте результат и проверяйте объяснение. Сброс возвращает исходный опыт.

Функция возвращает значение, которое можно использовать в выражении. Процедура выполняет действие и не возвращает значение таким способом. Параметры позволяют применять одну подпрограмму к разным данным. Локальные переменные относятся к конкретному вызову; одинаковое имя в разных областях видимости не означает одну ячейку памяти.

function Square(x: real): real;
begin
  Result := x * x;
end;

Вызов Square(3) возвращает 9. Проверять нужно не только обычный случай, но и нуль, отрицательное значение, границы допустимых данных. У случайного выбора из двух вариантов равные вероятности не означают строго равные количества результатов в небольшом опыте.

Главная мысль: Подпрограмма выделяет законченное действие, а параметры передают исходные данные.
Интерактивная практика

Исследуйте и примените

Проверьте модель на нескольких наборах данных, затем выполните самостоятельное задание.

НАБЛЮДАЙТЕ И ПРОБУЙТЕ

Лаборатория: исследуйте свой вариант

Изменяйте параметры, наблюдайте результат и проверяйте объяснение. Сброс возвращает исходный опыт.

Соберём главное

Шесть выводов

01

Порядок команд и условия определяют ход вычислений.

02

Таблица значений помогает проверить начало, повторение и выход из цикла.

03

Тип задаёт допустимые значения и операции над ними.

04

Подпрограмма выделяет законченное действие, а параметры передают исходные данные.

05

Инициализируйте переменные перед накоплением результата.

06

Проверяйте крайние случаи, деление на нуль и диапазон выбранного типа.

Самопроверка

Тест: 10 вопросов

Один верный ответ. За ответ — 0,5 балла. Откройте и проверьте себя.

1. Что делает x := x + 1?

2. Каков тип условия if?

3. Сколько повторений while при ложном начальном условии?

4. Какова сумма от 1 до 4?

5. Чему равно 17 div 5?

6. Чему равно 17 mod 5?

7. Допустимо ли / для целых операндов?

8. Какое значение помещается в byte?

9. Что возвращает Square(−3)?

10. Что отличает функцию?

ВыводыТестВ началоВсе параграфы
↑

Загрузка прогресса…