我刚刚学会了基本代码,你可以告诉我哪里错了吗? [英] Im just learned basic code can u show me where I is wrong?
本文介绍了我刚刚学会了基本代码,你可以告诉我哪里错了吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
#include < iostream >
#include < math.h >
使用 命名空间标准;
void main()
{
int a,b, c,d;
double x,x0,x1,x2;
cout<< nhap a,b,c;
cin>> a>> b>> C;
if (a == 0 )
{
if (b == 0 )
cout<< a va b khong dong thoi bang khong moi ban nhap lai<< ENDL;
else
x0 = -c / b;
cout<< x0<< ENDL;
else
{
d = b * b - 4 * a * c;
if (d< 0 )
{
cout< ;< phuong trinh vo nghiem<< ENDL;
}
if (d == 0 )
{
x = -b /( 2 * a);
cout<< nghiem kep cua phuong tring<< x<< ENDL;
}
如果(d> 0 )
{
x1 =( - b + sqrt(d))/( 2 * a);
x2 =( - b - sqrt(d))/( 2 * a);
cout<< nghiem 1 cua phuong tring la<< x1<< ENDL;
cout<< nghiem 2 cua phuong tring la<< x2<< ENDL;
}
}
system( 暂停跨度>);
}
}
我的尝试: < br $> b $ b
我刚刚学会了基本代码
你能告诉我我错在哪里吗?
解决方案
更改
int a,b,c,d;
to
double a,b,c,d;
你的问题来自于C / C ++处理整数除法的方式。
c - 整数除法的行为是什么? - 堆栈溢出 [ ^ ]
分部 - 如何在c中划分2 int? - 堆栈溢出 [ ^ ]
c - 除法结果始终为零 - 堆栈溢出 [ ^ ]
c - 为什么划分两个整数不会浮动? - 堆栈溢出 [ ^ ]
#include<iostream>
#include<math.h>
using namespace std;
void main()
{
int a, b, c, d;
double x, x0, x1, x2;
cout << "nhap a,b,c";
cin >> a >> b >> c;
if (a == 0)
{
if (b == 0)
cout << " a va b khong dong thoi bang khong moi ban nhap lai" << endl;
else
x0 = -c / b;
cout << x0 << endl;
else
{
d = b*b - 4 * a*c;
if (d < 0)
{
cout << "phuong trinh vo nghiem" << endl;
}
if (d == 0)
{
x = -b / (2 * a);
cout << "nghiem kep cua phuong tring" << x << endl;
}
if (d > 0)
{
x1 = (-b + sqrt(d)) / (2 * a);
x2 = (-b - sqrt(d)) / (2 * a);
cout << "nghiem 1 cua phuong tring la" << x1 << endl;
cout << "nghiem 2 cua phuong tring la" << x2 << endl;
}
}
system("pause");
}
}
What I have tried:
im just learned basic code
can u show me where i is wrong?
解决方案
Change
int a, b, c, d;
to
double a, b, c, d;
Your problem comes from the way C/C++ handle division of integers.
c - What is the behavior of integer division? - Stack Overflow[^]
division - How to divide 2 int in c? - Stack Overflow[^]
c - Division result is always zero - Stack Overflow[^]
c - Why dividing two integers doesn't get a float? - Stack Overflow[^]
这篇关于我刚刚学会了基本代码,你可以告诉我哪里错了吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文