МОУ СОШ №124 Чушкин Александр Анатольевич Программирование циклов
Cлайд 2
Программирование циклов Вопросы: Этапы решения расчетной задачи на компьютере. Программирование цикла на Паскале: Задача о перестановке букв. Отладка и тестирование программы. Конспект Домашнее задание.
Cлайд 3
Этапы решения расчетной задачи на компьютере. Постановка задачи. Математическое формализация. Построение алгоритма. Составление программы на языке программирования. Отладка и тестирование программы. Проведение расчетов и анализ полученных результатов.
Cлайд 4
Технология решения задачи на компьютере. 1 этап Что дано и что требуется найти 2 этап Математическая формализация: задача переводится на язык математических формул, уравнений, отношений 3 этап : Построение алгоритма
Cлайд 5
Программирование цикла на Паскале. Задача о перестановке букв. Постановка задачи: Дано N кубиков, На которых написаны буквы. Сколько различных N-буквенных слов можно составить из этих кубиков? Дано : N Найти : F
Cлайд 6
Программирование цикла на Паскале. 2. Математическая формализация. Получим математическую формулу: И К ИК КИ (2 слова) И К С ИКС КИС ИСК СКИ КСИ СИК (6 слов) И К С А ИКСА КИСА ИСКА СКИА КСИА СИКА… (24 слова) И К С А у ИКСАУ КИСАУ ИСКАУ СКИАУ … (120 слов)
Cлайд 7
Программирование цикла на Паскале. Подобные задачи решает раздел математики, которые называются комбинаторикой. И К ИК КИ (2 слова) И К С ИКС КИС ИСК СКИ КСИ СИК (6 слов) И К С А ИКСА КИСА ИСКА СКИА КСИА СИКА… (24 слова) И К С А у ИКСАУ КИСАУ ИСКАУ СКИАУ … (120 слов)
Cлайд 8
Комбинаторика Количество различных комбинаций из N предметов, получаемых из изменением их порядка, называется числом перестановок. Это число выражается функцией от N, которая называется факториалом и записывается так: N! (Читается N факториал)
Cлайд 9
Для любого натурального N значение N! Вычисляется как произведение последовательности натуральных чисел от 1 до N. Например: И К ИК КИ (2 слова) 2!=1*2=2 И К С ИКС КИС …. (6 слов) 3!=1*2*3=6 И К С А ИКСА СИКА… (24 слова) 4!=1*2*3*4=24 И К С А у ИКСАУ СКИАУ … (120 слов) 5!=1*2*3*4*5=120 И И (1слово) 1!= 1
Cлайд 10
Программирование цикла на Паскале. Дано N кубиков, На которых написаны буквы. Сколько различных N-буквенных слов можно составить из этих кубиков? N – количество букв F- количество слов из этих букв Расчетная формула: F= N!=1*2*3*…..*N
Cлайд 11
Программирование цикла на Паскале 3. Построение алгоритмов. Цикл- это команда исполнителю многократно повторить указанную команду. Цикл с предусловием
Cлайд 12
Блок-схема алгоритма вычисление факториала начало Ввод N F:=1 R:=1 R ≤ N F:=F*R R:=R+1 Вывод F Конец N - количество букв Условие цикла - это отношение R≤N (R меньше или равно N) R –множитель , значение которого меняется от 1 до N (счетчик) Произведение накапливается в переменной F, начальная значение равна 1 Цикл заканчивается, когда R=N+1
Cлайд 13
Для проверки правильности алгоритма построим трассировочную таблицу (для случая N = 3):
Cлайд 14
Программирование цикла на Паскале. 4. Составление программы. Цикл с предусловием (цикл-пока): While do < оператор>; Служебное слово While означает «пока», do- «делать». Оператор , стоящий после слова do, называется телом цикла (может быть простым и составным оператором).
Cлайд 15
Напишем программу: Program Words; var F, N, R: integer; begin write('Введите число букв'); readln(N); F:=1; R:=1; while R
Cлайд 16
Программирование цикла на Паскале 5. Отладка и тестирование. Проверка на компьютере правильности алгоритма производится с помощью тестов. Под отладкой программы понимаются процесс испытания работы программы и исправления обнаруженных при этом ошибок Тест- это конкретный вариант значений исходных данных, для которого известен ожидаемы результат.
Cлайд 17
Программирование цикла на Паскале 6. Проведение расчетов и анализ полученных результатов- этот этап технологической цепочки реализуется при разработки практически полезных программ. пример: Расчет погоды, анализ рынка, скорость движение ракеты….
Cлайд 18
Вопросы и задания 1. Как блок-схемой и на алгоритмическом языке представляется команда цикла с предусловием? 2. Как программируется цикл с предусловием на Паскале? 3. Почему алгоритм вычисления N1 должен быть циклическим? 4. Из каких этапов состоит работа программиста по решению задачи на компьютере? 5. Что такое математическая формализация задачи? 6. Что такое отладка программы? Что называется тестом? 7. Составьте алгоритм вычисления суммы всех натуральных чисел, не превышающих заданного натурального числа N. Проверьте алгоритм трассировкой. Напишите программу на Паскале. 8. Дано целое число X и натуральное N. Составьте алгоритм вычисления XN. Проверьте алгоритм трассировкой. Напишите программу на Паскале.