- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
#include "math.h"
#include <iostream>
void Resolve(
float a, float b, float c, // коэффициенты уравнения
int& count, float x[2] // число корней, сами корни
// если корней нет, то значения x[0] и x[1] не определены
// если корень один, то значение x[1] не определено
// если корней бесконечно много, то вернуть INT_MAX
// предполагается, что a,b,c и корни по модулю не превосходят 1E10
)
{
const float MAXFREV = 1e-10f;
if (a==0.0 && b==0.0 && c==0.0)
{
count = INT_MAX;
} else
{
count = 0;
float d = b*b-4.0f*a*c;
if (d==0.0f)
{
if (2.0f*abs(a)>abs(b)*MAXFREV)
x[count++] = -b/(2.0f*a);
} else if (d>0.0f)
{
float num = -b - sqrt(d);
if (2.0f*abs(a)>abs(num)*MAXFREV)
x[count++] = num/(2.0f*a); // (-b-sqrt(d))/2a
if (abs(num)>2.0f*abs(c)*MAXFREV)
x[count++]=(2.0f*c)/num;
}
}
}
int main ()
{
float x[2];
int count;
Resolve (0.0001f,2.000f,0.001f, count, x);
std::cout << "count= " << count;
if (count<=2)
for (int i=0; i<count; ++i)
std::cout << ", x[" << i << "]= " << x[i];
std::cout<<std::endl;
return 0;
}
Просто решение квадратного уравнения.
На флоатах.
Числа подобраны так, что классическая формула лажает, выдавая второй корень -0.000596 вместо -0.0005
TarasB 18.06.2013 11:35 # +4
dwarf_with_beer 18.06.2013 12:24 # +2
bormand 18.06.2013 11:57 # +5
О_о. Этот код вполне достоен находиться на этом сайте.
TarasB 18.06.2013 12:00 # +1
bormand 18.06.2013 12:09 # +3
bormand 18.06.2013 12:12 # +1
TarasB 18.06.2013 13:13 # 0
dwarf_with_beer 18.06.2013 12:23 # +1
bormand 18.06.2013 12:25 # 0
dwarf_with_beer 18.06.2013 12:26 # +2
superhackkiller1997 18.06.2013 13:21 # −7
Что ты этим "уравнением" считать собрался? Бесполезные задачки из детсада?
TarasB 18.06.2013 13:25 # 0
superhackkiller1997 18.06.2013 13:33 # −6
В твоём том выхлопе( который я не видел по причине того, что это убожство писало безрукое анскильное питушко типа тебя) я вижу ссылку на выхлоп какого-то питуха, который сложнее "идеального" решения детсадовской питушни не писал. Который не понимает разницу между программированием и борьбой с особенностями питушарского флоата. Знай он хоть 100500раз - он питух, который нихрена вменяемого не напишет.
И такие питухи, которые постят пасты других питухов - питухи. Если ты не можешь сформулировать задачу, которую тебе надо решить - ты питух, а твой код питушня, который работает на изимодной копипасте формулок из интернетов(учебников).
И когда такие питухи пытаются что-то из себя стриоть - мне становится смешно.
TarasB 18.06.2013 13:38 # +10
видит питух, в питухе питух
сунул питух питух в питух
питух питух питух питух
Я даю тебе задание - вывести уравнение для точки пересечения конуса и луча. Если ты таки напряжёшь то, что у тебя вместо мозгов под черепной коробкой, то ты довольно быстро придёшь к квадратному уравнению.
А пока я засчитываю тебе слив, на первой же задаче, в которой возникают реальные проблемы с точностью промежуточных вычислений, и в которой твои попугаи будут сосать своими клювами у плавучки, наскипидаренной к тому же на иррациональные функции, ты предпочёл отпиздеться, что это всё питушня, вместо того, чтобы начать думать.
Доказательств своей скилльности ты не предоставил, так что пока мы все будем считать тебя питухом.
guest 18.06.2013 13:48 # −10
TarasB 18.06.2013 14:01 # +4
3.14159265 18.06.2013 16:08 # +4
Та пиздец, вижу ты вне себя от гнева.
Сначала бегает по двору "дайте мне задание". Дали десяток.
В итоге дешевый слив "нормальных примеров(реальных) придумать не можете", "не интересно", итп.
Надоели скучные обоипримеры, в общем.
guest 18.06.2013 16:26 # −7
superhackkiller1997 18.06.2013 13:49 # −6
Питух. Мне не нужно решать питушню к которой пришел твой недомозг. Мне нужен конкретный пример. У тебя, питуха, никогда не будет разброса даже 3порядка в твоей говноискалке, иначе она не взлетит - значит ты пропитушился.
Ещё питух, если я напишу решайко которая решат для чисел в пределах пары порядков - ты начнёшь кукарекать, что нихрена на реботает, ибо ты питух. Поэтому мне не интересно решать твою бесполезную питушню.
Поэтому ты уже пропитушился со своими конусами, ибо решил слиться с самой задачи на знакомое тебе решением, а потом уже с конусов слился до уравнений. Так ты питух и будешь дальше сливаться.
Поэтому хотя с конусами не пропитушись и выкатывай пример который ищет столкновение с твоим конусом, а не делает нипойми какую питушню.
Меня не интересует мнение анскильных питухов обо мне. Меня не интересует скилл реализации питушнятский решений проблемы от питушков. Я не вижу смысла в твоём выхлопе. В соседнем пациент хоть хочет искать икс в окружности с радиусом v^2-g. Мне не ясно только зачем - но хоть обозначил требуему точность и примеры - а ты питух.
TarasB 18.06.2013 14:02 # +12
Ты думаешь, я это дело не пилил? Это называется проекция своей анскильности на других.
Решения я от тебя не увижу, только визжание.
Короче, питух засчитан.
superhackkiller1997 18.06.2013 14:45 # −10
TarasB 18.06.2013 14:48 # +10
ПИТУХ ЗАСЧИТАН
suc-daniil 19.06.2013 17:17 # −4
eth0 19.06.2013 18:36 # +6
Vasiliy 19.06.2013 22:36 # +3
LispGovno 20.06.2013 00:27 # +5
TarasB 20.06.2013 09:31 # +1
bormand 20.06.2013 09:52 # 0
TarasB 20.06.2013 09:58 # 0
bormand 20.06.2013 10:10 # +1
Потому что руки устанут ;)
> слишком много
Т.е. немного (3-5 тем) можно?
3.14159265 20.06.2013 13:43 # 0
bormand 20.06.2013 15:55 # 0
Lure Of Chaos 20.06.2013 20:38 # +5
господа, учитесь держать удар достойно, в жизни пригодится.
bormand 20.06.2013 21:14 # +1
Да я то вообще толерантен к долбоёбам, я их иногда даже кормлю, если они голодны ;)
3.14159265 20.06.2013 21:37 # −3
Ну кто бы гойворил.
На прошлой неделе, не мы тут бегали и призывали страйкера навести справедливость.
Как по мне чем больше говна - тем лучше говнокоду.
eth0 21.06.2013 06:21 # +2
Больше треша, угара, зоофилии и обмазывания стен говном?
Всё хорошо в меру, у нас же не интернат для душевнобольных.
Lure Of Chaos 21.06.2013 08:32 # 0
guest 18.06.2013 13:33 # −3
bormand 18.06.2013 19:02 # 0
guest 18.06.2013 21:13 # +2
TarasB 18.06.2013 21:23 # 0
с точки зрения вычмата, это выражение является говном для положительного b, есть риск вычесть близкие числа
И мой код с отрицательными b будет делать говно тоже.
guest 18.06.2013 21:25 # +1
на строчку:
guest 18.06.2013 22:09 # +2
LispGovno 19.06.2013 08:39 # 0
superhackkiller1997 19.06.2013 17:54 # −1
TarasB 19.06.2013 17:59 # +1
defecate-plusplus 19.06.2013 18:05 # +8
ты всё доказываешь превосходство сухопутного питуха - ну так покажи уже, кончай пиздеть
TarasB 19.06.2013 18:14 # +5
На переднем плане - плавающий питух
eth0 19.06.2013 18:38 # 0
LispGovno 20.06.2013 00:39 # +3
Угадай кто?
superhackkiller1997 19.06.2013 18:27 # −2
Что даёт этот код? Нихрена. Поэтому царю лень пилить питушню. Зачем в его конусах точность даже 3порядка - она не нужна, но он жешь гениальный решатель питушни. Поэтому пусть приводит реальную задачу - что и как он считает и т.п. А уж я сам выбиру как её считать.
defecate-plusplus 19.06.2013 18:35 # +1
где решение про снаряд?
LispGovno 20.06.2013 00:42 # +1
Xom94ok 18.06.2013 23:07 # +2
http://ideone.com/JwDUGG
Да, если по-чесноку: не раскрыл бы Тарас все карты про проблемы типичных решений, то я бы сначала посчитал по дискриминанту, а потом уже взялся бы за градиент.
Xom94ok 19.06.2013 00:11 # 0
bormand 19.06.2013 05:50 # +2
defecate-plusplus 19.06.2013 09:05 # +5
scared?
шкваред!
Xom94ok 19.06.2013 09:50 # 0
neeedle 20.06.2013 04:51 # +4
Это печально.
inkanus-gray 20.06.2013 08:58 # +8
neeedle 20.06.2013 10:54 # 0
:'(
bormand 20.06.2013 11:10 # +2
Питушиный Птичий грипп свирепствует на говнокоде, унося все новые и новые жизни.
MAKAKA 11.09.2020 23:26 # 0
3.14159265 20.06.2013 13:44 # 0
Пофорси немного "пиписюнчик" или подобную хуиту и все будут повторять.
Vasiliy 20.06.2013 15:57 # 0
bormand 20.06.2013 16:01 # +1
gost 11.09.2020 09:38 # 0
LispGovno 20.06.2013 15:58 # 0
bormand 20.06.2013 16:03 # +3
inkanus-gray 20.06.2013 20:46 # +3
roman-kashitsyn 20.06.2013 21:03 # +3
царь же
LispGovno 20.06.2013 21:17 # +1
eth0 20.06.2013 20:12 # 0
Lure Of Chaos 20.06.2013 20:35 # +1
neeedle 21.06.2013 04:45 # 0
anonimb84a2f6fd141 21.06.2013 03:42 # −4
Tim_Walker 25.08.2021 19:35 # 0