机票价格、找素数、生成验证码、数字加密、双色球系统

 //来自B站黑马程序员

计算机票价格

​​​​​​​

 

package blackhorse;
import java.util.Scanner;
public class AirPlant {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//录入数据
		System.out.print("请输入机票价格:");
		double Price = sc.nextDouble();
		
		System.out.print("请输入月份:");
		int Month = sc.nextInt();
		
		System.out.print("请选择是头等舱还是经济舱:");
		String Type = sc.next();
		
		countPrice(Price,Month,Type);//调用方法
	}
		
	public static void countPrice(Double price,int month,String type){	
		//先用switch语句判断是头等舱还是经济舱
        switch(type) {
			case "头等舱费":
                //判断是否在淡季
				if(month>=5 && month<=10) {
					price *= 0.9;//等同于price = price*0.9
				}else if(month == 11||month==12||month>=1&&month<=4){
					price *= 0.7;
				}
				break;//switch的break别忘了
			case "经济舱":
				if(month>=5 && month<=10) {
					price *= 0.85;
				}else if(month == 11||month==12||month>=1&&month<=4){
					price *= 0.65;
				}	
				break;
			default:
				System.out.println("您输入有误");
				return;//退出方法
		}
		System.out.print("机票价格为:"+price);
	}
	
}

找素数

素数也叫质数,是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数

package blackhorse;
import java.util.Scanner;
public class PrimeNumber {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入您要判断的值:");
		int a = sc.nextInt();
		boolean judge = true;//用来存储true和false
		for(int i=2;i<a;i++) {
			if(a%i == 0) {
				judge = false;//如果能被整除,judge就是false,不是素数
			}
		}
		if(judge == false) {
			System.out.println("您输入的值不是质数");
		}else {
			System.out.println("您输入的值是质数");
		}
	}
}//博主可能写的有点反人类

生成验证码

可自定义长度

package blackhorse;
import java.util.Scanner;//输入用
import java.util.Random;//生成随机数用
public class SecurityCode {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入生成验证码的长度:");
		int number = sc.nextInt();
		String code = code(number);//接收方法发来的字符串
		System.out.println(code);
	}
	public static String code(int n) {
		Random rd = new Random();

		String code = "";
		for(int i =0;i<n;i++) {//n为循环次数
			int number = rd.nextInt(3);//生成0~2的随机数,随机选择生成数字、大写或者小写字母
			switch(number) {
			case 0:
				int a1 = rd.nextInt(10);
				code += a1;
				break;
				//生成数字
			case 1:
				//生成大写英文
				char a2 = (char) (rd.nextInt(26)+65);//将a2强转为char类型,参考ASCII码
                //65~90是大写
				code += a2;//此加为连接,而不是数值具体的加减
				break;
			case 2:
				//生成小写英文
				char a3 = (char) (rd.nextInt(26)+97);//97~122为小写
				code += a3;
				break;
			}
		}
		return code;
	}
}
//生成过一次5位都是数字的,但是忘了截图!!

复制数组

package blackhorse;

public class CopyArrary {

	public static void main(String[] args) {
		int[]arr1 = {1,2,3,4,5};
		int[]arr2 = new int[arr1.length];
		copy(arr1,arr2);
		for(int i=0;i<arr1.length;i++) {
			System.out.println(arr2[i]);
		}
	}
	
	public static void copy(int[] arr1,int[] arr2) {
		for(int i=0;i<arr1.length;i++) {
			arr2[i] = arr1[i];
		}
	}
}//EZ

评委打分

package blackhorse;
import java.util.Scanner;
public class JudegScore {
	public static void main(String[] arg) {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入评委评分数量:");
		int number = sc.nextInt();
		System.out.println("请输入分数:");
		float[] arr = new float[number];
		for(int i=0;i<arr.length;i++) {
			arr[i] = sc.nextFloat();
		}
		sort(arr);
		System.out.print("计算后的总分为:"+count(arr));
	}
	public static void sort(float[] arr) {
	    float temp,n = 1;
	    for(int i=0;i<arr.length;i++) {
	    	for(int j = (arr.length-1);j>=n;j--) {
	    		if(arr[i]<arr[j]) {
	    			temp = arr[i];
	    			arr[i] = arr[j];
	    			arr[j] = temp;
	    		}
	    	}
	    	n++;	
	    }
	}
	
	public static float count(float[] arr) {
		float sum = 0;
		for(int i=0;i<arr.length-2;i++) {
			sum += arr[i+1];
		}
		return sum;
	}
}

