Графика |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Графика |
-max- |
Сообщение
#1
|
Гость |
Помогите решить:
Дано три целых числа, определяющих положение центра окружности на экране и ее радиус. Если окружность не пересекает горизонтальную прямую, проходящую через середину экрана, то высветить данную окружность и окружность, симметрическую данной относительно этой прямой. |
volvo |
Сообщение
#2
|
Гость |
В чем проблема? Не знаешь, как определить, пересекаются ли прямая и окружность? Ничего проще: если координата Y центра окружности строго меньше чем ((GetMaxY div 2) - R) или строго больше, чем ((GetMaxY div 2) + R), то окружность и прямая НЕ пересекаются.
Как чертить прямые и окружности - см. Help на Line/Circle |
-max- |
Сообщение
#3
|
Гость |
Помогите доделать задачу:
Дано три целых числа, определяющих положение центра окружности на экране и ее радиус. Если окружность не пересекает горизонтальную прямую, проходящую через середину экрана, то высветить данную окружность и окружность, симметрическую данной относительно этой прямой. Код uses crt, graph; var driver, mode,error: integer; x,y,r:word; begin writeln('vvedit x,y,r'); readln(x,y,r); begin driver:=detect; initgraph(driver, mode, 'c:\tp\bp\bgi'); error:=graphresult; line(0,240,640,240); circle(x,y,r); if y<((getmaxy div 2)-r) then circle(x,y,r); if y>((getmaxy div 2)+r) then circle(x,y,r); closegraph; readln; end; end. |
volvo |
Сообщение
#4
|
Гость |
Ты второй пост внимательно прочел? Я же написал: ИЛИ ... ИЛИ
if (y<((getmaxy div 2)-r)) OR (y>((getmaxy div 2)+r)) |
Гость |
Сообщение
#5
|
Гость |
А как начертить симметричную окружность???
|
Бравый генерал |
Сообщение
#6
|
Новичок Группа: Пользователи Сообщений: 39 Пол: Мужской Реальное имя: Василий Репутация: -2 |
Uses |
Текстовая версия | 23.12.2024 19:43 |