KNOWLEDGE HYPERMARKET


Циклические алгоритмы
 
(6 промежуточных версий не показаны.)
Строка 1: Строка 1:
 +
<metakeywords>Информатика, класc, урок, на тему, 9 класc, Циклические алгоритмы, Блок–схеми, компьютер, исполнитель, алгоритм, программы</metakeywords>
 +
'''[[Гипермаркет знаний - первый в мире!|Гипермаркет знаний]]&gt;&gt;[[Информатика|Информатика]]&gt;&gt;[[Информатика 9 класс|Информатика 9 класс]]&gt;&gt;Информатика: Циклические алгоритмы'''  
'''[[Гипермаркет знаний - первый в мире!|Гипермаркет знаний]]&gt;&gt;[[Информатика|Информатика]]&gt;&gt;[[Информатика 9 класс|Информатика 9 класс]]&gt;&gt;Информатика: Циклические алгоритмы'''  
-
<br>  
+
<br> <br>  
-
<metakeywords>Информатика, класc, урок, на тему, 9 класc, Циклические алгоритмы.</metakeywords>ЦИКЛИЧЕСКИЕ АЛГОРИТМЫ
+
'''§ 30. Циклические алгоритмы'''<br>  
-
<br>
 
-
<u>§ 30. Циклические алгоритмы</u><br>
 
Основные темы параграфа: <br>  
Основные темы параграфа: <br>  
-
♦ команда цикла; <br>♦ цикл в процедуре;<br>♦ блок-схемы алгоритмов; <br>♦ цикл с предусловием.<br>  
+
♦ команда цикла; <br>♦ цикл в процедуре;<br>♦ '''[[Цикли. Блок–схеми алгоритмів з циклами|блок-схемы]]''' алгоритмов; <br>♦ цикл с предусловием.<br>  
 +
 
 +
 
