|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <bits/stdc++.h>
- using namespace std;
- int main(){
- int l, s; //l是周长 , s是面积
- double delta; //二次方程的判别式 , b2 - 4ac
- scanf("%d%d", &l,&s);
- delta = pow(l, 2)/4 - 4*s; //设一条边为a , 二次方程为 a(l/2 - a) = s , 即 -a2 + l/2*a - s = 0
- if (delta == 0){
- printf("长和宽都是: %f", l/4); //韦达定理 -b/2a == x1 + x2 , 然后判别式是0 , 所以除以2
- }
- else if (delta > 0){
- printf("长是: %f , 宽是: %f", l/4 + sqrt(delta)/2, l/4 - sqrt(delta)/2); //求根公式
- }
- else{
- printf("找不到这样的"); //判别式小于零无解
- }
- return 0;
- }
复制代码
代码如上 , 就是输入周长和面积 , 求长方形边长的程序 , 但是求出来的值是错的 , 不知道问题出在哪
或者如果有更好的方法 , 请贴在下面 , 谢谢
|
|