Здесь показаны различия между двумя версиями данной страницы.
— |
for_loop [2019/06/24 20:29] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Циклический алгоритм ====== | ||
+ | ===== Решение задачи ===== | ||
+ | {{:gia:9.png|}} | ||
+ | Очевидно, что инструкция **s:=s+12** будет исполнена 11 раз,\\ | ||
+ | следовательно можно записать s:=s + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 + 12 = 12 * 11 = 132 | ||
+ | |||
+ | **Решение на языке javaScript:** | ||
+ | |||
+ | [[http://ideone.com/dBLvxU]] | ||
+ | |||
+ | **Решение на языке C++:** | ||
+ | |||
+ | http://ideone.com/4s3LSd | ||
+ | ===== Дополнительный материал ===== | ||
+ | |||
+ | ==== Исследование ==== | ||
+ | |||
+ | Исследуйте принцип "работы" циклического алгоритма, используя специальное приложение, позволяющее визуализировать скрытые изменения состояния переменных в процессе исполнения алгоритма. На языке питон для организации цикла удобно использовать оператор for и встроенную функцию range(11), позволяющую задавать числовую последовательность. Внимание! Указанный конец интервала не включается в список числовой последовательности, первый элемент числовой последовательности начинается с 0; вызов range(11) генерирует 11 значений - 0, 1, 2,...9, 10.\\ | ||
+ | Вариант указанной задачи на языке Python записан ниже.\\ | ||
+ | Скопируйте приведенный ниже код (# Python 2.5), откройте приложение:\\ | ||
+ | [[http://people.csail.mit.edu/pgbovine/python/tutor.html#mode=edit]]\\ | ||
+ | Замените код, размещенный в окне с надписью "Write your Python code here:", тем кодом, который хотите исследовать, нажмите на кнопку с надписью "Visualize execution", используйте клавиши со стрелками <- -> или кнопки с надписями "Forward", "Back" для пошагового воспроизведения инструкций программы. При смене инструкций меняются значения переменных, за которыми можно наблюдать на вкладке справа. | ||
+ | |||
+ | <code python> | ||
+ | # Python 2.5 | ||
+ | s = 0 | ||
+ | for k in range(11): | ||
+ | s=s+12 | ||
+ | print s | ||
+ | </code> | ||
+ | |||
+ | <code python> | ||
+ | # Python 3 | ||
+ | s = 0 | ||
+ | for k in range(11): | ||
+ | s=s+12 | ||
+ | print(s) | ||
+ | </code> | ||
+ | |||
+ | ==== Практическое задание ==== | ||
+ | Лучший способ научиться писать программы,- практиковаться в написании программ. Циклические алгоритмы - простой способ организации арифметической и геометрической прогрессий.\\ | ||
+ | * Составьте программу, распечатывающую (выводящую на экран) арифметическую прогрессию из десяти членов с шагом 3\\ | ||
+ | 3,6,9,12,... | ||
+ | * Составьте программу, распечатывающую (выводящую на экран) геометрическую прогрессию со знаменателем 2 из двенадцати членов\\ | ||
+ | 2, 4, 8,... | ||
+ | |||
+ | Используйте в качестве шаблона для выполнения задания задачу № 9, реализованную в инструментальной среде [[http://ideone.com/IPMmQ]]. |