-
''Команда цикла''<br>  
+
'''Команда цикла'''<br>  
Обсудим решение следующей задачи.<br>  
Обсудим решение следующей задачи.<br>  
Строка 19: Строка 21:
Задача 3. Исходное положение: ГРИС — у левого края поля, направление — на восток. Требуется нарисовать горизонтальную линию через весь экран.<br>  
Задача 3. Исходное положение: ГРИС — у левого края поля, направление — на восток. Требуется нарисовать горизонтальную линию через весь экран.<br>  
-
Задачу можно решить, написав 15 раз команду шаг (если поперек поля рисунка 15 шагов). Но есть и более короткий вариант программы. Вот он:<br>  
+
Задачу можно решить, написав 15 раз команду шаг (если поперек поля рисунка 15 шагов). Но есть и более короткий вариант [http://xvatit.com/it/fishki-ot-itshki/ '''программы''']. Вот он:<br>  
пока впереди не край, повторять<br>нц<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; шаг<br>кц<br>  
пока впереди не край, повторять<br>нц<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; шаг<br>кц<br>  
Строка 25: Строка 27:
Здесь использована команда, которая называется циклон. Формат команды цикла следующий:<br>  
Здесь использована команда, которая называется циклон. Формат команды цикла следующий:<br>  
-
пока &lt;условие&gt;, повторять<br>нц<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &lt;тело цикла&gt;<br>кц<br>  
+
пока &lt;условие&gt;, повторять<br>нц<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; &lt;тело цикла&gt;<br>кц<br>  
Служебное слово нц обозначает начало цикла, кц — конец цикла.<br>  
Служебное слово нц обозначает начало цикла, кц — конец цикла.<br>  
-
Это первая команда из СКИ, которая использует обратную связь между графическим исполнителем и управляющим им компьютером. Она заключается в том, что проверяется, не вышел ли ГРИС на край поля и не грозит ли ему следующий шаг или прыжок в этом направлении аварией. Проверяемые условия звучат так: «впереди край?» или «впереди не край?». На что машина получает от исполнителя ответ «да» или «нет».<br>  
+
Это первая команда из СКИ, которая использует обратную связь между графическим исполнителем и управляющим им '''[[Основные характеристики персонального компьютера|компьютером]]'''. Она заключается в том, что проверяется, не вышел ли ГРИС на край поля и не грозит ли ему следующий шаг или прыжок в этом направлении аварией. Проверяемые условия звучат так: «впереди край?» или «впереди не край?». На что машина получает от исполнителя ответ «да» или «нет».<br>  
В приведенном примере проверяется условие «впереди не край?». Если «да», то делается шаг (т. е. выполняется &lt;тело цикла&gt;). Затем происходит возврат на проверку условия, и все повторяется. Если проверка условия дает отрицательный результат (т. е. впереди край), то выполнение цикла завершается и исполняется следующая команда программы.<br>  
В приведенном примере проверяется условие «впереди не край?». Если «да», то делается шаг (т. е. выполняется &lt;тело цикла&gt;). Затем происходит возврат на проверку условия, и все повторяется. Если проверка условия дает отрицательный результат (т. е. впереди край), то выполнение цикла завершается и исполняется следующая команда программы.<br>  
-
При программировании цикла важно думать о том, чтобы цикл был конечным. Цикл, записанный выше, — конечный. Двигаясь в одном направлении, исполнитель обязательно достигнет края, и на этом выполнение цикла закончится.<br>  
+
При программировании цикла важно думать о том, чтобы цикл был конечным. Цикл, записанный выше, — конечный. Двигаясь в одном направлении, '''[[Графический учебный исполнитель|исполнитель]]''' обязательно достигнет края, и на этом выполнение цикла закончится.<br>  
Ситуация, при которой выполнение цикла никогда не заканчивается, называется зацикливанием. Пусть ГРИС находится в середине поля. Исполнение следующего цикла:<br>  
Ситуация, при которой выполнение цикла никогда не заканчивается, называется зацикливанием. Пусть ГРИС находится в середине поля. Исполнение следующего цикла:<br>  
-
пока впереди не край, повторять <br>нц<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; шаг<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; поворот<br>кц<br>  
+
пока впереди не край, повторять <br>нц<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; шаг<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; поворот<br>кц<br>  
никогда не закончится. ГРИС будет бесконечно рисовать квадратик, так как проверка условия «впереди не край?» всегда будет давать положительный ответ.<br>  
никогда не закончится. ГРИС будет бесконечно рисовать квадратик, так как проверка условия «впереди не край?» всегда будет давать положительный ответ.<br>  
-
''Цикл в процедуре''<br>
 
-
Задача 4. Теперь составим программу, по которой графический исполнитель нарисует прямоугольную рамку по краю поля (рис. 5.7). Исходное положение: ГРИС находится в левом верхнем углу, смотрит на юг.<br>
 
-
[[Image:Informatika_9_174z.jpg]]<br>  
+
'''Цикл в процедуре'''<br>
 +
 
 +
Задача 4. Теперь составим '''[[О системном ПО и системах программирования|программу]]''', по которой графический исполнитель нарисует прямоугольную рамку по краю поля (рис. 5.7). Исходное положение: ГРИС находится в левом верхнем углу, смотрит на юг.<br>
 +
 
 +
[[Image:Informatika 9 174w.jpg|240px|Результат выполнения программы "Рамка"]]<br>  
Рамка состоит из четырех линий, поэтому разумно воспользоваться процедурой, проводящей линию от края до края поля. Опять будем действовать методом последовательной детализации. Напишем сначала основную программу.<br>  
Рамка состоит из четырех линий, поэтому разумно воспользоваться процедурой, проводящей линию от края до края поля. Опять будем действовать методом последовательной детализации. Напишем сначала основную программу.<br>  
Строка 57: Строка 61:
При составлении этой программы использовалась одношаговая детализация в такой последовательности:  
При составлении этой программы использовалась одношаговая детализация в такой последовательности:  
-
[[Image:Informatika 9 175q.jpg]]<br>  
+
[[Image:Informatika 9 175q.jpg|360px|Одношаговая детализация]]<br>  
-
''Блок-схемы алгоритмов''
 
-
Начиная с 50-х годов прошлого века, т. е. еще с эпохи ЭВМ первого поколения, программисты стали использовать графические схемы, изображающие алгоритмы, которые получили название блок-схем.  
+
'''Блок-схемы алгоритмов'''
 +
 
 +
Начиная с 50-х годов прошлого века, т. е. еще с эпохи ЭВМ первого поколения, программисты стали использовать графические схемы, изображающие '''[[Вспомогательные алгоритмы и подпрограммы|алгоритмы]]''', которые получили название блок-схем.  
Блок-схема состоит из фигур (блоков), обозначающих указания на отдельные действия исполнителя, и стрелок, соединяющих эти блоки и указывающих на последовательность их выполнения. Внутри каждого блока записывается выполняемое действие. Сама форма блока подсказывает характер операции, которую он обозначает. Для придания наглядности и единообразия схемам алгоритмов все графические элементы стандартизированы.  
Блок-схема состоит из фигур (блоков), обозначающих указания на отдельные действия исполнителя, и стрелок, соединяющих эти блоки и указывающих на последовательность их выполнения. Внутри каждого блока записывается выполняемое действие. Сама форма блока подсказывает характер операции, которую он обозначает. Для придания наглядности и единообразия схемам алгоритмов все графические элементы стандартизированы.  
Строка 67: Строка 72:
Посмотрите на рис. 5.8, где показана блок-схема алгоритма рисования рамки. Она состоит из двух частей: блок-схемы основного алгоритма и блок-схемы вспомогательного алгоритма ЛИНИЯ.  
Посмотрите на рис. 5.8, где показана блок-схема алгоритма рисования рамки. Она состоит из двух частей: блок-схемы основного алгоритма и блок-схемы вспомогательного алгоритма ЛИНИЯ.  
-
[[Image:Informatika 9 175.2q.jpg]]<br>  
+
[[Image:Informatika 9 175.2q.jpg|420px|блок-схема алгоритма "Рамка"]]<br>  
Из этих схем видно назначение блоков различной формы (рис. 5.9).  
Из этих схем видно назначение блоков различной формы (рис. 5.9).  
-
[[Image:Informatika 9 176.jpg]]  
+
[[Image:Informatika 9 176s.jpg|420px|Элементы блок-схем и структура "цикла"]]<br>
-
''Цикл с предусловием''  
+
 
 +
'''Цикл с предусловием'''  
Команда цикла изображается не отдельным блоком, а целой структурой, показанной на рис. 5.9. Такую структуру называют циклом с предусловием (так как условие предшествует телу цикла). Есть и другой вариант названия: цикл-пока (пока условие истинно, повторяется выполнение тела цикла).  
Команда цикла изображается не отдельным блоком, а целой структурой, показанной на рис. 5.9. Такую структуру называют циклом с предусловием (так как условие предшествует телу цикла). Есть и другой вариант названия: цикл-пока (пока условие истинно, повторяется выполнение тела цикла).  
Строка 81: Строка 87:
Задача 5. Требуется расчертить экран горизонтальными линиями (рис. 5.10). Исходное состояние исполнителя: верхний левый угол, направление — на юг.  
Задача 5. Требуется расчертить экран горизонтальными линиями (рис. 5.10). Исходное состояние исполнителя: верхний левый угол, направление — на юг.  
-
[[Image:Informatika 9 176.2.jpg]]  
+
[[Image:Informatika 9 176.2.jpg|240px|Разлиновка]]  
В программе для решения этой задачи используется та же процедура ЛИНИЯ. Другая процедура – ВОЗВРАТ – возвращает&nbsp; ГРИС к исходному положению для рисования следующей линии.  
В программе для решения этой задачи используется та же процедура ЛИНИЯ. Другая процедура – ВОЗВРАТ – возвращает&nbsp; ГРИС к исходному положению для рисования следующей линии.  
-
[[Image:Informatika 9 177.jpg]]  
+
[[Image:Informatika 9 177t.jpg|420px|Программа]]<br>
Блок-схемы основного и вспомогательного алгоритмов представлены на рис. 5.11.  
Блок-схемы основного и вспомогательного алгоритмов представлены на рис. 5.11.  
-
[[Image:Informatika 9 177.2.jpg]]  
+
[[Image:Informatika 9 177.2r.jpg|420px|Блок-схема алгоритма "Разлиновка"]]<br>
-
<u>''Коротко о главном''</u>
+
<u</u>
 +
 
 +
'''Коротко о главном'''
Для программирования повторяющихся действий применяется команда цикла, которая имеет следующую структуру:  
Для программирования повторяющихся действий применяется команда цикла, которая имеет следующую структуру:  
Строка 105: Строка 113:
Блок-схема — это графический способ описания алгоритма, Блоки обозначают действия исполнителя, а соединяющие их стрелки указывают на последовательность выполнения действий.  
Блок-схема — это графический способ описания алгоритма, Блоки обозначают действия исполнителя, а соединяющие их стрелки указывают на последовательность выполнения действий.  
-
<u>''Вопросы и задания''</u>
 
-
1. Что такое цикл? Как записывается команда цикла?<br>2. Что такое условие цикла? Что такое тело цикла?<br>3. В каком случае происходит зацикливание алгоритма?<br>4. Что такое блок-схема?<br>5. Из каких блоков составляются блок-схемы (как они изображаются и что обозначают)?<br>6. Что обозначают стрелки на блок-схемах?<br>7. Составьте программу, переводящую ГРИС в угол поля из любого исходного состояния.<br>8. Составьте программу рисования прямоугольной рамки вдоль края поля, начиная рисование из любого начального состояния исполнителя.<br><br>''И. Семакин, Л. Залогова, С. Русаков, Л. Шестакова, Информатика, 9 класс<br>Отослано читателями из интернет-сайтов''  
+
 
 +
'''Вопросы и задания'''
 +
 
 +
''1. Что такое цикл? Как записывается команда цикла?<br>2. Что такое условие цикла? Что такое тело цикла?<br>3. В каком случае происходит зацикливание алгоритма?<br>4. Что такое блок-схема?<br>5. Из каких блоков составляются блок-схемы (как они изображаются и что обозначают)?<br>6. Что обозначают стрелки на блок-схемах?<br>7. Составьте программу, переводящую ГРИС в угол поля из любого исходного состояния.<br>8. Составьте программу рисования прямоугольной рамки вдоль края поля, начиная рисование из любого начального состояния исполнителя.''
 +
 
 +
<br><br>''И. Семакин, Л. Залогова, С. Русаков, Л. Шестакова, Информатика, 9 класс<br>Отослано читателями из интернет-сайтов''  
<br>  
<br>  
-
<sub>Подготовка к урокам и все это бесплатно, скачать или готовиться онлайн, скачать конспекты информатики, лекции уроков, бесплатные учебники, готовое домашнее задание по информатике 9 класс</sub>  
+
<sub>Подготовка к урокам и все это бесплатно, скачать или готовиться онлайн, скачать конспекты [[Інформатика|информатики]], [[Гипермаркет знаний - первый в мире!|лекции уроков]], бесплатные учебники, готовое домашнее задание [[Информатика 9 класс|по информатике 9 класс]]</sub>  
<br>  
<br>  
  '''<u>Содержание урока</u>'''
  '''<u>Содержание урока</u>'''
-
  '''[[Image:1236084776 kr.jpg|10x10px]] конспект урока                      '''
+
  '''[[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] конспект урока                      '''
-
  [[Image:1236084776 kr.jpg|10x10px]] опорный каркас   
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] опорный каркас   
-
  [[Image:1236084776 kr.jpg|10x10px]] презентация урока
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] презентация урока
-
  [[Image:1236084776 kr.jpg|10x10px]] акселеративные методы  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] акселеративные методы  
