设计一个程序,输入a,b,c,m,n的值,输出二次函数y=ax^2+bx+c在闭区间[m,n]上的最大 值和最小值

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/30 01:46:57
设计一个程序,输入a,b,c,m,n的值,输出二次函数y=ax^2+bx+c在闭区间[m,n]上的最大 值和最小值
xSmkP+Ye!IL_޴Br-K1(}vnRU8/ N2&&ں}v<7$W'8QPO =X#, 4YGmQ_mzfT'# ';s/ vk #ԯW/sWXDWOj )EJԲ]1JCAŸ(gBD+KTQS>%0pI4ü7/s-L7javeLl!"Q% IyC@ׅ+d7Z7i^5$r)* 㖃j. K5ʊ[WYK'o phM4 Ĝ9^pMhd햆5KxpBYq^ |S3iPt5wamXtu9Ή ;3>;>!wXݏ(9#6M8!?S½x ?9y%eL Uen

设计一个程序,输入a,b,c,m,n的值,输出二次函数y=ax^2+bx+c在闭区间[m,n]上的最大 值和最小值
设计一个程序,输入a,b,c,m,n的值,输出二次函数y=ax^2+bx+c在闭区间[m,n]上的最大 值和最小值

设计一个程序,输入a,b,c,m,n的值,输出二次函数y=ax^2+bx+c在闭区间[m,n]上的最大 值和最小值
//y=ax^2+bx+c
//参考
#include<stdio.h>
#include<stdlib.h>
int main()
{
int s,n,m,a,b,c;//定义变量
scanf("%d%d%d%d%d",&a,&b,&c,&n,&m) ;
if (a==0) //a==0的情况
if (b==0)
printf("ymax=%d\n",c);
else printf("ymax=%d\n",abs(n+c/b)>=abs(m+c/b)?b*n+c:b*m+c);
else
{
s=(b*b-4*a*c)/(4*a);//二元
if (a>0) //a>0
printf("ymax=%d\n",abs(n-s)>=abs(m-s)?a*n*n+b*n+c:a*m*m+b*m+c);
else
printf("ymax=%d\n",abs(n-s)<=abs(m-s)?a*n*n+b*n+c:a*m*m+b*m+c);
}
}
如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!