Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Трапеция. Нужна помощь. 
V
    Опции темы
ivan219
  Дата 19.3.2007, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: нет
Всего: 12



user posted image
Есть 6 линий разбитых по температуре которые образуют не равнобокую трапеция (могу ошибатся в названии) ткже имеется диапазо от 0pH до 12pH на каждую линию (начало 0 конец 12) также есть точка 6.7pH положение которой не изменяется от температуры (все остальные точки различаются по своему месту положения относительно друг друга).
user posted image
Вобщем мне надо расписать эту трапецию так чтоб я мог в водит разную температуру т.е. 1, 2 , 3 (коорденаты по оси Y) и указав коорденаты точки  на линии (коорденаты по оси X) получить определённый  pH.

Приблизительный пример чего я хочу: 

Y=40C - температура
X=100 pH=5 
X=200 pH=10

Y=80C - температура
X=90 pH=5 
X=210 pH=10

Помогите в написании этой формулы.

Это сообщение отредактировал(а) ivan219 - 19.3.2007, 23:10
PM MAIL ICQ   Вверх
Bitter
Дата 19.3.2007, 23:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный лентяй
***


Профиль
Группа: Завсегдатай
Сообщений: 1209
Регистрация: 15.8.2004
Где: Харьков, Ukraine

Репутация: 4
Всего: 27



ivan219, если я не торможу, у Вас ошика во втором примере:

если 90 = 5, то 210 не может быть 10! Так как:

X = 90/5 = 18 (18 единиц = 1 pH)
210/18 = 11,6, но ни как не 10

или у Вас не линейная зависимость?

А вообще алгоритм простой:

1. Для каждой линии нужно знать длинну.
2. Делим длинну на 12. Получаем интервал одной ячейки - Х
3. Введенное Вами число делим на Х и округляем.

Т.о. касательно первого примера:

X = 200/10=20
Вводим XX=100 => 100/20 = 5(pH)
Вводим XX=200 => 200/20 = 10(pH)
Вводим XX=150 => 150/20 = 7,5 = 8(pH)

Линии увеличиваются равномерно, по этому достаточно задать длинну первой и прирост для каждой последующей
PM MAIL ICQ Skype   Вверх
ivan219
Дата 20.3.2007, 07:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: нет
Всего: 12



Яже написал.
Цитата(ivan219 @  19.3.2007,  22:05 Найти цитируемый пост)
Приблизительный пример чего я хочу: 

А зависимость линейная.

Добавлено @ 07:46 
А поповоду того что вы написали я знаю второй рисунок этому пример там риски.

Только вот мне надо чтоб можно было в водить температуру и выберать не из того что есть 0, 10....100С а из любого значения в в данных имеются только те линии которые на ресунке на них можно определить что надо а если температура будет 30С???

Былабы равнобокая трапеция вопрос былбы уже решон а здесь не рабнобокая вот я и решил можт есть какой алгоритм а то я последни раз учебник геометрии барл эдак лет 5 назад smile

Добавлено @ 07:48 
Цитата(Bitter @  19.3.2007,  23:53 Найти цитируемый пост)
Линии увеличиваются равномерно, по этому достаточно задать длинну первой и прирост для каждой последующей

Частично ошибаетесь это справедливо только для равно бокой а умена не равнобокая (или как её там называют)
PM MAIL ICQ   Вверх
ivan219
Дата 20.3.2007, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: нет
Всего: 12



Всё вопрос решон smile
user posted image
PM MAIL ICQ   Вверх
Bitter
Дата 20.3.2007, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный лентяй
***


Профиль
Группа: Завсегдатай
Сообщений: 1209
Регистрация: 15.8.2004
Где: Харьков, Ukraine

Репутация: 4
Всего: 27



Цитата(ivan219 @  20.3.2007,  07:41 Найти цитируемый пост)
Яже написал.

Цитата(ivan219 @  19.3.2007,  22:05 )
Приблизительный пример чего я хочу: 


А зависимость линейная.


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


Цитата(ivan219 @  20.3.2007,  07:41 Найти цитируемый пост)
Частично ошибаетесь это справедливо только для равно бокой а умена не равнобокая (или как её там называют)


С чего вы взяли, что это справедливо только для равнобокой? У Вас каждая линия длинее предыдущей на константу, померяйте в Paint'e если сомниваетесь. Следовательно 
Цитата

достаточно задать длинну первой и прирост для каждой последующей



Цитата(ivan219 @  20.3.2007,  07:41 Найти цитируемый пост)
Только вот мне надо чтоб можно было в водить температуру и выберать не из того что есть 0, 10....100С а из любого значения в в данных имеются только те линии которые на ресунке на них можно определить что надо а если температура будет 30С???


Что-то я не совсем понял этого предложения, но по моему Вы спросили как по предложенному мною методу, вычислить значение pH при температуре 30C?

Очень просто:
1. Необходимо знать длинну первой линии, например 200. И прирост для последующих, например 20.
2. Разделим прирост на 20 (разница температур между первой линией и второй) = R = 1

    Вводим Y = 30С
    Вводим Х = 80
    Считаем pH = X/((200+R*Y)/12) = 80/19,1 = 4,1 = 4
    Вводим Х = 100
    Считаем pH = X/((200+R*Y)/12) = 100/19,1 = 5,23 = 5
    Вводим Х = 200
    Считаем pH = X/((200+R*Y)/12) = 200/19,1 = 10,4 = 10

    Для проверки
    Вводим Y = 40С
    Вводим Х = 80
    Считаем pH = X/((200+R*Y)/12) = 80/20 = 4 = 4
    Вводим Х = 100
    Считаем pH = X/((200+R*Y)/12) = 100/20 = 5 = 5
    Вводим Х = 200
    Считаем pH = X/((200+R*Y)/12) = 200/20 = 10 = 10

А формула, которую Вы привели это тоже самое:
(A-A1)-(B-B1)*T/100 - прирост каждой линии

B-B1+прирост = длинна линии соответствующей температуры

Вот только не понятно, как Вы pH по ней считаете...


Это сообщение отредактировал(а) Bitter - 20.3.2007, 21:43
PM MAIL ICQ Skype   Вверх
ivan219
Дата 21.3.2007, 01:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: нет
Всего: 12



Ну ладно ладно недодумал немного вопрос smile 

Вот только не понятно, как Вы pH по ней считаете...
Тамже написанно pH0-12 т.е. значение на всю длинну от 0 до 12 т.е. длинна всей линии а отдельно pH это по другому путём деления на 12 и дальнейшего сравнения.

Да кстати формула верная проверил если подставить готовый значения то всё получается smile

Добавлено @ 01:58 
Если интересно вот значения точек (T=0 B=381.1 B1=-269.2) (T=100 A=514 A1=-374.4) (T=40 C=434.3 C1=-311.3)
PM MAIL ICQ   Вверх
ivan219
Дата 23.3.2007, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: нет
Всего: 12



Итог:
user posted image
Код

function pH(Const Max_pH, Max_T, Min_pH_MinT, Max_pH_MinT, Min_pH_MaxT,
            Max_pH_MaxT: Real; Only_mV, Only_T: Real): Real;
begin
 Result:=Max_pH*(Min_pH_MinT+(Min_pH_MaxT-Min_pH_MinT)*Only_T/Max_T-Only_mV)/
        (Min_pH_MinT-Max_pH_MinT+((Min_pH_MaxT-Max_pH_MaxT)-
        (Min_pH_MinT-Max_pH_MinT))*Only_T/Max_T);
end;

PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.1209 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.