-
  [[Image:1236084776 kr.jpg|10x10px]] интерактивные технологии  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] интерактивные технологии  
   
   
  '''<u>Практика</u>'''
  '''<u>Практика</u>'''
-
  [[Image:1236084776 kr.jpg|10x10px]] задачи и упражнения  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] задачи и упражнения  
-
  [[Image:1236084776 kr.jpg|10x10px]] самопроверка
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] самопроверка
-
  [[Image:1236084776 kr.jpg|10x10px]] практикумы, тренинги, кейсы, квесты
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] практикумы, тренинги, кейсы, квесты
-
  [[Image:1236084776 kr.jpg|10x10px]] домашние задания
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] домашние задания
-
  [[Image:1236084776 kr.jpg|10x10px]] дискуссионные вопросы
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] дискуссионные вопросы
-
  [[Image:1236084776 kr.jpg|10x10px]] риторические вопросы от учеников
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] риторические вопросы от учеников
-
 
+
  '''<u>Иллюстрации</u>'''
  '''<u>Иллюстрации</u>'''
-
  '''[[Image:1236084776 kr.jpg|10x10px]] аудио-, видеоклипы и мультимедиа '''
+
  '''[[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] аудио-, видеоклипы и мультимедиа '''
-
  [[Image:1236084776 kr.jpg|10x10px]] фотографии, картинки  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] фотографии, картинки  
