我是靠谱客的博主 飞快毛巾,这篇文章主要介绍输入一个正数s,打印出所有和为s的连续正数序列(至少包含两个数),例如输入15,打印出连续3个序列1-5,4-6,7-8,现在分享给大家,希望可以做个参考。

//输入一个正数s,打印出所有和为s的连续正数序列(至少包含两个数),例如输入15,打印出连续3个序列1-5,4-6,7-8
public static void main(String[] args) {
int s=15;
findContinueSequence(s);
}


    private static void findContinueSequence(int s) {
    Boolean flag=false;
    //因为连续正数序列至少包含两个数,所以s大于等于3
    if(s<3){
    return;
    }
    int start=1;
    int end=2;
    int mid=(1+s)/2;
    int sum=start+end;
    while(start<mid){
    if(sum==s){
    printNum(start,end);
    }while(sum>s && start<mid){
    sum-=start;
    start++;
    if(sum==s){
    printNum(start, end);
    }
    }
    end++;
    sum+=end;
   
    }
    }


private static void printNum(int start, int end) {
for (int i = start; i <= end; i++) {
System.out.print(i+" ");
}
System.out.println();
}

}

最后

以上就是飞快毛巾最近收集整理的关于输入一个正数s,打印出所有和为s的连续正数序列(至少包含两个数),例如输入15,打印出连续3个序列1-5,4-6,7-8的全部内容,更多相关输入一个正数s,打印出所有和为s内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部