Java基础题新手练习(三)

目录

  • 水仙花数
    • 源码
  • 计算分数的值
    • 源码
  • 最大公约数
    • 源码
  • 二进制1的个数
    • 源码
  • 二进制序列
    • 源码
  • 模拟登陆
    • 源码
  • 输出一个整数的每一位
    • 源码
  • 输出乘法口诀表
    • 源码
  • 总结

    水仙花数 求出0~999之间的所有“水仙花数”并输出。(“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本 身,如;153=1+5+3?,则153是一个“水仙花数“。)








    源码
    public staticvoid GetDaffodil(){int j=0; int k=0; int l=0; for(int i=0; i<=999; i++){j=i/100; k=(i-j*100)/10; l=(i-j*100-k*10); if(j*j*j+k*k*k+l*l*l==i){System.out.println(i+"是水仙花数"); // continue; }}}

    运行结果:
    Java基础题新手练习(三)
    文章图片


    计算分数的值 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值 。
    源码
    public static doubleGetSum(){double sum= 0; int flag = 1; for (double i = 1; i<=100; i++) {sum+=(1/i)*flag; flag=-flag; }return sum; }

    运行结果:
    Java基础题新手练习(三)
    文章图片


    最大公约数 求两个正整数的最大公约数
    源码
    public static voidGetgcd(int a,int b){int c= a%b; while(c!=0){a = b; //18b = c; //6c = a % b; }System.out.println(b+"是a和b的最大公约数"); }

    运行结果:
    Java基础题新手练习(三)
    文章图片


    二进制1的个数 求一个整数,在内存当中存储时,二进制1的个数
    源码
    public staticintGetnum(int n){int count = 0; while(n!=0){if((n&1)!=0) {n = n >>> 1; count++; }}return count; }

    运行结果:
    Java基础题新手练习(三)
    文章图片


    二进制序列 获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列
    源码
    publicstaticvoidgetBinnum(){Scanner sc= new Scanner(System.in); int num=sc.nextInt(); System.out.print("odd sequence:"); for(int i=30; i>=0; i-=2){System.out.print((num>>i)&1); }System.out.print("even sequence:"); for(int i=31; i>0; i-=2){System.out.print((num>>i)&1); }sc.close(); }

    运行结果:
    Java基础题新手练习(三)
    文章图片


    模拟登陆 编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输 入,最多输入三次。三次均错,则提示退出程序
    源码
    public staticvoid GetPasswd(){int count = 3; while (count != 0) {Scanner scanner = new Scanner(System.in); String password = scanner.nextLine(); if(password.equals("1234")) {System.out.println("登录成功!"); break; }else {count--; System.out.println("还有"+count+"次机会!"); }}

    运行结果:
    Java基础题新手练习(三)
    文章图片


    输出一个整数的每一位 输出一个整数的每一位,如:123的每一位是1 , 2 , 3
    源码
    public static void getdigit(){System.out.println("请输入三位数整数:"); Scanner scanner = new Scanner(System.in); intn= scanner.nextInt(); int i=n/100; int j=(n-i*100)/10; int k=(n-i*100-j*10); System.out.println(n+"分解为"+i+" "+j+" "+k); }

    运行结果:
    Java基础题新手练习(三)
    文章图片


    输出乘法口诀表 输出n*n的乘法口诀表,n由用户输入。
    源码
    public static void PrintMultiption1(){System.out.println("请输入n的值: "); Scanner scanner = new Scanner(System.in); int n =scanner.nextInt(); for(int i= 1; i<=n; i++){for(int j=1; j<=n; j++){if(i<=j)System.out.print(i+"*"+j+"="+i*j+""); }System.out.println( ); }}

    【Java基础题新手练习(三)】运行结果:
    Java基础题新手练习(三)
    文章图片


    总结 本篇java基础练习题就到这里了,希望对你有所帮助,也希望您能够多多关注脚本之家的更多内容!

      推荐阅读