Условие попадания точки в область!

Общие вопросы: версии и диалекты, синтаксис языка, cтруктуры и типы данных (массивы, строки, списки...), обработка данных и т.д.
Ответить
Lange
Сообщения: 12
Зарегистрирован: 07 ноя 2009, 14:26
Откуда: Kazakhstan
Контактная информация:

07 ноя 2009, 14:55

Дан график:
[ATTACH]1103[/ATTACH]
Выяснить,попадает ли точка в заданную область.Если (x,y) принадлежит заштрихованной области,то z:=(sqrt(abs(x^2-y^2)))/(sinx+tgx),иначе z:=(2x*cosy)/abs(x^2-y^2).У меня такая вот программа,но мне кажется,что она неверная:
uses crt;
var
y, x, z:real;
begin
clrscr;
write ('Zadayte koordinati tochki: ');
read (x, y);
if (y<1)and(y>0)and(y<Exp(1)) then
begin
z:=(sqrt(abs(x*x-y*y)))/(sin(x)+(sin(x)/cos(x)));
writeln ('Tochka popadaet v oblast!')
end
else
begin
z:=(2*x*cos(y))/abs(x*x-y*y);
writeln ('Tochka ne popadaet v oblast!')
end;
write ('Z= ', z:10:5);
readkey
end.
Проверьте пожалуйста!А здесь изображена область,если на графике не понятно:[ATTACH]1104[/ATTACH] :confused:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Хыиуду
Сообщения: 2388
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

09 ноя 2009, 08:55

Откуда вы взяли такие формулы?
if (y>sqr(x)) and (y<exp(x)) and (y<exp(-x))
then writeln('Попадает') else writeln ('Не попадает');
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
atavin-ta
Сообщения: 572
Зарегистрирован: 30 янв 2009, 06:38

09 ноя 2009, 09:05

Ну ты дал! Абсциса у тебя есть. Для этой абсциссы считай ординаты ограничивающих линий и сравнивай с ординатой твоей точки. Если твоя ордината между ограничивающими - значит попал. И ни каких гвоздёв.
Вопрос: "Почему вы все сионисты? Нельзя ли писать на чём то другом?".
Ответ: "Писать можно на чём угодно. Но зачем же так себя ограничивать? Пиши на С!".
Lange
Сообщения: 12
Зарегистрирован: 07 ноя 2009, 14:26
Откуда: Kazakhstan
Контактная информация:

09 ноя 2009, 14:26

Хыиуду писал(а):Откуда вы взяли такие формулы?
if (y>sqr(x)) and (y<exp(x)) and (y<exp(-x))
then writeln('Попадает') else writeln ('Не попадает');
Спасибо,я уже разобралась!))
natalia710
Сообщения: 0
Зарегистрирован: 06 дек 2009, 17:44

06 дек 2009, 20:31

помогите составить пожалйста функцию для вачисления f=a[0]/2+a*cos(x*i)+b*cos(x*i) а,b суммы рядов от одного до n a[0] начальноез начение массива a и надо использовать открытый параметр массив
Ответить