Циклический алгоритм
Задача 140
' Пешеходный переход "зебра" FOR Y = 10 ТО 320 STEP 30
LINE (200, У)-(400, Y+20), 15, BF NEXT Y
Задача 143
1 Воздушный шарик
SCREEN 9
' Изменение цвета фона
COLOR , 1
FOR I = 1 ТО 201
' Рисование окружности изменяющегося радиуса
CIRCLE (320, 175), I, 14
' Пауза
FOR T = 1 ТО 2000: NEXT T
' Стирание окружности изменяющегося радиуса
CIRCLE (320, 175), I, 1 NEXT I
Задача 146
F=l
Цикл вообще не будет ни разу исполняться, т. к. начальное значение параметра больше конечного, а шаг по умолчанию принят +1.
Задача 147
1 Да ты крут!
CLS
INPUT "Введи свой возраст"; N
FOR J = 1 ТО N
PRINT "ДА ТЫ КРУТ! "
FOR T = 1 ТО 5000: NEXT T
NEXT J
END
Задача 148
' Таблица умножения
1:INPUT "Введите целое число от 2 до 9"; N
IF N<2 OR N>9 THEN ?"От 2 ДО 9!": GOTO 1
? "Таблица умножения на "; N
FOR I = 2 ТО N
? I; "*"; N; "="; I*N NEXT I END
Задача 151
1 Электронный секундомер FOR T = 1 TO 3600
LOCATE 12, 38:? T NEXT T END
Задача 152
' Орнамент с полукольцами
SCREEN 9
' Задание радиусов окружностей
R1 = 20: R2 = 10
FOR X = 50 ТО 600 STEP 4*R1 ' Первое полукольцо CIRCLE (X, 175), Rl, 14, 0, 3.14 CIRCLE (X, 175), R2, 14, 0, 3.14 LINE (X - Rl, 175)-(X - R2, 175), 14 LINE (X + Rl, 175)-(X + R2, 175), 14
PAINT (X, 162), 2, 14
' Второе полукольцо
CIRCLE (X + 2 * Rl, 175), Rl, 14, 3.14, 0
CIRCLE (X + 2 * Rl, 175), R2, 14, 3.14, 0
LINE (X + Rl, 175)-(X + Rl + R2, 175), 14
LINE (X + 2 * Rl + R2, 175)-(X + 3 * Rl, 175), 14
PAINT (X + 2 * Rl, 188), 4, 14
NEXT X
END
Задача 156
- Правильно, если переменные r, s и н ранее получили значения.
- Правильно.
- Правильно.
- Неправильно. Отсутствует ключевое слово то.
- Правильно.
- Неправильно. Цикл выполняться не будет, т. к. начальное значение параметра больше конечного, а шаг неотрицателен.
Неправильно, т. к. оператор wend не должен содержать параметр.
Задача 157
WAR WAR WAR
SUNDAY PEACE
Так как после окончания цикла параметр имеет значение большее конечного значения параметра, то проверяемое условие r=w ложно, следовательно выполняется следующий оператор печати слова "SUNDAY", а затем "PEACE".
Задача 169
Будут бесконечно печататься нули. Значение s не меняется, поэтому цикл будет длиться бесконечно.
Задача 173
X=INT(RND(1)*ll)+10
Задача 175
X =-INT(RND(l)*101)+65
Задача 179
1 Маленький взрыв RANDOMIZE TIMER SCREEN 9 FOR 1=1 TO 100
X=INT(RND(1)*200)+220
Y=INT(RND(1)*200)+75
C=INT(RND(1)*15)+1
LINE (X, Y)-(320, 175), С NEXT I END
Задача 188
Rem ось абсцисс Rem ось ординат
' Построение графика Y=SQR{X)
SCREEN 9
LINE (0, 175)-(640, 175), 15
LINE (320, 0)-(320, 350), 15
DEF FNY(X)=SQR(X)
FOR X = 320 TO 640
Y = 175-30*FNY*((X-320J/30)
PSET (X, Y), 15 NEXT X END
Пояснение: корень квадратный извлекается только из неотрицательных чисел, следовательно, аргумент функции (х-320)/30) не должен быть меньше нуля, что и достигается его начальным значением 320.
Задача 190
' Поверхность вращения функции у = 1/1+х"
SCREEN 9
LINE (0, 175) - (640, 175), 15 Rem ось абсцисс
LINE (320, 0) - (320, 350), 15 Rem ось ординат
DEF FNY(X) = 1/(1+хл2)
FOR X = 320 ТО 640 STEP 5
Y = 175 - 30*FNY((X - 320)/30)
CIRCLE (X, 175), 175 - Y, 15,,,3 NEXT X END
Задача 196
1 Лестница 1
SCREEN 9
FOR X = 0 TO 64 0 STEP 4 0
LINE(X, X*35/64)-(X + 40, (X + 40)*35/64),15,В NEXT X END
Так как экран представляет собой не квадрат, а прямоугольник, то, чтобы серия прямоугольников располагалась вдоль диагонали, приходится вводить коэффициент соотношения сторон экрана 350/640 или 35/64.
Задача 197
' Пирамида. Вид сверху
SCREEN 9
FOR X = 20 ТО 220 STEP 10
LINE (X, X)-(220-Х, 220-Х),15, В NEXT X END
Задача 200
1 Лоскутный ковер
SCREEN 9
RANDOMIZE TIMER
FOR X = 0 TO 640 STEP 10
FOR Y = О ТО 350 STEP 10
' Выбор случайного цвета для закраски кв. лоскута
С = INT(RNDd) *15) + 1
' Рис.ание закрашенного квадратика
LINE (X, Y)-(X + 10, Y + 10), С, BF
' Обводка квадратика белым контуром
LINE (X, Y)-(X + 10, Y + 10), 15, В NEXT Y NEXT X END
Задача 205
1 Хронометр CLS
1 Цикл для часов FOR HOURS = 0 to 23 ' Цикл для минут FOR MINUTES = 0 to 59 ' Цикл для секунд FOR SECONDS = 0 to 59 LOCATE 12, 35
? HOURS; ":"; MINUTES; ":"; SECONDS SLEEP 1 NEXT SECONDS NEXT MINUTES NEXT HOURS
Задача 208
' Вычисление числа Пи методом Монте-Карло
CLS : RANDOMIZE TIMER
LOCATE 3, 20
PRINT " Вычисление числа Пи методом Монте-Карло"
SCREEN 9
' Рис.ание квадрата со стороной 200
LINE (100, 100)-(300, 300), 14, В
' Рис.ание вписанной в квадрат окружности радиусом
100CIRCLE (200, 200), 100, 0, , , 1.01
' Задание общего количества песчинок N
' и обнуление счетчика попавших в круг KN=5000: K=0
FOR 1=1 ТО N
X=INT(RND(1)*200)+100
Y=INT(RND(1)*200)+100 ' Вычисление расстояния от выпавшей точки до центра
S =SQR((X-200)Л2+(У-200)"2) ' Проверка условия, попала ли точка в круг 1 и изображение ее красным или белым цветами IF S<=100 THEN K=K+1: PSET (X, Y) , 4 ELSE PSET (X, Y) , 15 ' Вывод на экран счетчиков песчинок LOCATE 5, 20: PRINT "Выпала песчинка №"; I
LOCATE 6, 20: PRINT "В круг уже попало"; К; "песчинок" NEXT I
1 Вычисление и вывод на экран значения числа Пи LOCATE 23, 15: PRINT "Число ПИ для"; N; "точек ="; 4*K/N END
Задача 212
1 Сумматор
CLS
' Запрос с клавиатуры количества суммируемых чисел
INPUT "Сколько чисел будем складывать"; N
' Обнуление переменной для накапливания суммы
S = 0
FOR 1=1 ТО 5
? "Введите"; I; "число"; INPUT A S=S+A NEXT I
' Вывод результата на экран ?"Сумма ваших"; N; "чисел равна"; S END
Задача 215
1 Нахождение суммы ряда
CLS
' Запрос значений переменных А и В
INPUT "Введите значения А и В"; А, В
' Обнуление переменной для накапливания суммы
S=0
1 = 0
WHILE (A+I)OB
S=S+1/(1+(A+I)Л2)
1 = 1 + 1 WEND
' Вывод результата на экран ?"Сумма ряда равна"; S END
Задача 216
1 Соприкасающиеся окружности
1 Занесение значений радиусов
DATA 50, 20, 10, 25, 40, 15, 60
SCREEN 9
' Задание начальной координаты X
Х=0
FOR 1=1 ТО 7
READ R
CIRCLE (X+R, 175), R, 14
X=X+2*R NEXT I END
Задача 220
1 Разноцветные окружности. Вариант 1
' Программа с циклом DO...LOOP WHILE
SCREEN 9
' Задание значения первого цвета
ч^— 1
DO
' Определение координаты X центра окружности
Х=10+40*С
CIRCLE (X, X), 30, 15
PAINT (X, X) , С, 15
С=С+1
LOOP WHILE C<7 END
' Разноцветные окружности. Вариант 2
' Программа с циклом DO...LOOP UNTIL
SCREEN 9
' Задание значения первого цвета
С=1
DO
' Определение координаты X центра окружности
Х=10+40*С
CIRCLE (X, X), 30, 15
PAINT (X, X), С, 15
С=С+1 LOOP UNTIL C=7