IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> О Принадлежности точки заданным областям! Сложно!, Две задачки... Две области, фигуры: эллипс, круг, прямая!
Sergey K.
сообщение 18.01.2007 14:25
Сообщение #1





Группа: Пользователи
Сообщений: 3
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


1) Разработать программу, которая в ответ на вводимую с клавиатуры пару вещественных чисел, представляющих собой координаты X, Y точки А на плоскости, выдаёт текстовое сообщение о принадлежности этой точки заданной области. Например: «Точка принадлежит заданной области». В программе должно быть предусмотрено неограниченное повторение всех операций с использованием оператора goto. Решение о повторе должен принимать пользователь с помощью клавиатуры.
Прикрепленное изображение
2) Разработать программу вычислений заданной площади, используя три различных метода вычислений: прямоугольников, трапеций, Симпсона. Результат вывести на экран в виде таблицы:

Число разбиений Результат
n A B C
n1 A1 B1 C1
n2 A2 B2 C2
n3 A3 B3 C3

Здесь: А1–А3, B1–B3, C1–C3 – численные результаты счета, полученные соответственно методами прямоугольников (А), трапеций (B) и Симпсона ©. Число разбиений n1, n2, n3 задать самостоятельно (например, n1=10, n2=100, n3=1000) Формат вывода результатов А, В, С задан в варианте.
Результат в виде таблицы должен выдаваться, не выходя из основной программы, т.е. должно быть предусмотрено продолжение работы программы с новым набором входных данных до тех пор, пока не будет нажата заданная клавиша.
Промежуточные вычисления необходимых критических точек осуществить методом сканирования или методом проб с заданной точностью E=0,0001.
При реализации повторяющихся алгоритмов разработать соответствующие функции (процедуры).

Справочный материал
1. Формулы прямоугольников: 1) h[Y(0)+Y(1)+…+Y(N–1)]
2) h[Y(1)+Y(2)+…+Y(N)]
3) h[Y(1/2)+Y(3/2)+…+Y(N–1/2)]
2. Формула трапеций: h[(Y(0)+Y(N))/2 + Y(1) + Y(2) + … + Y(N–1)]
3. Формула Симпсона: h/6[(Y(0)+Y(N)+2(Y(1)+Y(2)+…+Y(N–1))+
+4(Y(1/2)+Y(3/2)+…+Y(N–1/2))]
Здесь: h – шаг дискретизации (h=(B–A)/N) на отрезке интегрирования [A,B]; N – число разбиений; Y(i) – значение подинтегральной функции на i-том шаге дискретизации, Y(0) и Y(N) – соответственно значения функции в начальной и конечной точках отрезка интегрирования, Y(1/2), Y(3/2),
Y(N–1/2) – значения функции в точках середин отрезков соответственно между 1-м и 2-м, 2-м и 3-м, (N–1)-м и N-м итерациями или шагами

Заранее благодарю!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 18.01.2007 14:28
Сообщение #2


Гость






Значит, FAQ опять не читаем...

Второй вопрос - сразу сюда: Численное интегрирование

+ Поиск (для метода трапеций)

А насчет
Цитата
с использованием оператора goto
- это вообще разговор отдельный blink.gif
 К началу страницы 
+ Ответить 
klem4
сообщение 18.01.2007 16:43
Сообщение #3


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


По поводу первой задачи, больше никаких точек не дано ? Если знать через какие точки проходит прямая, где находится центр окружности и центр правого фокуса эллипса, задача решается очень просто, а как по картинке эти точки определить, пока не пойму, масшаты у тебя явно не соблюдены, даже по осям X и Y одной клетке явно соответствуют разные величины.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Sergey K.
сообщение 18.01.2007 19:03
Сообщение #4





Группа: Пользователи
Сообщений: 3
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


Цитата(klem4 @ 18.01.2007 18:43) *

По поводу первой задачи, больше никаких точек не дано ? Если знать через какие точки проходит прямая, где находится центр окружности и центр правого фокуса эллипса, задача решается очень просто, а как по картинке эти точки определить, пока не пойму, масшаты у тебя явно не соблюдены, даже по осям X и Y одной клетке явно соответствуют разные величины.

В том-то и дело! Рисунок это не мой! И масштаб не соблюдён. Просто пытаюсь другу помочь!!! Ну, вроде, смотрел, так, по-моему, центр должен быть по оси Х=-6. Формулы искал и т.д. В том-то и дело, что сложно... разобраться по одному этому рисунку-то... Насколько я понял, а - это расстояние от самого центра эллипса до края, таким образом b - это от центра эллипса до верха. А есть ещё, вроде, расстояние между фокусами 2C, по-моему. То есть C-это расстояние от центра до фокуса, на том месте и будет центр правого фокуса эллипса. Вот именно. Но больше данных нет. Такую задачку им задали!

Добавлено:
Цитата(volvo @ 18.01.2007 16:28) *

Значит, FAQ опять не читаем...
А насчет - это вообще разговор отдельный blink.gif

FAQ смотрел немного. Вообще воспользовался поиском. Но там было только про треугольник. И то он один! Вроде, про круги что-то было... Но лучше уж сразу точно определиться!!! Что и как! Я, вроде, подобные задачки делал, но проще там всё было. Да и толком непонятно тут с рисунком-то... А почему отдельный разговор про оператор goto?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 18.01.2007 19:16
Сообщение #5


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


В общем для решения первой задачи тебе нужны 3 функции:

1) Определяющая с какой тороны (справа или слева) от прямой лежит точка. Реализаций этой ф-ии есть на форуме

