扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
函数abc的功能是求u和v的最大公约数。
专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!创新互联为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,成都网站建设、成都做网站负责任的成都网站制作公司!
这里传进来的u=24 v=16 第一次24%16=8
w=8 u=16 v=8
第二次:u%v=0也就是w=0,这时候u=8 v=0结束循环,返回的u=8
所以结果就是8
挺有意思的问题,简单谈一下看法
将你的需求分成两部分,一是让程序自行解析用户输入的函数解析式,二是绘制函数图像。
首先,关于第一个功能,最直接的思路就是字符串解析,按照数学知识定义不同的运算符号,按照使用习惯定义常用的变量和常量的符号字母,然后据此规则解析输入的字符串,再根据解析结果确定函数中基本运算的次数及运算顺序,最后将整个操作流程以一定形式存储起来即可。
例如,对于y=log(x^2+x),包含三次基本运算,第一步是x^2,第二步是上一步的结果+x,第三步是上一步的结果求对数。注意到log有定义域的限制,这也是要在程序中实现的。
然后,对于第二个功能,根据给定函数绘制图像并不难,对于一元和二元函数来说很容易实现,难点在于多元函数应如何绘制直观易懂的函数图像?不过这一点超出编程语言的范畴了,而且二元函数可以满足大部分应用场景了。
绘制函数图像的程序只需在定义域上按指定的步长求出不同自变量对应的函数值,然后将点连成线,即可绘制出函数图像。例如对于logx,定义域为x0。假设步长为0.1,则可求出0.1,0.2,0.3,...,99.9,100.0的函数值,然后绘制出点,再连点成线,即可得到函数图像。
另外,这里还有很多细节没有讨论,例如输入数据是字符串还是图像;是否可以用其他方法解析输入,例如神经网络。这些就很复杂了,不再深入。
回答中可能有考虑不周的地方,希望上述内容对你有参考意义
单纯看给出的代码片段,应该是一个简单的色环电阻读数用的程序,输入色环颜色,估计输出是阻值和精度
本函数为求字符长度的函数。
int fun(char *s)
{char *t=s; //t取s的首地址
while(*t++); //t自己遍历,到字符末也就是 ‘\0’的时候,也是,s有几个字符,就++几次,到不能加的时候,停止循环,
return(t-s); //首先,字符是一个字节的大小,所以t-s就是char *s的长度,又因为*t到‘\0’的时候还加一次,所以长度包括‘\0’.
}
#includestdio.h
#includestdlib.h
int main()
{
float k,b,x1,y1,x2,y2;
printf("请按照x1,y1,x2,y2的顺序依次输入\n");
scanf("%f,%f,%f,%f",x1,y1,x2,y2);
b=(y2-y1)/(x2-x1);
k=(y1-b)/x1;
printf("y=%fx+%f\n",k,b);
return 0;
}
#include "stdio.h"
#include "math.h"
/*求一元二次方程ax*x+bx+c=0的解*/
main()
{
float a,b,c,d,e,f,k,n,m;
printf("请输入X1的值:");
scanf("%f",a);
printf("请输入Y1的值:");
scanf("%f",b);
printf("请输入X2的值:");
scanf("%f",c);
printf("请输入Y2的值:");
scanf("%f",d);
printf("请输入X3的值:");
scanf("%f",e);
printf("请输入Y3的值:");
scanf("%f",f);
k=(a*c*f*(c-a)+b*c*e*(e-c)+a*d*e*(a+e))/(e*e*(c-a)+a*a*(e-c)+c*c*(a-e));
n=(a*a*(k-d) -c*c*(k-d))/(c*c*a-a*a*c);
m=(b-n*a-k)/(a*a);
{
printf("k=%f\n",k);
printf("n=%f\n",n);
printf("m=%f\n",m);
printf("该二次函数解析式为:y=%fx²+%fx+%f\n",k,n,m);
}
}
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流