gpt4 book ai didi

c++ - 代码计算故障排除c++

转载 作者:行者123 更新时间:2023-11-28 06:56:35 26 4
gpt4 key购买 nike

谁能告诉我为什么 kertXAsiX1 = 1.20711 和 kertXasiX2 = 0.207107?什么时候应该是4.82842和0.82842

#include <bits/stdc++.h>
#include <iostream>

using namespace std;

int main()
{
float a = -0.5 , b=-2 , c=2, xVirsunes, yVirsunes, diskriminantas, kertXAsiX1, kertXasiX2, kertXAsiY, kertYAsiX, kertYAsiY;
cout << "Sveiki! Parasykite kvadratines funkcijos (ax*x + bx + c) a, b ir c\nreiksmes" << endl;
if (a > 0)
{
cout << "Funkcijos sakos ziuri i virsu" << endl;
}
else if(a < 0)
{
cout << "Funkcijos sakos ziuri zemyn" << endl;
}

xVirsunes = static_cast<double> ((-b)/(2*a));
yVirsunes = static_cast<double> (a * xVirsunes * xVirsunes + b * xVirsunes + c);

cout << "Virsunes koordinate: (" << xVirsunes << ";" << yVirsunes << ")" << endl;

kertXAsiY = 0;
diskriminantas = static_cast<double>(b * b - 4 * a * c);
kertXAsiX1 = static_cast<double> ((-b+sqrt(diskriminantas))/2 * a);
kertXasiX2 = static_cast<double> ((-b-sqrt(diskriminantas))/2 * a);

if (static_cast<double>(diskriminantas) < 0)
{cout << "Funkcija nekerta x asies" << endl;}
else if (static_cast<double>(diskriminantas) >= 0)
{
if (static_cast<double>(kertXAsiX1) != static_cast<double>(kertXasiX2))
{cout << "Funkcija kerta x asi taskuose: (" << static_cast<double>(kertXAsiX1) << ";" << static_cast<double>(kertXAsiY) << ") ir (" << static_cast<double>(kertXasiX2) << ";" << static_cast<double>(kertXAsiY) << ")" << endl;}

else if (kertXAsiX1 == kertXasiX2)
{cout << "Funkcija liecia x asi taske (" << kertXAsiX1 << ";" << kertXAsiY << ")" << endl;}
}

kertYAsiX = 0;
kertYAsiY = c;

cout << "Funkcija kerta y asi taske (" << kertYAsiX << ";" << kertYAsiY << ")" << endl;
if (a < 0)
{
cout << "Funkcijos didziausia reiksme yra " << yVirsunes << " kai x = " << xVirsunes << endl;
}
else if (a > 0)
{
cout << "Funkcijos maziausia reiksme yra " << yVirsunes << " kai x = " << xVirsunes << endl;
}

if (a > 0 && diskriminantas < 0)
{
cout << "f(x) > 0, kai x priklauso nuo -begalybes iki +begalybes" << endl;
}
else if (a > 0)
{
cout << "f(x) > 0, kai x priklauso nuo -begalybes iki " << kertXasiX2 << " ir nuo " << kertXAsiX1 << " iki +begalybes" << endl;
cout << "f(x) < 0, kai x priklauso nuo " << kertXasiX2 << " iki " << kertXAsiX1 << endl;
}
else if (a < 0 && diskriminantas < 0)
{
cout << "f(x) < 0, kai x priklauso nuo -begalybes iki +begalybes" << endl;
}
else if (a < 0)
{
cout << "f(x) > 0, kai x priklauso nuo " << kertXAsiX1 << " iki " << kertXasiX2 << endl;
cout << "f(x) < 0, kai x priklauso nuo -begalybes iki " << kertXAsiX1 << " ir nuo " << kertXasiX2 << " iki +begalybes" << endl;
}
return 0;
}

抱歉非英文代码

最佳答案

你有

(-b+sqrt(diskriminantas))/2 * a

在您的代码中,与

相同
a * (-b + sqrt(diskriminantas))/2

...我想您可以从那里弄明白。

关于c++ - 代码计算故障排除c++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23093197/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com