Задача на тему «Рисование в QBasic». Нарисовать узор на рисунке по вводным условиям: большой квадрат имеет сторону 160. Углы этого квадрата находятся в центрах квадратов со стороной 80. Большая окружность имеет центр в центре большого квадрата. Радиус окружности рассчитывается как сумма половин длин большого и малого квадрата.
Рассмотрим решение данной задачи. На изображение код и результат его выполнения.
1. Нарисуем большой квадрат со стороной 160. Левый верхний угол пусть имеет координаты (150,100) тогда правый нижний угол — (310,260).
LINE (150, 100)-(310, 260), 15, B
2. Теперь нарисуем четыре малых квадратика на углах большого. Для того, чтобы нарисовать квадрат, нужно знать координаты двух диаметрально противоположных точек. По условию задачи сторона маленького квадрата равна 80. Чтобы угол большого квадрата был в центре малого, нужно получить координаты нужных нам точек малого квадрата: (150 -40, 100-40) и (150+40, 100+40).
(Х-40, У-40) и (Х+40, У+40)
3. Нарисуем окружность. Нужно определить ее центр. Сторона квадрата равна 160, значит координаты центра равны: (150+80, 100+80)=(230,180).
Теперь определим радиус: возьмем координату У большого квадрата для верхней стороны и прибавим к ней половину длины малого квадрата 40. Получим:
100+40=140
4. Нарисовать малые окружности не составит труда: центры в углах большого квадрата с координатами (150,100) и (310,260) и радиусы равны половине длины стороны малого квадрата 80/2=40.
5. Осталось рассчитать координаты отрезков.
Рассмотрим изображение выше. Да нем точки для двух отрезков (обозначены красным). Один конец отрезка нам уже известен — это угол уже нарисованного квадратика. Другие две точки вычисляются:
(150,100+40) и (150+40, 100).
40 — половинка длины малого квадратика.
Другие два отрезка вычисляются аналогично.
В итоге получаем следующий код
SCREEN 12
LINE (150, 100)-(310, 260), 15, B LINE (110, 60)-(190, 140), 15, B LINE (270, 60)-(350, 140), 15, B LINE (110, 220)-(190, 300), 15, B LINE (270, 220)-(350, 300), 15, B CIRCLE (230, 180), 120, 15 LINE (310, 220)-(190, 140), 15 LINE (190, 140)-(270, 260), 15 CIRCLE (310, 260), 40, 14 CIRCLE (150, 100), 40, 14 LINE (270, 220)-(150, 140), 15 LINE (270, 220)-(190, 100), 15
Настала пора написать серию мини-обучалок по решению задач ЕГЭ по информатике версии 2021 года. В…
Данная статья будет полезна для учителей информатики, которые занимаются программированием с детьми внеурочно. Опыт показывает, …
Рассмотрим набор наиболее часто встречающихся задач на программирование в школьном курсе информатики. Добавляйте свои задачи…
В прошлый раз мы разобрали первые две задачи школьного тура Всероссийской олимпиады школьников, проводимой в…
Закончился школьный тур Всероссийской олимпиады школьников. Разберем первую и вторую задачи тура, проводимого в московских…
Задача. В плацкартном вагоне 54 места, пронумерованных числами от 1 до 54. Вагон разбит на 9…