求方程 ax^2+bx+c=0的根,用3个函数分别求当: b^2-4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值


求方程 \({ax}^2+bx+c=0\)的根,用3个函数分别求当: \(b^2-4ac\)大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值

题目解析

根据disc = \(b^2-4ac\) 的值来决定如何求根,题目本身编程不难,不过需要同学们复习一下高中的数学知识哦。

代码示例

#include<stdio.h>
#include<math.h>

//x1为第一个根,x2为第二个根
float x1, x2, disc, p, q;

void greater_than_zero(float a, float b)
{
	float m = sqrt(disc);
	x1 = (-b + sqrt(disc)) / (2 * a);
	x2 = (-b - sqrt(disc)) / (2 * a);
}

void equal_to_zero(float a, float b)
{
	x1 = x2 = (-b) / (2 * a);
}

void smaller_than_zero(float a, float b)
{
	p = -b / (2 * a);
	q = sqrt(-disc) / (2 * a);
}

int main()
{
	int a, b, c;
	printf("请输入 a b c:");
	scanf("%d %d %d", &a, &b, &c);

	printf("表达式为: %d*x^2+%d*x+%d = 0\n", a, b, c);
	disc = b*b - 4 * a*c;

	if (disc > 0)
	{
		greater_than_zero(a, b);
		printf("disc>0的根为: x1=%f    x2=%f\n", x1, x2);
	}
	else if (disc == 0)
	{
		equal_to_zero(a, b);
		printf("disc==0的根为:x1=%f    x2=%f\n", x1, x2);
	}
	else
	{
		smaller_than_zero(a, b);
		printf("disc<0的根为:x1=%f+%f x2=%f-%f\n", p, q, p, q);
	}
	return 0;
}

运行结果:

求方程 ax^2+bx+c=0的根,用3个函数分别求当: b^2-4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



猜您在找 编写一个求方程ax^2+bx+c=0的根的程序,用3个函数分别求当b^2-4ac大于零、等于零和小于零时的方程的根。要求从主函数输入a、b、c的值并输出结果-简单 求方程ax2+bx+c=0的根,用3个函数分别求当: b2−4ac大于0、等于0和小于0时的根并输出结果从主函数输入a,b,c的值 求方程 的根,用三个函数分别求当b^2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值 求方程 的根,用三个函数分别求当b2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值。 【C语言】求方程ax^2+bx+c=0的根, a,b,c由键盘输入。 用自顶向下、逐步细化的方法进行以下算法的设计 输出1900---2000年中是软黏的年份,符合下面两个条件之一的年份是闰 求$ax^2 + bx + c = 0$的根。分别考虑$d = b^2 - 4ac$大于0、等于0和小于0这三种情况 输入10个数,输出其中最大的一个数。 用牛顿迭代法求根。方程为ax^3+bx^2 +cx+d=0,系数a,b,c,d的值依次为1,2,3,4,由主函数输人。求x在1附近的一个实根。求出根后由主函数输出 8.12 用牛顿迭代法求根。方程为:ax^3+bx^2+cx+d=0 ,系数a,b,c,d由主函数输入。求X在1附近的一个实根。求出后由主函数输出. Python程序计算ax^2+bx+c=0方程根 python 练习题:定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程ax^2+bx+c=0的两个解
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM