7-9求交错序列前N项的和

单循环程序设计

7-9求交错序列前N项和

img

#include<stdio.h>
int main(){
	int N = 0;
	double sum = 0;//sum记录最终结果,注意不要无脑int
	scanf("%d",&N);//输入N值
	for(int i=1;i<=N;i++){
		double tmp = (double)i / (2*i-1);//注意不要int/int了!
		if(i%2 == 0){//如何取余?-->n个一组是规律的话就i%n
			sum -= tmp;//开始是减法从1开始,说明第偶数次是减法
			// i=1 --> '-'
			// i=2 --> '+'
			// i=3 --> '-'
			// i=4 --> '+'
			// i=5 --> '-'
			//数学归纳法,i为奇数为-,i为偶数为+
		}else{
			sum += tmp;//第奇数次是+
		}
	
	}	
	printf("%0.3f",sum);//保留三位小数
	
	return 0;
}

交错符号类型的规律-->必是条件加循环结构【多写几项来观察】
可以从i=1,开始,比较直观

  • 条件结构-->当前是一组里的那个condition
  • 循环结构-->遍历所有值【n】
  1. 几个一组?-->得到尾号,用于判断
  2. 顺序是什么 次1-->? 2-->? 3-->?,找到规律
  3. 写代码
    e.g.
    + - * / + - * /
    if(i%4 == ?)
    1 2 3 0 ---> 0 1 2 3
    + - * / ---> / + - *----->if else-if else
posted @ 2024-10-22 20:53  GJ504b  阅读(16)  评论(0编辑  收藏  举报