小回顾-累加算法

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

一、【累加法】类型诸如:

num(1)+num(2)+num(3)+..........+num(n-1)+num(n)

求其前N项之和的编程题

累加型算法:

若设 i 为循环变量,s 为前 n 项之和,则程序的基本结构为:

int s = 0;//前n项之和

int n = 10;//一共有10项

num =*****;// 每一项的值(重点在与表达出每一项的值)

for ( int i = 1 ; i < n; i++);

s = s + num;

例一:(int整型类)

//求 1 + 2 + 3 + 4 + 5  + ......+ 99 + 100 的和;

[java]  view plain  copy
  1. /** 
  2.  * @author ygr 
  3.  */  
  4. public class Summation {  
  5. //求 1 + 2 + 3 + 4 + 5  + ......+ 99 + 100 的和;  
  6.     public static void main(String[] args) {  
  7.         int sum = 0;  
  8.         int i =1;  
  9.         for(i=1;i<=100;i++){  
  10.             sum=sum+i;  
  11.         }  
  12.         System.out.println("1 + 2 + 3 + 4 + 5  + ......+ 99 + 100 的和:"+sum);  
  13.     }  
  14.   
  15. }  



 

例二:(分数类型累加)

[javascript]  view plain  copy
  1. <pre name="code" class="java">/** 
  2.  * @author ygr 
  3.  */  
  4. public class Summation2 {  
  5. //求 1-1/2+1/3-1/4 + ....+1/99-1/100 的和  
  6.     public static void main(String[] args) {  
  7.         double sum = 0; // 总和  
  8.         double item = 0; // 某一项值  
  9.         int q = -1;//将-1赋值给q用作后面转换负号  
  10.         for (int i=1; i <= 100; i++) {  
  11.             q = -q;//用这种方法将以后的每一项的负号转换  
  12.             item =(double) q/i;//采用double类型强转  
  13.             sum = sum + item;  
  14.         }  
  15.         System.out.println("1-1/2 +1/3-1/4 + ....+1/99-1/100的和是 :" + sum);  
  16.     }  
  17.   
  18. }  


 

 

例三:

[javascript]  view plain  copy
  1. <span style="font-size:24px;">/** 
  2.  * 求和2 + 22 + 222 + 2222 + ....10项的和 
  3.  * @author ygr 
  4.  * 
  5.  */  
  6. public class SumDemo {  
  7.   
  8.     public static void main(String[] args) {  
  9.         long s = 0;  
  10.         int n = 10;  
  11.         long item = 0;  
  12.         for (int i = 1; i <= n; i++) {  
  13.             item = (long)10*item+2;  
  14.             s = s + item;  
  15.         }  
  16.         System.out.println("2 + 22 + 222 + 2222 + ....10项和是 :" + s);  
  17.   
  18.     }  
  19.   
  20. }</span><span style="font-size: 18px;">  
  21. </span>  

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值