Flowgorithm 2015
Содержание Типы данных Служебные слова, применяемые в выражениях и функциях Пример декларирования переменных в программе Flowgorithm Пример декларирования переменных в программе Flowgorithm Операции Еще пара полезных операций Операции и их приоритеты Зарезервированные константы Математические функции Функции для обработки строк Функции преобразования типов И еще пара полезных функций… Операторы Графическое представление операторов Характеристика функции Задачи (стартовый 1 уровень) Ч.1. Задачи (стартовый 1 уровень) Ч.2 Задачи (стартовый 1 уровень) Ч.3 Задача 2.1. «Незнайка на Луне»(+5) Задача 2.2. Игра «Кубики» (+10) Задача 2.3. «Супермуха» (+15) Задача 2.4. Сортировка методом «Всплывающего пузырька». Задача 3.1. Игра «Жизнь» (+25)
Типы данных
Служебные слова, применяемые в выражениях и функциях В выражениях: В функциях:
Пример декларирования (описания) переменных
Операции
Еще пара полезных операций
Операции и их приоритеты
Зарезервированные константы
Математические функции
Функции для обработки строк
Функции преобразования типов
И еще пара полезных функций…
Операторы Assignment Call Comment Declare Do For If Input Output While Выражение (Задача) Вызов процедуры Комментарий Описание переменных Цикл с постусловием Цикл с параметром Условие Оператор ввода Оператор вывода Цикл с предусловием
Графическое представление операторов в приложении
Характеристика функции
Задачи (стартовый 1 уровень) Ч Разработка линейного алгоритма в Flowgorithm (Простейшие действия) (+1) 1.2. Условный оператор. Задача определения большего из двух чисел (+2) 1.3. Определение по координатам точки соответствующего квадранта плоскости (+3) 1.4d. «Мишень». Определение попадания точки с координатами x и y в круг с координатами xo, yo и радиусом r. (+4) 1.5. Задача «Поезд» (Массив). Исходные данные: количество вагонов и пассажиров в каждом вагоне. Результат: Общее кол- во пассажиров, номер вагона с наибольшим и наименьшим кол- вом пассажиров. (+4) 1.6. Задача «Счастливое число». 6 элементов массива содержать случайные цифры от 0 до 9. Если сумма первых трех цифр равна сумме второй тройки, то билет можно съесть (+4).
Задачи (стартовый 1 уровень) Ч.2 1.7*. Объявлены две числовые переменные a и b. Необходимо сделать так, чтобы без объявления других переменных в результате работы алгоритма значения переменных поменялись местами. Например, если изначально a = 4,b = 5, то в результате алгоритма стало a = 5, b = 4. Применять можно только операции присваивания и арифметические операции с числами и значениями переменных. (+5) 1.8. Реверсы: Входной величиной является 4-хзначное целое число (например, 1234). Результат: (+5) Входной величиной является строка (слово), например: ГОРОД. Результат: ДОРОГ (+5)
Задачи (стартовый 1 уровень) Ч Алгоритм Евклида нахождения наибольшего общего делителя (НОД) двух целых чисел (+5): 1. Рассмотреть А как первое число и В как второе число. Перейти к п Сравнить первое и второе число. Если они равны, то перейти к п.5. Если нет, то перейти к п Если первое число меньше второго, то переставить их местами. Перейти к п Вычесть из первого числа второе и рассмотреть полученную разность как новое первое число. Перейти к п Рассмотреть первое число как результат! Стоп.
Представление алгоритма Евклида в виде Д-схемы
Задача 2.1. «Незнайка на Луне» (+5) Задача «Незнайка на Луне» (решение с использованием функции). Известны радиусы трех сфер. Необходимо найти объемы «воздуха» и «лунной почвы», а также соотношение этих объемов (+5b). r1 r3 r2 V
Задача 2.2. Игра «Кубики» (+10) Игра с кубиками (с использованием функций) Игроки (человек и компьютер) поочередно бросают два кубика (сет). В зависимости от суммы выпавших цифр, победа присуждается тому, у кого сумма больше. Если на обоих кубиках выпадает одинаковая цифра, то «бинго» (+10). Общее количество побед - есть сумма побед в каждом «сете».
Задача 2.3. «Супермуха» (+15) Источник: Ламуатье Ж. Упражнения по программированию на Фортране IV, М.: Мир, Два города А и В удалены на расстояние d=600 км. Одновременно из каждого города отходят поезда в направлении друг к другу. Поезд, вышедший из города А имеет скорость v1=40 км/ч, а из В – скорость v2=60 км/ч. Одновременно из пункта А вылетает чрезвычайно быстрая муха со скоростью v=200 км/ч и летит навстречу поезду, вышедшему из пункта В. При встрече с ним муха делает поворот и летит обратно навстречу с поездом, идущим из А. Когда муха его встретит, она снова сменит направление и помчится навстречу поезду из В. Так будет продолжается до тех пор, пока поезда не встретятся. Нужно определить длину различных отрезков пути, которые пролетит муха и общее расстояние, которое преодолеет муха до момента встречи поездов. Есть очень короткое и изящное решение… Но лучше пока сконцентрироваться на разработке математической модели, а затем алгоритма и его реализации в программе Flowgorithm.
Задача 2.4. Сортировка методом «Всплывающего пузырька» (+15) Задача сортировки методом всплывающего пузырька
Задача 3.1. Игра «Жизнь» (+25) Игра Life ( Правила: 1. Организм выживает, если имеет 2 или 3 соседей и умирает в противоположном случае; 2. новый организм рождается, если число соседей равно 3.