-
  [[Image:1236084776 kr.jpg|10x10px]] графики, таблицы, схемы
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] графики, таблицы, схемы
-
  [[Image:1236084776 kr.jpg|10x10px]] юмор, анекдоты, приколы, комиксы
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] юмор, анекдоты, приколы, комиксы
-
  [[Image:1236084776 kr.jpg|10x10px]] притчи, поговорки, кроссворды, цитаты
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] притчи, поговорки, кроссворды, цитаты
   
   
  '''<u>Дополнения</u>'''
  '''<u>Дополнения</u>'''
-
  '''[[Image:1236084776 kr.jpg|10x10px]] рефераты'''
+
  '''[[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] рефераты'''
-
  [[Image:1236084776 kr.jpg|10x10px]] статьи  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] статьи  
-
  [[Image:1236084776 kr.jpg|10x10px]] фишки для любознательных  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] фишки для любознательных  
-
  [[Image:1236084776 kr.jpg|10x10px]] шпаргалки  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] шпаргалки  
-
  [[Image:1236084776 kr.jpg|10x10px]] учебники основные и дополнительные
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] учебники основные и дополнительные
-
  [[Image:1236084776 kr.jpg|10x10px]] словарь терминов                           
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] словарь терминов                           
-
  [[Image:1236084776 kr.jpg|10x10px]] прочие  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] прочие  
   
   
  <u>Совершенствование учебников и уроков
  <u>Совершенствование учебников и уроков
