КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Кон кон
Реализация данного алгоритма в виде структурированной программы:
Алгоритмы: Программа: алг «Галерея картинок»'Галерея картинок нач cls вывод («Список картинок:») print «Список картинок:» вывод («1. треугольник») print «1. треугольник» вывод («2. прямоугольник») print «2. прямоугольник» вывод («З. кольцо») print «3. кольцо» запрос(«номер =», n) input «номер =», n если n = 1 то if n = 1 then рисунок_треугольника gosub treug инеc n = 2 то if n = 2 then рисунок_прямоугольника gosub box инеc n = 3 то if n = 3 then рисунок_кольца gosub ring инеc п < 1 или n > 3 то if n < 1 or n >3 then вывод («нет такого рисунка»)print «нет такого рисунка» все 'все кон end
алг «рисунок треугольника» treug: 'рисунок треугольника нач cls графический_экран screen 2,0 линия (150,50)-( 100,100) line (150,50)-(100,100),3 линия (150,50)-(200,100) line (150,50)-(200,100),3 линия (100,100)-(200,100) line (100,100)-(200,100),3 кон return
алг «рисунок прямоугольника» box: 'рисунок прямоугольника нач cls графический_экран screen 2,0 рамка (50,50)-(150,100) line (50,50)-(150,100),3,b кон return алг «рисунок кольца» ring: 'рисунок кольца нач cls графический_экран screen 2,0 окружность (100,100),20 circle (100,100),20 окружность (100,100),50 circle (100,100),50 кон return Данный подход - составление структурированных алгоритмов может применяться к составлению структурированных программ для любых ЭВМ на любых языках программирования - Паскаль, Си, Ада, Модула и т. д. На практике используется более широкий набор правил структурной композиции алгоритмов и программ, принятых в современных языках программирования, ~ правила альтернативного выбора, а также циклы с выходами и со счетчиками.
1. Условные действия. если у < 0 то if у < 0 then вывод («недопустим») print «недопустим» кесли end if
2. Многоальтернативный выбор. если х > 1 то if х > 1 then у: = 1 у = 1 инес х < -1 то elseif х < -1 then у: = -1 у = -1 иначе else у: = х у = х кесли end if
3. Циклы со счетчиком: от k = 1 до п цикл for k = 1 to n вывод (k×k) print k*k кцикл next k
4. Циклы с выходами. цикл do s: = s + x s = s + x при х < 1 выход if х < 1 then exit do х: = x/2 x = x/2 кцикл loop
В циклах в общем случае возможны несколько выходов. Дополнительные выходы считаются допустимыми даже для циклов со счетчиками. Приведем примеры решения задач с использованием дополнительных правил структурирования алгоритмов и программ. Пример записи структурированных алгоритмов и программ с использованием циклов для алгоритма игры-эксперимента «звездное небо»:
АлгоритмПрограмма алг «звездное небо» ' звездное небо» нач сls цикл do запрос(«звезд=», п) input «звезд=», n при п <= 0 выход if n <= 0 then exit do графический_экран screen 2,10 от k = 1 до п цикл for k = 1 to n х: = случайное [0:200] х = rnd*200 у: = случайное [0:200] у = rnd*200 точка (х,у) pset (x,y),3 кцикл next k кцикл end do кон end
Пример структурированного алгоритма и программы с применением многоальтернативного выбора и циклов с несколькими выходами:
АлгоритмПрограмма алг «угадай-ка» ' угадай-ка нач cls вывод («Угадай-ка число») print «Угадай-ка число» вывод («от 1 до 100») print от 1 до 100» z: = случайное [0:100] z = int (rnd*100) цикл do запрос («число =», х) input «число =», х при х = z вых if х = z then exit do если х < z то if х < z then вывод («мало») print «мало» инеc х > z тo elseif х > z then вывод («много») print «много» все end if кцикл end do вывод («молодец, умница») print «молодец, умница» кон end
|