当前位置:首页 » 编程语言 » c语言delta
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言delta

发布时间: 2022-07-23 14:44:26

‘壹’ 【c语言菜鸟】c语言里delta是啥意思

delta表示Δa,通常用于表示变量。

‘贰’ c语言编程

#include<stdio.h>
#include<cmath>
int main(){
double a, b, c;
double x1,x2,d;
scanf("%lf %lf %lf",&a,&b,&c);
if(a == 0 && b == 0 && c == 0)printf("无穷解\n");

d = b*b - 4*a*c;
if(d < 0)printf("无解\n");
else if(d == 0){
x1 = x2 = -b/(2*a);
printf("一个解: %lf\n",x1);
else{
if(a == 0)printf("方程为一次方程!解为%lf\n",(-c)/b);
else{
x1 = (-b + sqrt(d))/2*a;
x2 = (-b - sqrt(d))/2*a;
printf("两个解,分别为: %lf,%lf\n",x1,x2);
}
}
return 0;
}

‘叁’ C语言问题

1
#include <stdio.h>
void Mystrcat(char *p, char *q)
{
while(*p)
p++;
while(*q)
*(p++) = *(q++);
*p = '\0';
}
void main( ) {
char p[40], q[40];
gets(p);
gets(q);
Mystrcat(p, q);
puts(p);
}

2
#include <stdio.h>
void myStrcpy(char a[], char b[])
{
int i;
for(i = 0; b[i]; i++)
a[i] = b[i];
a[i] = '\0';
}
void main( ) {
char p[40], q[40];
gets(q);
myStrcpy(p, q);
puts(p);
}

3
#include <stdio.h>
void myStrcpy(char *p, char *q)
{
while(*q)
*(p++) = *(q++);
*p = '\0';
}
void main( ) {
char p[40], q[40];
gets(q);
myStrcpy(p, q);
puts(p);
}

‘肆’ C语言求一元二次方程的根为什么不直接写delta>0,而写成delta>1e-12

如果判断是否相等,对于浮点数而言,由于计算精度的限制及进制转换的误差,计算结果会存在误差。这时,如果直接判断是否等于零,可能会造成计算时间过长,没有必要,严重时可能还会造成死循环。

如果是不含等号的比较,两者差别不大。写成delta>1e-12可以理解成小于1e-12的就认为是0,和前面说的是一个道理。

‘伍’ c语言函数编程

#include <stdio.h>
#include <math.h>
float solut(float a,float b,float c, float d)
{
float x=1,x0,f,f1;
do
{
x0=x;
f=((a*x0+b)*x0+c)*x0+d;
f1=(3*a*x0+2*b)*x0+c;
x=x0-f/f1;
}
while(fabs(x-x0)>-1e-3);
return(x);
}
main()
{
float a,b,c,d;
printf("\ninput a,b,c,d:");
scanf("%f,%f,%f",&a,&b,&c,&d);
printf("equation is:%5.2fx^3+%5.2fx^2+%5.2fx+%5.2f=0",a,b,c,d);
printf(\nx=%10.7\n",solut(a,b,c,d);
}

‘陆’ [C语言问题]谁能帮我解答一下,else后面为什么不能跟(delta<0)

else 后面原本就没东西。你把前面的else if拆了变成两个嵌套的if语句可能就理解了,如下:

if(delts>0)
{
...
}
else
if(delta==0)
{
...
}
else
{
...
}

你看上面的程序,两个else后面都应该没东西。

要是按照你的想法,那可以直接这样写:

if(delts>0)
{
...
}
else(delta==0)
{
...
}
else(delta<0)
{
...
}

但很明显,是错误的!!

‘柒’ c语言中如何编写 exp( -t^2 / (2*delta^2*T^2) ) / ( delta*T*sqrt(2*pi) )

#include<math.h>
#define PI 3.1415926
exp(-t*t/(2*delta*delta*T*T))/(delta*T*sqrt(2*PI));

‘捌’ C语言编程求帮助!!

//1
#include<stdio.h>

intmain(){
inti=1,sum=0;
while(i<100){
sum+=i*(i+1);
++i;
}
printf("%d ",sum);
return0;
}

#include<stdio.h>
//2
intmain(){
doublei=1,delta=1;
doublesum=0,sign=1;
while(delta>=1E-4){
sum+=sign/i;
sign=-sign;
++i;
delta=1/i;
}
printf("%lf ",sum);
return0;
}
//3
#include<stdio.h>

intmain(){
intn,i,j;
printf("输入行数: ");
scanf("%d",&n);
if(n<1||n>15)n=11;
for(i=0;i<n;++i){
for(j=0;j<i;++j)printf("");
for(j=n-i;j>1;--j)printf("%3d",j);
for(j=1;j<=n-i;++j)printf("%3d",j);
printf(" ");
}
return0;
}

‘玖’ c语言求解这里为啥错了 还有delta=0那里为啥要加两个等号 ………一个等号是无解

==是判等,=是赋值
两个运算符的意义完全不同

‘拾’ C语言,求一元二次方程的解

对于如下的一元二次方程:

ax*x+bx+c=0

设计C语言程序,输入一元二次方程的三个系数a、b、c,求解出该方程的两个根,并且允许用户在程序中多次输入不同的系数,以求解不同的一元二次方程的解。

编程思路分析:

对于该方程,令delta=b^2-4*a*c,从数学的角度来讲,我们需要根据delta的值来判断该方程的根情况:

当delta>=0时,其两个根为实数解,分别为(-b+sqrt(delta))/(2*a)和(-b-sqrt(delta))/(2*a);

当delta<0时,其两个根为复数解,实部皆为-b/(2*a),虚部分别为sqrt(-delta)/(2*a)和-sqrt(-delta)/(2*a)。

其中,sqrt(delta)代表对delta作开根号运算。

在代码设计中,可定义一个结构体Complex存储该方程的根,在该结构体中包括实部和虚部两个变
在程序中,定义两个Complex类型的根x1和x2,当delta>=0时,两个根的虚部为0,否则,分别求解两个根的虚部值。
具体编程如下:

#include"stdio.h"
#include"math.h"
/*求一元二次方程ax*x+bx+c=0的解*/
main()
{floata,b,c,x1,x2,d;
printf("请输入a:");
scanf("%f",&a);
printf("请输入b:");
scanf("%f",&b);
printf("请输入c:");
scanf("%f",&c);
d=b*b-4*a*c;if(d<0)
printf("方程没有实数解。 ");
if(d==0){x1=(-b)/(2*a);
printf("x1=%f ",x1);}
if(d>0){x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%f,x2=%f ",x1,x2);}}
请输入a:12
请输入b:34
请输入c:4
x1=-0.122985,x2=-2.710348
Pressanykeytocontinue

为迭代序列。