第三天——循环语句的练习

循环语句的练习

当x<=1时,y=x;
当1<x<10,y=3*x-2;
当x>=10,y=4*x
        int x=0;
        int y=0;
        while(true){
        Scanner sanner=new Scanner(System.in);
        x=sanner.nextInt();//阻塞,等待输入

        if (x<=1){
            y=x;
            System.out.println(y);
        }else if(x<10&&x>1){
            y=3*x-2;
            System.out.println(y);
        }else if (x>=10){
            y=4*x;
            System.out.println(y);
        }
        }
        //求1+3+7+(2^20-1)的和
        int sum=0;
        int j=1;
        for (int i = 1; i <= 20; i++) {
            j=j*2;
            sum=sum+j-1;
        }
        System.out.println(sum);
        结果:2097130
    //求1到10000的和,如果末位数是3,忽略掉
        int sum =0;
        for (int i = 1; i <=10000; i++) {
            if(i%10==3) continue;
            sum=sum+i;

        }

        System.out.println(sum);
        结果是45007000
        //打印金字塔
        int j=13;
        for (int i = 0; i <=j; i++) {//行数
            for (int a = 0; a <j-i; a++) {
                System.out.print(" ");  //打印空格(空格数等于总行数-行数(第几行))
            }
            for (int k = 0; k <i*2+1 ; k++) {
                System.out.print("*");//打印*,*的个数等于行数*2—1

            }
            System.out.println();   //把这一行的空格和*打印完后再换行
        }

结果这里写图片描述

        //打印九九乘法表
        int count=9;
        for (int i = 9; i >0; i--) {
            for (int j = 1; j <= i; j++) {
                int k;
                k=i*j;
                System.out.print(j+"x"+i+"="+k);
                System.out.print("\t");

            }
            System.out.println();

        }

结果:
这里写图片描述
或者for (int i = 1; i <=count; i++)
这里写图片描述

        //打印1000以内的素数
        int count = 1000;
        for (int i = 2; i <= count; i++) {
            boolean ss=true;
            for (int j = 2; j <= i-1; j++) {

                if(i%j==0){ 
                    ss=false;
                    break;
                }

            }
            if(ss){
                System.out.println(i);
            }
        }
        //求完全数
        int count=1000;
        for (int i = 2; i <=count; i++) {
            int sum=0;

            for (int j = 1; j <=i-1; j++) {

                if(i%j==0){

                    sum=sum+j;
                }

            }
            if(i==sum){

            System.out.println(sum);
            }
        }
        //生小兔子的问题:第一个月有一对成熟的小兔子
        //小兔子三个月成熟,第20个月后有多少对小兔子
        //斐波那契数列

        int count1=20;
        int a1=1;
        int a2=2;
        int a3=3;
        int temp=0;
        for (int i = 4; i <=count1; i++) {
            temp=a1+a3;
            a1=a2;
            a2=a3;
            a3=temp;

            System.out.println(temp);

        }

这里写图片描述
打印空心的菱形:


public class Diamond {
    public static void main(String[] args){
        for (int i = 1; i <= 3; i++) {
            for (int k = 0; k <3-i; k++) {
                System.out.print(" ");
            }

            for (int j = 1; j <=(i-1)*2+1 ; j++) {

            if(j==1||j==(i-1)*2+1){

                System.out.print("*");
                }else{
                    System.out.print(" ");
                }

            }

            System.out.println();
        }
        for (int ia = 2; ia >0; ia--) {
            for (int a = 3-ia; a >0; a--) {
                System.out.print(" ");
            }
            for (int b = 1; b <=(ia-1)*2+1 ; b++) {



            if(b==1||b==(ia-1)*2+1){

                System.out.print("*");
                }else{
                    System.out.print(" ");
                }

            }

            System.out.println();
        }
    }

}

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值