-
  </u>'''[[Image:1236084776 kr.jpg|10x10px]] исправление ошибок в учебнике'''
+
  </u>'''[[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] исправление ошибок в учебнике'''
-
  [[Image:1236084776 kr.jpg|10x10px]] обновление фрагмента в учебнике  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] обновление фрагмента в учебнике  
-
  [[Image:1236084776 kr.jpg|10x10px]] элементы новаторства на уроке  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] элементы новаторства на уроке  
-
  [[Image:1236084776 kr.jpg|10x10px]] замена устаревших знаний новыми  
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] замена устаревших знаний новыми  
-
 
+
  '''<u>Только для учителей</u>'''
  '''<u>Только для учителей</u>'''
-
  '''[[Image:1236084776 kr.jpg|10x10px]] идеальные уроки '''
+
  '''[[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] идеальные уроки '''
-
  [[Image:1236084776 kr.jpg|10x10px]] календарный план на год   
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] календарный план на год   
-
  [[Image:1236084776 kr.jpg|10x10px]] методические рекомендации   
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] методические рекомендации   
-
  [[Image:1236084776 kr.jpg|10x10px]] программы
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] программы
-
  [[Image:1236084776 kr.jpg|10x10px]] обсуждения
+
  [[Image:1236084776 kr.jpg|10x10px|1236084776 kr.jpg]] обсуждения
   
   
   
   

Текущая версия на 14:55, 3 июля 2012

Гипермаркет знаний>>Информатика>>Информатика 9 класс>>Информатика: Циклические алгоритмы



§ 30. Циклические алгоритмы


Основные темы параграфа:

♦ команда цикла;
♦ цикл в процедуре;
блок-схемы алгоритмов;
♦ цикл с предусловием.


Команда цикла

