主程序:

#include<iostream>
#include"1.1 hanshu.h"
using namespace std;

/*
设计一个类,该类可以表示一个一元二次函数。
1.该类数据成员包括:函数的参数、变量的取值区间、函数在该区间内的最大值和最小值。
2.该类成员函数包括:求最大值、求最小值。
3.编写一个主程序,能够根据所设计的类定义一元二次函数对象,调用成员函数,分别实现最大值和最小值的计算。
*/

int main()
{
    double a, b, c, m, n;
    cin >> a >> b >> c >> m >> n;
    hanshu s(a, b, c);
    s.maximum(m, n);
    s.show();

return 0;
}

头文件:

#pragma once
#include<iostream>
using namespace std;

class hanshu
{
public:

hanshu(double aa, double bb, double cc);//构造函数

void maximum(double m, double n);//求最大值、求最小值的函数

void show();//展示函数

private:
    double a, b, c;//函数的参数
    double m, n;//函数的定义域(取值区间)
    double max, min;//最大值与最小值
};

类的内容:

#include"1.1 hanshu.h"

hanshu::hanshu(double aa, double bb, double cc) :a(aa), b(bb), c(cc) {}//构造函数的实现

void hanshu::show()//展示函数的实现
{
    cout << "最大值为:" << max << endl;
    cout << "最小值为:" << min << endl;
}

void hanshu::maximum(double m, double n)//求最大值、求最小值函数的实现
{
    double e = (-b) / (2 * a);
    double ym = a * m * m + b * m + c;
    double yn = a * n * n + b * n + c;
    double h = (-b * b) / (4 * a) + c;
    if (a > 0)
    {
        if (e >= m && e <= n)
        {
            min = h;
            if (ym > yn)
            {
                max = ym;
            }
            else
            {
                max = yn;
            }
        }
        else if (e >= n)
        {
            max = ym;
            min = yn;
        }
        else if (e <= m)
        {
            max = yn;
            min = ym;
        }
    }
    else if (a < 0)
    {
        if (e >= m && e <= n)
        {
            max = h;
            if (ym > yn)
            {
                min = yn;
            }
            else
            {
                min = ym;
            }
        }
        else if (e >= n)
        {
            max = yn;
            min = ym;
        }
        else if (e <= m)
        {
            max = ym;
            min = yn;
        }
    }
    else
    {
        if (b > 0)
        {
            max = yn;
            min = ym;
        }
        else if (b < 0)
        {
            max = ym;

min = yn;
        }
        else
        {
            max = c;
            min = c;
        }
    }
}

实验案例:

要点讲解:

1.以上代码使用的是类的分文件编写,运用了构造函数,使得在定义对象的时候可以附上对应的值。

2.一元二次函数的最值判断需要5个参数,分别是a,b,c,m,n,其中abc是定义一元二次函数的参数,m和n分别是取值范围的左右区间。

3.对此代码中所有变量的属性,建议统一使用double或float类型,原因在于即使输入的参数全为整数,结果的数字也有小数的可能,为了计算准确,建议使用浮点型进行编写。

一元二次函数的最值计算相关推荐

  1. 输出任意一元二次函数的结果值

    输出任意一元二次函数的结果值: 一.学习要点: 1.函数可以作为一个函数的返回值,叫做返回函数. 参见:https://www.liaoxuefeng.com/wiki/001374738125095 ...

  2. 函数最值题目及答案_公务员考试行测技巧:巧解一元二次函数最值问题

    在行政职业能力测验的数学运算部分中,有一类题目的问法比较固定,题干会出现"最大"."最小"."至多"."至少"等字眼.这 ...

  3. 一元三次函数的最值计算

    题目要求: 设计一个类,该类可以表示一个一元三次函数. 1.该类数据成员包括:函数的参数.变量的取值区间.函数在该区间内的最大值和最小值. 2.该类成员函数包括:求最大值.求最小值. 3.编写一个主程 ...

  4. 二次函数怎么解用计算机,解二次函数的方法:一元二次函数过已知点,用EXCEL求解系数...

    excle利用公式计算二次函数ax2十bx十x的值 假设X在的位置为表格的:D1; 那么在一个需要输出结果的表格中设置公式如下: =(a*D1*D1) (b*D1) D1 即可. Excel 一元二次 ...

  5. 一个计算一元二次函数的C语言程序

    判断并计算一元二次函数根的情况,在C语言算法设计中是非常简单的.主要依据的就是Δ的正负来判断根的虚实,用Δ的取值来判断根的个数. 代码如下: //一元二次函数实根和虚根 #include " ...

  6. 第九周-求一元二次函数的根

    上机目的:计算出函数的值,自己编程上机任务:求算一元二次函数的根[cpp] view plaincopyprint?01./* 02.* Copyright (c) 2012, 烟台大学计算机学院 0 ...

  7. C语言编程绘制一元二次函数,c语言怎么画出一元二次函数图像

    matlab 已知二次函数系数 怎么画出二次函数图像 x*x不正确,你是需要计算x的平方对吧,那么需要x.*x或者x.^2,点乘如果是x*x表示矩阵相乘,那么如果x是n*1的向量,[n*1]*[n*1 ...

  8. tensorflow一元二次函数拟合

    先看下要做的内容,创建一元二次函数y=x平方-0.5,其中为了更符合散点图模拟需要,在方程加噪点,以标准方差0.05行驶,如图所示 折线图 散点图 下面我们要做的,是要计算机自动拟合出该散点图的函数, ...

  9. 一元线性回归中loss值的变化分析

    1 致谢 感谢陈助教的帮助和解答! 2 前言 线性回归是我们在机器学习算法中学习到的第一个回归算法,所以我们一定要学习并且掌握清楚,为后续的学习奠定良好的基础. 3 问题描述 这几天在做一元线性回归的 ...

最新文章

  1. 【推荐】如何使用好阿里云的网络安全隔离?深入分享阿里云ECS安全组实践经验...
  2. java.util.logging.Logger基础教程
  3. python的所有库_Python 常用库
  4. JSON DATE 转换标准的一些资料(收集)
  5. UVa 10082 WERTYU
  6. OSS(一):OSS工具类
  7. Unity项目捏脸解决方案BlendShape
  8. matlab射击小游戏,Matlab射箭小游戏设计,小虾米求救
  9. Scala特质trait
  10. react useCallback的用法
  11. springboot中使用kafka
  12. GBASE斩获2022科技赋能金融业数字化转型突出贡献奖
  13. iOS开发备战金三银四·头条三面记录
  14. android+9切图工具下载,图片分割工具(9Cut)
  15. 专访淘宝仲明:揭秘阿里运维部的故障响应机制(
  16. 如何面对未来智能化社会
  17. C# wpf 使用ffplay实现视频播放器
  18. ubuntu 交流会!
  19. 拼多多、微信、MT被各大平台的BUG刷屏的2019年1月
  20. 服务器的存储系统中做镜像,缓存镜像技术在存储中的应用

热门文章

  1. 将数字转换成千分位,千分位改成数字
  2. CSS设置文字自动换行
  3. 【考研高数-高等数学-基础】第二章 导数与微分
  4. matlab 如何axis,在matlab中axis是什么意思,matlab中axis的用法
  5. 盘点 2012 年没落科技巨头
  6. 全网最详细的Neo4j安装教程
  7. 无线地磁传感器更适合路边停车系统
  8. uview + uni-app 开发app,密码显示隐藏功能不生效
  9. 学习英语01——听力——剑雅12 T6S2
  10. kettle闪退问报错无法打开图形界面ETI安装问题