连续整数固定和问题

来源:互联网 发布:下载购物淘宝网 编辑:程序博客网 时间:2024/05/16 18:34

【题目要求】

编写一个程序,找出一个数的全部的连续整数固定和。所谓一个数n的连续整数固定和,就是指存在a1,a2,...,an,其中ai+1比ai大1,使得a1+a2+...+an=n.这样a1,a2,...,an,称为n的一个连续整数固定和。例如27的全部的连续整数固定和有3组:2+3+...+7=27;8+9+10=27;13+14=27。

【代码】

import java.util.Scanner;public class Ta {public static void main(String[] args){int sum=0;Scanner str= new Scanner(System.in);int n= str.nextInt();for(int i=1;i<n;i++){int j=i-1;while(sum<n){j++;sum+=j;}if(sum==n){System.out.println(j-i<=2?j-i==1?i+"+"+j+"="+n:i+"+"+(j-1)+"+"+j+"="+n:i+"+"+(i+1)+"+...+"+j+"="+n);}sum=0;}}}

【输出例子】