1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Программа, проверяющая поподает ли точка M(x,y) в заданную область
Написать программу, проверяющую, попадает ли точка M(x,y) с координатами x и y в заданную область. Нарисовать заданный рисунок в графическом режиме и закрасить ту область, в которую попала точка. Написать программу, которая по заданной области автоматически составляет Паскаль-программу, проверяющую, попадает ли точка M(x,y) с координатами x и y в эту область.
Для решения задачи организуйте арифметический цикл с заранее известным числом повторений.
Напишите, какие появились идеи на счет решения этой задачи...
График я сейчас попытаюсь сделать...в остальном возникли затруднения.
У тебя же два задания, верно? Как я понимаю, изображение относится к первому. Условие для него такое (я потестировал, но ты лучше сама проверь, мало ли):
(y <= 0) and (x <= 0) and ((sqr(x+2) + sqr(y) <= 4) xor ((y < (x+2)*2/3) and (y > (x+3.6641)*(-0.2837)-1.1094)))
Нарисовать картинку на экране, думаю, дело техники.
А вот со вторым заданием непонятно. Судя по всему на вход программе должна поступать некоторым образом заданная область, а на выходе она должна выдавать программу на Паскале. Вот я и спрашиваю, в каком виде должна задаваться эта область. Ну не рисунок же программа разбирать должна. Кстати, вот это:
Цитата
Для решения задачи организуйте арифметический цикл с заранее известным числом повторений.
я не знаю, правильно ли я его написала...или по другому нужно было сделать...
ммммммммне кажется, что нужно было по-другому.. Во-первых, отвыкай (лучше, еще не привыкнув) использовать абсолютные координаты на экране. Исключительный моветон. Правильно было бы задать соответствие математических координат (типа слева x1=-5, справа x2=5 и т.д.) и сделать функцию, которая переводит математические координаты в физические на эеране. Типа так:
function xPh(x: tReal): integer; begin xPh=Round(x/(x2-x1)*GetMaxX) end;
function yPh(y: tReal): integer; begin yPh=Round((1-y/(y2-y1))*GetMaxY) end;
Во-вторых, тебе надо было закрасить область, куда попала точка (предварительно, видимо, запросив ее ввход). Куда ПОПАЛА, а не заданная область. Чувствуешь разницу?
А в третьих, задание не очень ясное. Я имею в виду второе.. Как там задается область? ее что, сканировать нужно?? Я бы, может, придумал некий язык для задания и читал бы из файла тогда. В файле что-то типа такого:
Код
area
circle -2 0 2 inner
line 0 1.5 -2 0 right
line 0 0 -2 0 left
area ....
че скажешь?
--------------------
я - ветер, я северный холодный ветер я час расставанья, я год возвращенья домой
Я не могу построить график по координатам...вообще никак не получается...пробовала в той же программе прописать ту процедуру, которую Вы посоветовали..но как у новичка в прогроммировании..стали выходить ошибки...одну исправлю выходит другая...я уже запуталась..не могу понять что мне сейчас делать. Все что нарисовала переделывать или искать решение у второй задачи. Путаница в голове полнейшая
Если бы я смогла как-то начертить график окружности и нарисовать треугольник по его вершинам...там наверное уже можно бы было думать на счет второй задачи. Щас буду думать как это все воплотить...может что-то и получится...надеюсь.