Обсудим решение следующей задачи.

Задача 3. Исходное положение: ГРИС — у левого края поля, направление — на восток. Требуется нарисовать горизонтальную линию через весь экран.

Задачу можно решить, написав 15 раз команду шаг (если поперек поля рисунка 15 шагов). Но есть и более короткий вариант программы. Вот он:

пока впереди не край, повторять
нц
         шаг
кц

Здесь использована команда, которая называется циклон. Формат команды цикла следующий:

пока <условие>, повторять
нц
                <тело цикла>
кц

Служебное слово нц обозначает начало цикла, кц — конец цикла.

Это первая команда из СКИ, которая использует обратную связь между графическим исполнителем и управляющим им компьютером. Она заключается в том, что проверяется, не вышел ли ГРИС на край поля и не грозит ли ему следующий шаг или прыжок в этом направлении аварией. Проверяемые условия звучат так: «впереди край?» или «впереди не край?». На что машина получает от исполнителя ответ «да» или «нет».

В приведенном примере проверяется условие «впереди не край?». Если «да», то делается шаг (т. е. выполняется <тело цикла>). Затем происходит возврат на проверку условия, и все повторяется. Если проверка условия дает отрицательный результат (т. е. впереди край), то выполнение цикла завершается и исполняется следующая команда программы.

При программировании цикла важно думать о том, чтобы цикл был конечным. Цикл, записанный выше, — конечный. Двигаясь в одном направлении, исполнитель обязательно достигнет края, и на этом выполнение цикла закончится.

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

пока впереди не край, повторять
нц
       шаг
       поворот
кц

никогда не закончится. ГРИС будет бесконечно рисовать квадратик, так как проверка условия «впереди не край?» всегда будет давать положительный ответ.


Цикл в процедуре

Задача 4. Теперь составим программу, по которой графический исполнитель нарисует прямоугольную рамку по краю поля (рис. 5.7). Исходное положение: ГРИС находится в левом верхнем углу, смотрит на юг.

Результат выполнения программы "Рамка"

Рамка состоит из четырех линий, поэтому разумно воспользоваться процедурой, проводящей линию от края до края поля. Опять будем действовать методом последовательной детализации. Напишем сначала основную программу.

программа Рамка
нач
    сделай ЛИНИЯ
    поворот
    сделай ЛИНИЯ
    поворот
    сделай ЛИНИЯ
    поворот
    сделай ЛИНИЯ
кон

Программа проведения линии нами уже рассматривалась. Осталось оформить ее в виде процедуры.

процедура ЛИНИЯ
нач
        пока впереди не край, повторять
        нц
                 шаг
        кц
кон

При составлении этой программы использовалась одношаговая детализация в такой последовательности:

Одношаговая детализация


Блок-схемы алгоритмов

Начиная с 50-х годов прошлого века, т. е. еще с эпохи ЭВМ первого поколения, программисты стали использовать графические схемы, изображающие алгоритмы, которые получили название блок-схем.

Блок-схема состоит из фигур (блоков), обозначающих указания на отдельные действия исполнителя, и стрелок, соединяющих эти блоки и указывающих на последовательность их выполнения. Внутри каждого блока записывается выполняемое действие. Сама форма блока подсказывает характер операции, которую он обозначает. Для придания наглядности и единообразия схемам алгоритмов все графические элементы стандартизированы.

Посмотрите на рис. 5.8, где показана блок-схема алгоритма рисования рамки. Она состоит из двух частей: блок-схемы основного алгоритма и блок-схемы вспомогательного алгоритма ЛИНИЯ.

блок-схема алгоритма "Рамка"

Из этих схем видно назначение блоков различной формы (рис. 5.9).

Элементы блок-схем и структура "цикла"


Цикл с предусловием

Команда цикла изображается не отдельным блоком, а целой структурой, показанной на рис. 5.9. Такую структуру называют циклом с предусловием (так как условие предшествует телу цикла). Есть и другой вариант названия: цикл-пока (пока условие истинно, повторяется выполнение тела цикла).

При решении следующей задачи снова будем использовать метод последовательной детализации.

