C++ 常用算数生成算法

news/2024/11/29 5:50:10/

🤔常用算数生成算法:

该算法函数需要调用<numeric>头文件

1.accumulate  计算总和

在 C++ STL 中,accumulate() 是一种常用的算法,用于计算指定范围内的元素之和

accumulate() 的函数原型为:

template<class InputIt, class T>
T accumulate(InputIt first, InputIt last, T init);

📖其中,first 和 last 分别表示需要求和的序列的起始位置和结束位置;init 则表示求和的初始值,可以省略,如果省略则以 *first 作为初始值。

代码示例:

#include<iostream>
using namespace std;
#include<vector>
#include<numeric>
int main()
{vector<int>d1;for (int i = 0; i <= 100; i++){d1.push_back(i);}int total=accumulate(d1.begin(), d1.end(), 0);//最后一个数字是起始值cout << "容器内值累加为:" << total;}

运行结果:

2.fill  替换区间

在 C++ STL 中,fill() 是一种常用的算法,用于将指定范围内的元素设置为指定的值

fill() 的函数原型为:

template<class ForwardIt, class T>
void fill(ForwardIt first, ForwardIt last, const T& value);

📖其中,first 和 last 分别表示需要设置值的序列的起始位置和结束位置;value 表示需要设置的值。

📖fill() 函数将输入范围 first 至 last-1 中的每个元素都设置为 value,可以是基本类型或类类型对象。

代码示例:

#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;void print(int val)
{cout << val << " ";
}
int main()
{vector<int>d1;vector<int>d2;d1.push_back(10);d1.push_back(20);d1.push_back(30);d1.push_back(40);d1.push_back(20);  d1.push_back(20);d1.push_back(30);d1.push_back(20);d2.push_back(100);cout << "填充前";for_each(d1.begin(), d1.end(), print);cout << endl;cout << "填充后:";fill(d1.begin(), d1.end(), 200);for_each(d1.begin(), d1.end(), print);}

 运行结果:

 

🤔结束!


http://www.ppmy.cn/news/109686.html

相关文章

设计模式之~工厂系列

目录 简单工厂模式 工厂方法模式 简单工厂 VS 工厂方法 抽象工厂模式&#xff1a; 拓展&#xff1a; 利用简单工厂模式优化抽象工厂 利用反射抽象工厂 进行优化 反射配置文件抽象工厂进行优化 简单工厂模式 优点&#xff1a;简单工厂模式的最大优点在于工厂类包含…

【Windows设置篇】字符集-简繁体的切换

【Windows设置篇】字符集-简繁体的切换 微软自带键盘&#xff0c;有次傻啦吧唧的一直找繁体切换简体的方法&#xff0c;进设置里面切换地区&#xff0c;更换地址也不行&#xff0c;后面才发现是在"字符集"里面切换—【蘇小沐】 文章目录 【Windows设置篇】字符集-简…

Part1:使用 TensorFlow 和 Keras 的 NeRF计算机图形学和深度学习——计算机图形学世界中相机的工作原理

Part1&#xff1a;使用 TensorFlow 和 Keras 的 NeRF计算机图形学和深度学习 1. 效果图2. 原理2.0 前向成像模型2.1 世界坐标系2.2 相机坐标系2.3 坐标变换2.4 投影转换2.5 数据 3. 源码参考 是否有一种方法可以仅从一个场景多张不同视角的照片中捕获整个3D场景&#xff1f; 有…

MATLAB算法实战应用案例精讲-【数模应用】装箱问题(补充篇)

目录 关于三维装箱问题的算法研究 对整个装箱过程发生的函数进行封装 函数优化 判断两个立方体是否重叠

k8s常用的命令

下面是一些常用的Kubernetes&#xff08;K8s&#xff09;命令&#xff0c;以及它们的简要说明。这些命令可以帮助您管理和操作Kubernetes集群中的资源。 集群管理命令&#xff1a; kubectl cluster-info: 显示集群的基本信息。kubectl config use-context <context_name&g…

C++ queue类成员介绍

目录 &#x1f914;queue模板介绍&#xff1a; &#x1f914;queue特点&#xff1a; &#x1f914;queue内存图解&#xff1a; &#x1f914; queue的成员函数 &#x1f50d;queue构造函数&#xff1a; &#x1f50d;queue赋值函数&#xff1a; &#x1f50d;queue判断函…

一个UDP下载服务器的实现(模拟下载文件)

本期分享的主要是使用UDP实现文件下载功能&#xff0c;需要自己编写服务器和客户端&#xff0c;实现的功能主要有以下几个&#xff1a; &#xff08;1&#xff09;服务器可以为请求的用户下发文件数据&#xff08;前提是服务器得有这个数据文件&#xff09; &#xff08;2&…

2023年9月数学建模:为什么发射卫星使用三级火箭?

2023年9月数学建模国赛期间提供ABCDE题思路加Matlab代码,专栏链接(赛前一个月恢复源码199,欢迎大家订阅):http://t.csdn.cn/Um9Zd 目录 1. 引言 2. 理论基础 2.1 火箭动力学 2.2 火箭方程 2.3 多级火箭 3. 为什么使用三级火箭&#xff1f; 3.1 建模过程 3.2 使用 MATLA…