java从0开始 3(习题篇)

这篇博客涵盖了Java编程中的多个基础概念,包括如何判断一个数是否为回文数、实现除法运算不使用乘除取模、编写逢7过的游戏、检查质数以及生成和猜测随机数。通过实例代码展示了这些基本操作的实现方法,适合初学者理解和练习。
摘要由CSDN通过智能技术生成

目录:
1 判断一个数是否为回文数
2 判断一个数是否为回文数
3 用for循环和countinue写逢7过的游戏
4 判断一个数是否为质数
5 java获取随机数
6 程序自动生成一个1-100之间的随机数,使用程序实现猜出这个数字是多少




1 判断一个数是否为回文数

package text;

import java.util.Scanner;

public class huiwenzhengshu {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个整数");
        int x = sc.nextInt();
        int old = x;
        int nume=0,ge;
         while(x != 0){  //如果单纯>0就未将0考虑在内
             //每次都求出个位数
             ge = x % 10;
             //再将x缩小范围 每次去掉最右边的数
             x = x / 10; //比如1234 / 10 等于 123 成功将最右边扔掉
             //将求出来的数拼凑成一个整数
             nume = nume * 10 + ge;  //第一次为3  第二次为32 第三次321
         }
         if(old == nume){
         System.out.println(old+"是回文数");
         } else System.out.println(old+"不是回文数");
    }
}




2 不用乘除取模来算余数和商

package text;
import java.util.Scanner;
//不用乘除取模来算余数和商
public class qiushangheyushu {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入除数和被除数");
        int x = sc.nextInt();
        int y = sc.nextInt();
        int count = 0;
        int yu = 0;
        if (x < y)
            System.out.println("商为:0余数为:" + y);
        else {
            while (x >= y) {
                yu = x - y;
                x = x - y;
                count++;
            }
            System.out.println("商为:" + count + "余数为:" + yu);
        }
    }
}


3 用for循环和countinue写逢7过的游戏

package text;

public class feng7guo {
    public static void main(String[] args){
        for(int i=1;i<=100;i++){
            if(i==7 || i % 7 == 0 || i / 10 ==7 || i % 10 == 7){
                continue;
            }
            System.out.println(i);
        }
    }
}


4 判断一个数是否为质数

package text;

import java.util.Scanner;

public class zhishupanduan {
    public static void main(String[] args){
        //键盘录入一个正整数x,判断该整数是否为一个质数
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个正整数");
        int x = sc.nextInt();
        int i;
        for(i=2;i<x;i++){//优化代码 如果在  sqrt(x)   的范围内,
      //所有数字都不能被整除 那么这个数就是一个质数,大大节省了运行次数
            if(x % i ==0)
                break;
        }
        if(i == x )
            System.out.println(x+"是一个质数");
        else
            System.out.println(x+"不是一个质数");
    }
}


5 java获取随机数

  1. 第一步导包: 导包的动作必须在类的上边,package的下边
  2. 第二步创建对象: Random r = new Random(); 只有r是变量
  3. 第三步生成随机数: int number = r.nextInt(随机数的范围);
    代码演示:
package text;

import java.util.Random;

public class randomsuijishu {
    public static void main(String[] args){
        //创建对象
        Random r = new Random();
        System.out.println("请输入随机数的范围");
        //创建随机数
        //在小括号中,书写的是生成随机数的范围
        //这个范围是从0开始的
        //到这个数-1开始,口诀:包头不包尾  ; 包左不包右
        int number = r.nextInt(100); //0-99 不包含100
        System.out.println(number);
    }
}

import java.util.Random;

public class randomsuijishu {
    public static void main(String[] args){
        //创建对象
        Random r = new Random();
        //创建随机数
        //进阶:随机生成任意范围的随机数 左边数是几就加几 在求x+左=右+1
        //比如生成 7--15之间的值     9+7=16 所以写成nextInt(9) + 7;
        for(int i=1;i<=10;i++){
        int number = r.nextInt(10)+11; //11--20  9+7=16
        System.out.println(number);}
    }
}


5 需求:程序自动生成一个1-100之间的随机数,使用程序实现猜出这个数字是多少

package text;

import java.util.Random;
import java.util.Scanner;

public class randomdemo2 {
    public static void main(String[] args) {
        Random r = new Random();
        Scanner sc = new Scanner(System.in);
        int number = r.nextInt(100) + 1;
        int i;
        //需求:程序自动生成一个1-100之间的随机数,使用程序实现猜出这个数字是多少
        System.out.println("请输入你的猜想");
        while(true) {
            int guess = sc.nextInt();
            if (guess > number){
                System.out.println("你猜大了");
                {
            else if (guess < number){
                System.out.println("你猜小了");
                }
            else{
                System.out.println("你猜对了");
                break;
                }
        }
    }
}

利用for循环实现保底机制 猜够次数直接给答案

for(count=0;count<3;count++){
            int guess = sc.nextInt();
            if (guess > number)
                System.out.println("你猜大了");
            else if (guess < number)
                System.out.println("你猜小了");
            else{
                System.out.println("你猜对了");
                break;
            }
        }
        System.out.println("这个数是"+number);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值