Нарисовать Колокол - QBasic
Формулировка задачи:
помогите пожалуйста нарисовать колокол, и как маятник (или что то похожее) бьет по нему
Решение задачи: «Нарисовать Колокол»
textual
Листинг программы
CLS SCREEN 11 WINDOW SCREEN (-320, 480)-(320, 0) LINE (-50, 120)-(0, 100) LINE (50, 120)-(0, 100) LINE (-50, 120)-(-50, 200) LINE (50, 120)-(50, 200) CIRCLE (250, 200), 200, , 3.1416, 4 CIRCLE (-250, 200), 200, , 5.4248, 0 LINE (-120, 353)-(120, 353) CIRCLE (0, 353), 40, , 3.1416, 0 dt = .01 dr = 1 r = 50 PRINT "Press any key" DO IF 0 < t + dt AND t + dt < .5 THEN t = t + dt ELSE dt = -dt END IF IF r < 100 THEN r = r + dr ELSE r = 50 x = -77 - 230 * SIN(t) y = 230 * COS(t) y1 = 250 * COS(t) LINE (-77, 0)-(x, y) CIRCLE (x, y1), 20 CIRCLE (0, 355), r, , 3.6416, 5.7832 CIRCLE (0, 355), r + 50, , 3.6416, 5.7832 CIRCLE (0, 355), r + 100, , 3.6416, 5.7832 LINE (-77, 0)-(x, y), 0 CIRCLE (x, y1), 20, 0 CIRCLE (0, 355), r, 0, 3.6416, 5.7832 CIRCLE (0, 355), r + 50, 0, 3.6416, 5.7832 CIRCLE (0, 355), r + 100, 0, 3.6416, 5.7832 LOOP UNTIL INKEY$ <> "" END
Объяснение кода листинга программы
- Объявлены переменные: t, dt, r, x, y, y1.
- Начальные координаты для линий и окружностей.
- Ввод начальных значений для переменных t, dt, r.
- Цикл, который повторяется до тех пор, пока не будет нажата клавиша.
- Внутри цикла проверяется условие для изменения значения dt.
- Проверяется условие для изменения значения r.
- Вычисляются значения x и y с помощью функций sin и cos.
- Рисуются линии и окружности с помощью функций line и circle.
- Выводится сообщение
Press any key
после каждого кадра. - Условие для рисования линий и окружностей с помощью функции line и circle.
- Условие для рисования линий и окружностей с помощью функции line и circle.
- Условие для рисования линий и окружностей с помощью функции line и circle.
- Условие для рисования линий и окружностей с помощью функции line и circle.
- Цикл продолжается до тех пор, пока не будет нажата клавиша.
- Завершение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д