Задача 5. Требуется расчертить экран горизонтальными линиями (рис. 5.10). Исходное состояние исполнителя: верхний левый угол, направление — на юг.

Разлиновка

В программе для решения этой задачи используется та же процедура ЛИНИЯ. Другая процедура – ВОЗВРАТ – возвращает  ГРИС к исходному положению для рисования следующей линии.

Программа

Блок-схемы основного и вспомогательного алгоритмов представлены на рис. 5.11.

Блок-схема алгоритма "Разлиновка"

<u</u>

Коротко о главном

Для программирования повторяющихся действий применяется команда цикла, которая имеет следующую структуру:

пока <условие>, повторять
нц
        <тело цикла>
кц

Команда цикла использует обратную связь между объектом управления и управляющей системой. Проверка условия дает информацию управляющей системе о состоянии объекта управления.

В цикле с предусловием если проверяемое условие выполняется (истинно), то выполняются команды, составляющие тело цикла. Если условие ложно, то происходит выход из цикла.

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

Блок-схема — это графический способ описания алгоритма, Блоки обозначают действия исполнителя, а соединяющие их стрелки указывают на последовательность выполнения действий.


Вопросы и задания

1. Что такое цикл? Как записывается команда цикла?
2. Что такое условие цикла? Что такое тело цикла?
3. В каком случае происходит зацикливание алгоритма?
4. Что такое блок-схема?
5. Из каких блоков составляются блок-схемы (как они изображаются и что обозначают)?
6. Что обозначают стрелки на блок-схемах?
7. Составьте программу, переводящую ГРИС в угол поля из любого исходного состояния.
8. Составьте программу рисования прямоугольной рамки вдоль края поля, начиная рисование из любого начального состояния исполнителя.



И. Семакин, Л. Залогова, С. Русаков, Л. Шестакова, Информатика, 9 класс
Отослано читателями из интернет-сайтов


Подготовка к урокам и все это бесплатно, скачать или готовиться онлайн, скачать конспекты информатики, лекции уроков, бесплатные учебники, готовое домашнее задание по информатике 9 класс


Содержание урока
1236084776 kr.jpg конспект урока                       
1236084776 kr.jpg опорный каркас  
1236084776 kr.jpg презентация урока
1236084776 kr.jpg акселеративные методы 
1236084776 kr.jpg интерактивные технологии 

Практика
1236084776 kr.jpg задачи и упражнения 
1236084776 kr.jpg самопроверка
1236084776 kr.jpg практикумы, тренинги, кейсы, квесты
1236084776 kr.jpg домашние задания
1236084776 kr.jpg дискуссионные вопросы
1236084776 kr.jpg риторические вопросы от учеников

Иллюстрации
1236084776 kr.jpg аудио-, видеоклипы и мультимедиа 
1236084776 kr.jpg фотографии, картинки 
1236084776 kr.jpg графики, таблицы, схемы
1236084776 kr.jpg юмор, анекдоты, приколы, комиксы
1236084776 kr.jpg притчи, поговорки, кроссворды, цитаты

Дополнения
1236084776 kr.jpg рефераты
1236084776 kr.jpg статьи 
1236084776 kr.jpg фишки для любознательных 
1236084776 kr.jpg шпаргалки 
1236084776 kr.jpg учебники основные и дополнительные
1236084776 kr.jpg словарь терминов                          
1236084776 kr.jpg прочие 

Совершенствование учебников и уроков
1236084776 kr.jpg исправление ошибок в учебнике
1236084776 kr.jpg обновление фрагмента в учебнике 
1236084776 kr.jpg элементы новаторства на уроке 
1236084776 kr.jpg замена устаревших знаний новыми 

Только для учителей
1236084776 kr.jpg идеальные уроки 
1236084776 kr.jpg календарный план на год  
1236084776 kr.jpg методические рекомендации  
1236084776 kr.jpg программы
1236084776 kr.jpg обсуждения


Интегрированные уроки


Если у вас есть исправления или предложения к данному уроку, напишите нам.

Если вы хотите увидеть другие корректировки и пожелания к урокам, смотрите здесь - Образовательный форум.