2) Функция, определяющая принадлежность с эллипсу (X^2/A^2 + Y^2/B^2 <= 1)
3) Функция, определяющая принадлежность к окружности (X^2 + Y^2 <= R^2)

Последние 2 ф-и придется немного подкорректировать, так как центр окружности не совпадает с началом координат, и середина отрезка F1F2 (где F1 и F2 - фокусы)не совпадает с началом координат.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Sergey K.
сообщение 18.01.2007 21:13
Сообщение #6





Группа: Пользователи
Сообщений: 3
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


Цитата(klem4 @ 18.01.2007 21:16) *

В общем для решения первой задачи тебе нужны 3 функции:

1) Определяющая с какой тороны (справа или слева) от прямой лежит точка. Реализаций этой ф-ии есть на форуме

2) Функция, определяющая принадлежность с эллипсу (X^2/A^2 + Y^2/B^2 <= 1)
3) Функция, определяющая принадлежность к окружности (X^2 + Y^2 <= R^2)

Последние 2 ф-и придется немного подкорректировать, так как центр окружности не совпадает с началом координат, и середина отрезка F1F2 (где F1 и F2 - фокусы)не совпадает с началом координат.


Пожалуйста, если можете, то предоставьте код программы!!! А то другой работы куча совсем немаленькая сейчас!!! Как сможете, сколько получится!!! Просто это надо тоже побыстрее!!! А я до конца выходных занят по уши...

А если эти 2 задачки попробовать попросить решить за деньги, то это в какую сумму будет? Он, может быть, даже согласится! Ему действительно это очень надо!

Сообщение отредактировано: Sergey K. - 18.01.2007 22:06
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 19.01.2007 0:09
Сообщение #7


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Ты пойми, для решения задачи явно недостаточно данных, взять хотябы окружность, для нее известны только 2 точки, которые ей принадлежат и радиус, ее центр из этого получить невозможно, а без этого никак ...


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Archon
сообщение 19.01.2007 22:26
Сообщение #8


Профи
****

Группа: Пользователи
Сообщений: 618
Пол: Мужской

Репутация: -  24  +


Цитата
Ты пойми, для решения задачи явно недостаточно данных, взять хотябы окружность, для нее известны только 2 точки, которые ей принадлежат и радиус, ее центр из этого получить невозможно, а без этого никак ...
Да ты что, klem4? blink.gif 2 точки и радиус полностью определяют окружность, тем более, что это точки пересечения с осью.

O_y = (27 - 34) / 2 = -3.5
AC = (27 + 34) / 2 = 30.5
O_x = CO = sqrt (sqr (32) - sqr (30.5))=~9.7

Для эллипса тоже данных достаточно. Мне кажется товарищу Sergey'ю K., сперва следовало обратиться в раздел "математика". rolleyes.gif


Эскизы прикрепленных изображений
Прикрепленное изображение

--------------------
Close the World...txeN eht nepO
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
мисс_граффити
сообщение 19.01.2007 22:30
Сообщение #9


просто человек
******

Группа: Модераторы
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Цитата
2 точки и радиус полностью определяют окружность

не всегда.
построй 2 пересекающиеся окружности одинакового радиуса...


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Archon
сообщение 19.01.2007 22:36
Сообщение #10


Профи
****

Группа: Пользователи
Сообщений: 618
Пол: Мужской

Репутация: -  24  +


Не точно выразился. Конечно имелся ввиду данный случай.


--------------------
Close the World...txeN eht nepO
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 20.01.2007 12:48
Сообщение #11


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Цитата
Конечно имелся ввиду данный случай.


А чем данный отличается от общего ? Через 2 точки на оси можно провести 2 окружности одного радиуса с разными центрами ...


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Archon
сообщение 22.01.2007 2:59
Сообщение #12


Профи
****

Группа: Пользователи
Сообщений: 618
Пол: Мужской

Репутация: -  24  +


Цитата
А чем данный отличается от общего ? Через 2 точки на оси можно провести 2 окружности одного радиуса с разными центрами ...
Графиком. Как ты правильно заметил, масштабы у Sergey'a K. не соблюдены, однако вполне очевидно, что центр окружности находится по правую сторону от оси y.


--------------------
Close the World...txeN eht nepO
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 22.01.2007 8:02
Сообщение #13


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Цитата
Графиком. Как ты правильно заметил, масштабы у Sergey'a K. не соблюдены, однако вполне очевидно, что центр окружности находится по правую сторону от оси y.


Ну если так рассуждать то конечно ... В общем у меня желания гадать нету никакого, функции которые нужны автору для решения я привел, реализация первой есть на форуме, о остальные простые для реализации.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 19.07.2025 14:48
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"