数字加密

package blackhorse;
import java.util.Scanner;
public class Encryption {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.print("请输入您要加密的数字数量:");
		int number = sc.nextInt();
		System.out.println("请输入您要加密的数字:");
		int[] arr = new int[number];
		for(int i=0;i<number;i++) {
			arr[i] = sc.nextInt();
		}
        //这里的password(arr,number)等同于一个数组
		outArray(password(arr,number));
		outArray(unlockArray(password(arr,number),number));
	}
	
    //加密方法
	public static int[] password(int[] arr,int number) {
		int[]arr2 = new int[number];//new一个数组存储加密后的数据
		int temp;
		for(int i=0;i<arr.length;i++) {//取反向输出,倒数第N位和第N位交换
			temp = arr[i];
			temp = (temp+5)%10;
			arr2[arr.length-i-1] = temp;
		}
		return arr2;
	}
	
    //输出方法
	public static void outArray(int[] arr) {
		for(int i =0;i<arr.length;i++) {
			System.out.print(arr[i]);
		}
		System.out.println("输出完毕");
	}
	
    //解密,和加密算法一模一样
	public static int[] unlockArray(int[] arr2,int number) {
		int temp;
		int[]arr3 = new int[number];
		for(int i=0;i<arr2.length;i++) {
			temp = arr2[i];
			temp = (temp+5)%10;
			arr3[arr3.length-i-1] = temp;
		}
		System.out.println("解密完成");
		return arr3;
	}
}

双色球系统

package blackhorse;
import java.util.Scanner;//import俩老朋友
import java.util.Random;
public class DoubleChromosphere {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		Random ra = new Random();
		
		int[]red = new int[6];//系统生成的双色球号码
		int[]user = entryArry();//用户输入双色球红色球号码
		int blue = ra.nextInt(16)+1;//系统生成的蓝色球
		System.out.println("请输入蓝色双色球号码");
		int blueUser = sc.nextInt();//用户输入蓝色球号码
        //循环生成红球号码,用数组存储
		for(int i=0;i<red.length;i++) {
			red[i] = ra.nextInt(33)+1;//控制在1~33之间
		}
		System.out.println("今日中奖号码为");
		outArray(red,blue);
		System.out.println("您的双色球号码为");
		outArray(user,blueUser);
		judge(red,user,blue,blueUser);
	}
	
	public static void judge(int[]red,int[]user,int blue,int blueUser) {
		int a = 0;//a为红球数量
		int b = 0;//b为蓝球数量
		for(int i = 0;i<red.length;i++) {
			if(red[i]==user[i]) {
				a += 1;
			}
		}
		if(blue==blueUser) {
			b += 1;
		}
		System.out.println("一共有"+(a+b)+"个相同数字");
		if(a<=1&&b==1) {
			System.out.println("恭喜您中了六等奖,获奖金额为5元");
		}else if(a+b>=3&&a+b<=4) {
			System.out.println("恭喜您中了五等奖,获奖金额为10元");
		}else if(a+b==5) {
			System.out.println("恭喜您中了四等奖,获奖金额为200元");
		}else if(a==5&&b==1) {	
			System.out.println("恭喜您中了三等奖,获奖金额为3000元");
		}else if(a==6&&b==0) {
			System.out.println("恭喜您中了二等奖,获奖金额最高500万");
		}else if(a==6&&b==1) {
			System.out.println("恭喜您中了一等奖,获奖金额为最高6000万");
		}else {
			System.out.println("很抱歉您没有中奖");
		}
        //图里没有红蓝2+0的情况,应该算没中奖吧...	
	}

	//录入用户的双色球号码
	public static int[] entryArry() {
		Scanner sc = new Scanner(System.in);
		int[] user =  new int[6];
		System.out.println("请依次输入红色双色球号码");
		for(int i =0;i<user.length;i++) {
			boolean temp = true;
			user[i] = sc.nextInt();
			while(temp==true) {//加一个防止输入数值不在范围内的循环
				if(user[i]<1||user[i]>33) {
					System.out.println("您输入的有误,请重新输入");
					i--;//这个数值需要重新录入,所以i减一回到原位置
					break;
				}else {
					temp = false;
				}
			}
		}
		return user;
	}
	
    //数组输出
	public static void outArray(int[] arr,int blue) {
		System.out.print("红色:");
		for(int i =0;i<arr.length;i++) {
			System.out.print(arr[i]+"\t");
		}
		System.out.println("蓝色:"+blue);
		System.out.println("输出完毕");
	}
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值