当前位置:   article > 正文

c++基础算法模块(循环筛,累加器,累乘器,计次器)(for遍历循环,计次循环)_c++累加器

c++累加器

循环程序的结构设计

for语句

for遍历循环+sum(i++)累加器

【题目描述】

利用for循环。计算输出1+2+3+…+n1+2+3+…+n的和。

  • 先做for遍历循环
int n;
cin >> n;//循环的判断语句要用
			//循环变量i代表了累加的对象
for ( int i = 1; i <= n; i++ )
{			//i = 1 代表sum=0从i为1的时候开始加
    
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • (有限)累加器定义
 int sum = 0;
     sum += 1
   	 sum += 2
     sum += 3
     .......
  //将后面的数字替换成i
 //就可以和遍历循环结合在一起
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 答案
int n;
cin >> n;//设置累加的终点

for ( int i = 1 ; i <= n ; i++ )
{
    int sum = 0;
    sum += i 
        //这两行代码就是所谓的累加器
        //注意:累加器初值要归零
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

for遍历循环+if循环筛

【题目描述】

按照由小到大的顺序,输出1∼n之间的所有偶数。

  • 先做for遍历循环
int n;
cin >> n;
		//i是循环变量,本题也是输入的数字对象
for ( int i = 1; i <= n ; i++)
{		//i;i++代表了由小到大输出的1、2、3...
    	//n代表了i的最大值
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 再做if循环筛
if( i % 2 == 0)
{
    cout << i << " " ;//因为是多次输出,记得有空格
}
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 答案
int n;
cin >> n;
for ( int = 1; i <= n; i++)
{
    if ( i % 2 == 0)
    {
        cout << i << " ";
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

for遍历循环+s(i++)累乘器

【题目描述】

利用for循环,分别输出1∼n1∼n之间的所有奇数的和、偶数的和。

  • 先做for遍历循环
int n;
cin >> n;

for ( int i = 1;i <= n; i++)
{
    
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 再做s累乘器
long s = 1;//累乘后有可能会超范围;最好用long
s *= 1;
s *= 2;
s *= 3
.....
    //将i把右边的1、2、3..替换掉
    //即i的初值为1
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 答案
long n ;
cin >> n;
for ( int = 2 ; i <= n ; i++)
{
    s *= i;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

for计次循环+输入n个数+累加器

【题目描述】

班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。

  • 计数(次)器
int cnt =0;
cnt = cnt +1;//第一次+1		//化简写法:
cnt = cnt +1;//第二次+1		//int i = 0;
cnt = cnt +1;//第三次++		//i++
cnt = cnt +1;//第四次+1		//cout << i;
...			//第n次+1
cou  << cnt;
//此时输出的cnt 就是总共加了几次(次数)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • for其实自带计数器
int n ;
cin >> n;
for( int i=1; i <=n; i++)//i此时代表了循环的次数
{						//循环的次数可能又有别的含义
    					
    
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 输入n个数
for ( int i = 1;i <= n; i++)
{				//此处的i表示是输入age的次数
    			//n是终点
    int age
    cin >> age;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 累加器
int sum = 0;
sum += age //(这里其实就是sum++的类比使用)
 		//sum++ 其实就是sum += 1
    	//也是 sum = sum +1
cout << sum;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 答案(将上述算法综合即可)
int n;
cin >> n;
for(int i= 1; i <= n; i++)
{
    int age;
    cin >> age ;
    sum += age ;
}
double avg = sum *1.0 / n;
cout ........即可
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/818449
推荐阅读
相关标签
  

闽ICP备14008679号