Карточка 1 Карточка 2 Карточка 3 Карточка 4 Карточка 5
Карточка 6 Карточка 7 Карточка 8 Карточка 9 Карточка 10
Алгоритмы можно представлять как некоторые структуры, состоящие из отдельных базовых (т.е. основных) элементов. Естественно, что при таком подходе к алгоритмам изучение основных принципов их конструирования должно начинаться с изучения этих базовых элементов. Для их описания будем использовать язык схем алгоритмов и школьный алгоритмический язык.
Логическая структура любого алгоритма может быть представлена комбинацией трех базовых структур:
следование, ветвление, цикл.
Характерной особенностью базовых структур является наличие в них одного входа и одного выхода.
1. Базовая структура следование. Образуется из последовательности действий, следующих одно за другим:
Школьный алгоритмический язык |
Язык блок-схем |
действие 1 |
|
2. Базовая структура ветвление. Обеспечивает в зависимости от результата проверки условия (да или нет) выбор одного из альтернативных путей работы алгоритма. Каждый из путей ведет к общему выходу, так что работа алгоритма будет продолжаться независимо от того, какой путь будет выбран.
Структура ветвление существует в четырех основных вариантах:
Школьный алгоритмический язык |
Язык блок-схем |
1. если-то |
|
если условие
то действия
все
|
|
если условие
то действия 1
иначе действия 2
все
|
|
3. выбор |
|
выбор
при условие 1: действия 1
при условие 2: действия 2
. . . . . . . . . . . .
при условие N: действия N
все
|
|
4. выбор-иначе |
|
выбор
при условие 1: действия 1
при условие 2: действия 2
. . . . . . . . . . . .
при условие N: действия N
иначе действия N+1
все
|
|
Школьный алгоритмический язык |
Язык блок-схем |
если x > 0
то y := sin(x)
все
|
|
если a > b то a := 2*a; b := 1 иначе b := 2*b все
|
|
выбор
при n = 1: y := sin(x)
при n = 2: y := cos(x)
при n = 3: y := 0
все
|
|
выбор при a > 5: i := i+1 при a = 0: j := j+1 иначе i := 10; j:=0 все |
|
Составьте алгоритм решения задач разветвляющейся структуры:
а) определить, является ли треугольник с заданными сторонами a, b, c равнобедренным;
Решение:
алг Треугольник(арг вещ a,b,c, рез лог Otvet)
дано | a>0, b>0, c>0, a+b>c, a+c>b, b+c>a
надо | Otvet = да, если треугольник равнобедренный
| Otvet = нет, если треугольник не равнобедренный
нач
если (a=b) или (a=c) или (b=c)
то Otvet:= да
иначе Otvet:= нет
все
кон
Самостоятельное решение задач:
б) определить количество положительных чисел среди заданных чисел a, b и c;
в) меньшее из двух заданных неравных чисел увеличить вдвое, а большее оставить без изменения;
г) числа a и b — катеты одного прямоугольного треугольника, а c и d — другого; определить, являются ли эти треугольники подобными;
д) даны три точки на плоскости; определить, какая из них ближе к началу координат;
е) определить, принадлежит ли заданная точка (x,y) плоской фигуре, являющейся кольцом с центром в начале координат, с внутренним радиусом r1 и внешним радиусом r2;
ж) упорядочить по возрастанию последовательность трех чисел a, b и c.
Работа по индивидуальным карточкам
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х.
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х.
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х.
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х.
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х.
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х.
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х.
Операторы условного перехода
По представленной блок-схеме составьте программу вычисления функции у при заданном с клавиатуры значении х.
Определите, лежит ли данная точка на одной из сторон треугольника, заданного координатами его вершин.
Треугольник задан величинами своих углов ( в градусах) и радиусом описанной окружности. Вычислите стороны треугольника.
Два прямоугольника заданы длинами сторон. Определите, можно ли первый треугольник целиком разместить во втором.
Определите, пройдет ли кирпич с ребрами а, в и с в прямоугольное отверстие со сторонами а и в.
Станции А, В и С расположены на n-ном, m-ном, k-том километрах железной дороги. Какие из этих станций расположены наиболее близко друг к другу?