如何在C中放入数学方程

问题描述

| 我一直在尝试在Google上查找如何在程序中添加方程式,但找不到任何方程式。您如何包括
x = ( -b + √b2 - 4ac ) / 2a  
在程序中? 这是我的代码
{
    int a,b,c;
    float x;

    //statements
    printf(\"Enter three integers: \");
    scanf(\"%d %d %d\",&a,&b,&c);

    //computeforX

    x = ( -b + √b2 - 4ac ) / 2a  

    printf(\"The value of x is %.1f\",x);

    return 0;
}
    

解决方法

假设我们在这里谈论的是C(或C ++),您将需要研究
sqrt
函数,也许还要研究
pow
函数(尽管这是不必要的,因为
b
平方可以计算为
b*b
)。 请注意,在开始计算之前,您需要将所有输入值转换为
float
double
,否则将无法获得预期的结果。     ,您需要一个表格来翻译: a + b->
a+b
a-b->
a-b
a / b->
a/b
ab->
a*b
√x->
sqrt(x)
x²->
x*x
(如果您想对更复杂的东西求平方,最好使用一个临时变量求平方的值,将等式分解成小块。) 请注意,如果您在C中将
int
除以ѭ14you,则会得到一个整数。因此最好在除法之前将那些
int
转换为
double
。     ,如果我们正在使用C ++,它将类似于
#include <iostream.h>
#include <cmath>

int main ()

{
//Declare Variables
double x,x1,x2,a,b,c;
cout << \"Input values of a,and c.\" ;
cin >>a >>b >>c;
    if ((b * b - 4 * a * c) > 0)
    cout << \"x1 = (-b + sqrt(b * b - 4 * a * c)) / (2 * a)\" &&
    cout << \"x2 = (-b + sqrt(b * b - 4 * a * c)) / (2 * a)\";

    if else ((b * b - 4 * a * c) = 0)
    cout << \"x = ((-b + sqrt(b * b - 4 * a * c)) / (2 * a)\"

    if else ((b * b - 4 * a * c) < 0)
    cout << \"x1 = ((-b + sqrt(b * b - 4 * a * c) * sqrt (-1)) / (2 * a) &&
    cout << \"x2 = ((-b + sqrt(b * b - 4 * a * c) * sqrt (-1)) / (2 * a);
return (0);
}
现在为什么我会有这种奇怪的感觉,我只是在做某人的第一学期编程课的家庭作业? 授予它已经多年了,我什至都不知道它是否可以编译,但是您应该明白这一点。     ,我很沮丧地看到上面给出的答案和帮助的质量。 我希望改进此线程的内容。 可以使用命令行
gcc file.c -o file -lm
编译下面的C文件。 特此使用C语言解决方案:
#include <stdlib.h>
#include <stdio.h>
#include <math.h>

int main(){
    int da,db,dc;
    double x,c;

    //statements
    printf(\"Enter three integers: \");
    scanf(\"%d %d %d\",&da,&db,&dc);

    a = (double)da;
    b = (double)db;
    c = (double)dc;

    //computeforX
    x = (double) ( -b + sqrt(b * b) - 4 * a * c ) / ( 2 * a )  ;

    printf(\"The value of x is %g \\n\",x);

    return 0;
}