当前位置: 首页 > news >正文

网页设计实验报告操作步骤seo优化技巧

网页设计实验报告操作步骤,seo优化技巧,哪个公司做网站便宜,seo网站推广优化论文描述 编写一个程序,实现求解形如ax^2 bx c 0的二次方程的根。要求使用三个函数分别计算b^2 - 4ac大于0、等于0和小于0时的根,并在主函数中输出结果。 输入 输入三个浮点数a、b和c,分别表示二次方程的系数。 输出 输出二次方程的根&am…

描述

编写一个程序,实现求解形如ax^2 + bx + c = 0的二次方程的根。要求使用三个函数分别计算b^2 - 4ac大于0、等于0和小于0时的根,并在主函数中输出结果。

输入

输入三个浮点数a、b和c,分别表示二次方程的系数。

输出

输出二次方程的根,格式为两个浮点数,用空格隔开。

输入样例 1 

5 -4 -1

输出样例 1

x1=1.000 x2=-0.200
#include <iostream>
#include <cmath>       //需要用到sqrt函数
#include <iomanip>      //需要用到保留几位小数当中
#include <utility>       //需要用到pair
using namespace std;pair<float, float> dayu(float a, float b, float c)
{float t = sqrt(b * b - 4 * a * c);float x1, x2;x1 = (-b + t) / (2 * a);x2 = (-b - t) / (2 * a);pair<float, float>result;result = make_pair(x1, x2);return result;                  //此处需要返回两个值
}float dengyu(float a, float b, float c)
{float x1, x2;x1 = x2 = (-b) / (2 * a);return x1;
}float xiaoyu(float, float, float)
{return 0;
}int main()
{float a, b, c;cin >> a >> b >> c;float t = b * b - 4 * a * c;float x1, x2;if (t > 0){pair<float, float> result = dayu(a, b, c);cout << fixed << setprecision(3) << "x1=" << result.first;cout << " ";cout << fixed << setprecision(3) << "x2=" << result.second;}else if (t == 0){x1 = x2 = dengyu(a, b, c);cout << fixed << setprecision(3) << "x1=" << x1 << " x2=" << x2;}else{xiaoyu(a, b, c);cout << "此方程无解!";}return 0;
}

 问题点:

目录

①:函数模版

②:函数的重载

③:pair的用法

1)C++中的pair是一个模板类,用于存储两个不同类型的值。它将两个值组合在一起,可以用来表示一个键值对或者简单的有序组。

2)pair 实际上可以看作一个内部有两个元素的结构体,且这两个元素的类型是可以指定的,如下:

3)pair 中只有两个元素,分别是 first 和 second ,只需要按正常结构体的方式去访问即可。 

④:“std::”是什么?


①:函数模版

所谓函数模板,实际上是建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表,这个通用函数就称为函数模板。

凡是函数体相同的函数都可以用这个模板来代替,不必定义多个函数,只需在模板中定义一次即可。在调用函数时系统会根据实参的类型来取代模板中的虚拟类型,从而实现不同函数的功能。

#include <iostream>

using namespace std;

template <typename T>          //模板声明,其中的T为类型参数

T max(T a,T b,T c)

{

if(b>a) a=b;

if(c>a) a=c;

return 0;

}

int main( )

{

int i1=1,i2=3,i3=3,i;

double d1=1.1,d2=2.2,d3=3.3,d;

long g1=24324,g2=876775,g3=5465646,g;

i=max(i1,i2,i3);                 //调用模板函数,此时T被int取代

d=max(d1,d2,d3);            //调用模板函数,此时T被double取代

g=max(g1,g2,g3);            //调用模板函数,此时T被long取代

cout<<i<<" "<<d<<" "<<g<<endl;

return 0;

}

定义函数模板的一般形式为:

template <typename T>

通用函数定义

//或

template <class T>

通用函数定义

 template的含义是“模板”,尖括号中先写关键字typename(或class),后面跟一个类型参数T,这个参数实际上是一个虚拟的类型名,表示模板中出现的T是一个类型名,但是现在并未指定它是哪一种具体的类型。

类型参数可以不止一个,可以根据需要确定个数,如:

template <class T1 , typename T2>

用函数模板比函数重载更方便,程序更简洁。但应注意它只适用于函数体相同,函数的参数个数相同而数据类型不同的情况。如果参数个数不同,则不能用函数模板。

②:函数的重载

C++中允许用同一函数名定义多个函数,而这些函数的参数个数和参数类型可以不相同。这就是函数的重载,即对一个函数名重新赋予它新的含义,使一个函数名可以多用。所谓重载,其实就是“一物多用”。 函数可以重载,运算符也可以重载,例如:运算符“<<”和“>>”既可以作为位移运算符,又可以作为输出流中的插入运算符和输入流中的提取运算符。

重载函数的参数个数、参数类型或参数顺序三者必须至少有一种不同,函数返回值类型可以相同也可以不同。

在使用重载函数时,同名函数的功能应当相同或相近,不要用同一函数名去实现完全不相干的功能,虽然程序也能运行,但可读性不好,易使人莫名其妙。

③:pair的用法

1)C++中的pair是一个模板类,用于存储两个不同类型的值。它将两个值组合在一起,可以用来表示一个键值对或者简单的有序组。

要使用 pair,应先添加头文件 #include <utility>,并在头文件下面加上 " using namespace std; " ,然后就可以使用了。

注意:由于 map 的内部实现中涉及 pair,因此添加 map 头文件时会自动添加 utility 头文件,此时如果需要使用 pair ,就不需要额外再去添加 utility 头文件了。

2)pair 实际上可以看作一个内部有两个元素的结构体,且这两个元素的类型是可以指定的,如下:

struct pair
{
    typeName1 first;
    typeName2 second;
}; 

// pair 有两个参数,分别对应 first 和 second 的数据类型,它们可以是任意基本数据类型或容器。
pair<typeName1, typeName2> name;
 
// 想要定义参数为 string 和 int 类型的 pair,如下:
pair<string, int> p;
 
//如果想在定义 pair 时进行初始化,只需要跟上一个小括号,里面填写两个想要初始化的元素即可;
pair<string, int> p("haha",5); 

//如果想要在代码中临时构建一个 pair,有如下两种方法:
 
// (1) 将类型定义写在前面,后面用小括号内两个元素的方式。
pair<string, int>("haha", 5);
 
// (2) 使用自带的 make_pair 函数。
make_pair("haha", 5)  

3)pair 中只有两个元素,分别是 first 和 second ,只需要按正常结构体的方式去访问即可。 
#include <iostream>
#include <utility>
#include <string>
using namespace std;int  main()
{pair<string, int> p;p.first = "haha";p.second = 5;cout << p.first << " " << p.second << endl;p = make_pair("xixi", 55);cout << p.first << " " << p.second << endl;p = pair<string, int>("heihei", 555);cout << p.first << " " << p.second << endl;return 0;
}

 此部分选自C++中pair使用详细说明_c++ pair_想去的远方的博客-CSDN博客

④:“std::”是什么?

std是一个类(输入输出标准),它包括了cin成员和cout成员,声明了“using namespace std;”以后才能使用它的成员。

如果不先声明“using namespace std;”,就需要在cin和cout前面加“std::”,如"std::cin"和"std::cout"。

std是命名空间,你所用到的很多函数或者类都是被放到命名空间里面的,命名空间是防止名字重复而使用的。当你自己定义一个string并把它放到命名空间AAA中的时候,你使用string只要指定是哪个命名空间的,就不会导致编译器分不清是哪个string了。你使用时会用std::string或者AAA::string,前者告诉编译器我用的string是在命名空间std里面的,后者告诉编译器用的string是在命名空间AAA里面的。

"using namespace std;"这样告诉编译器,我没有指定命名空间的,就默认使用std这个命名空间,那么你使用string就不用再加std::作用域了,只需要直接写string就可以了。

此部分选自【C++】C++中“std::“是什么意思?起什么作用?_一拳Marx的博客-CSDN博客

http://www.dinnco.com/news/25312.html

相关文章:

  • 做商城网站要什么证件店铺推广渠道有哪些方式
  • 网站推广软文范例seo销售代表招聘
  • 试玩做任务赚钱的网站如何在各种网站投放广告
  • 网站开发与设计实验报告总结班级优化大师官网下载
  • 做视频网站成本广州seo网站推广公司
  • 网站的交互性google官网登录入口
  • 定远县可以做网站的地方免费推广的网站有哪些
  • 网站建设技术员电商详情页模板免费下载
  • 网站制作的核心要点是什么南京seo公司哪家
  • 洪宇建设集团公司网站seo页面优化的方法
  • 电子商务网站建设复习题企业管理培训视频免费
  • 成都的建站公司汕头疫情最新消息
  • wordpress设置smtpseo关键词优化排名哪家好
  • 中山做网站公司哪家好短视频seo关键词
  • 怎么做论坛的网站吗互联网平台
  • 邢台做网站推广价格百度搜索引擎盘搜搜
  • 使用cdn的网站店铺推广软文300字
  • 养老院网站建设网站优化建议
  • 网站网页怎么做网站seo优化技巧
  • 做海外购网站信息流优化师证书
  • 宝应网站媒体发稿费用
  • seo优化搜索推广seo顾问服务四川
  • 政府网站安全建设网络营销的概念和含义
  • 怎样换网站关键词h5制作
  • wordpress禁止复制插件北京正规seo搜索引擎优化价格
  • 艺术创意设计图片大全班级优化大师的优点
  • 网站建设沈阳公司泰州seo网站推广
  • 阜阳网站建设哪家好快速排名seo软件
  • 上海城乡建设与交通委员会网站需要优化的网站有哪些?
  • 网站做反向解析郑州网络营销学校