【从零开始学习JAVA | 第二篇】JAVA综合练习 (1)

news/2024/10/22 15:21:49/

目录

前言:

1.买飞机票

2.找质数:

3.开发验证码:

4.数组元素的复制:

5.评委打分:

6.数字加密:


前言:

本篇将起到总结的作用,利用具体案例来带我们复习JAVA的基础内容:数组,判断条件,数组,二维数组。如果是初学者可以收藏本片博文自己尝试完成这些案例。

1.买飞机票

机票价格按照淡季旺季,头等舱和经济舱收费,输入机票原价,月份和头等舱或经济舱。

按照以下规则进行计算机票实际价格:旺季(5-10月) 头等舱九折,经济舱8.5折,淡季(11月带到第二年四月)头等舱七折,经济舱6.5折

简单的if判断。

package com.itheima.demo1;
import java.util.Scanner;public class test02 {public static void main(String[] args) {Scanner sc=new Scanner(System.in);System.out.println("请输入机票原价:");int tacketprict= sc.nextInt();System.out.println("请输入购买的位置(1/0)");int  set=sc.nextInt();System.out.println("请输入当前月份");int mounth = sc.nextInt();int finaltacket=0;if(mounth>=5&&mounth<=10){if(set==0){finaltacket= (int) (0.9*tacketprict);}else{finaltacket=(int)(0.85*tacketprict);}}else{if(set==0){finaltacket= (int) (0.7*tacketprict);}else{finaltacket=(int)(0.65*tacketprict);}}System.out.println("最终机票的价格为:"+finaltacket);}}

我们可以看到这段代码在判断的时候还是过于重复,于是我们提供一个新的思路:

把重复部分抽象出来,成为一个方法:

package com.itheima.demo1;
import java.util.Scanner;public class test02 {public static void main(String[] args) {Scanner sc=new Scanner(System.in);System.out.println("请输入机票原价:");int tacketprict= sc.nextInt();System.out.println("请输入购买的位置(1/0)");int  set=sc.nextInt();System.out.println("请输入当前月份");int mounth = sc.nextInt();System.out.println("最终机票的价格为:"+ tickprice(mounth,set,tacketprict));}public static int tickprice(int mounth,int set,int tacketprict){int finaltacket=0;if(mounth>=5&&mounth<=10){if(set==0){finaltacket= (int) (0.9*tacketprict);}else{finaltacket=(int)(0.85*tacketprict);}}else{if(set==0){finaltacket= (int) (0.7*tacketprict);}else{finaltacket=(int)(0.65*tacketprict);}}return finaltacket;}}

 重点:Ctrl+Alt+M键可以在选中区域自动抽取方法。

2.找质数:

输入一个数字,找出从1到这个数字之间的所有质数

 质数是指一个大于1的整数,除了1和它本身以外,没有其他的因数能够整除它。换句话说,质数是只能被1和自身整除的正整数。

package com.itheima.demo1;
import java.util.Scanner;public class test03 {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int i=sc.nextInt();for(int j=1;j<=i;j++){  boolean judge=true;for(int m=2;m<j/2;m++){if(j%m==0){judge=false;}}if(judge==true){System.out.print(" "+j);}}}
}

3.开发验证码:

定义方法随机产生一个五位的验证码

验证码格式:

  • 长度为5
  • 前四位是大写字母或者是小写字母
  • 最后一位是数字

Java中的随机函数需要一个种子来生成随机数序列。如果没有指定种子,则使用系统时间作为默认种子。可以通过 java.util.Random 类来实现随机数生成。

package com.itheima.demo1;import java.util.Random;public class test04 {public static void main(String[] args) {//在这里我们选取前四位验证码的方法选择创建一个52大小的数组,把a-Z存储进去之后,随机生成0到51数字当作索引下标extracted();}private static void extracted() {char[]chs =new char [52];for(int i=0;i<chs.length;i++){   if(i<=25){chs[i]= (char) (97+i);}else{chs[i]=(char)(65+i-26);}}String s="";for(int i=0;i<4;i++){Random r=new Random();//利用随机索引获取元素int index= r.nextInt(chs.length);s=s+chs[index];}Random r=new Random();//利用随机索引获取元素int index= r.nextInt(9);s=s+index;System.out.println(s);}}

4.数组元素的复制:

把数组中的元素赋值到另一个数组中

package com.itheima.demo1;public class test05 {public static void main(String[] args) {int [] arr={1,2,3,4,5};int [] trarr=new int[arr.length];for(int i=0;i<5;i++){trarr[i]=arr[i];}for(int i=0;i<5;i++){System.out.print(trarr[i]);}}}

5.评委打分:

在歌唱比赛中,有六位评委给选手打分,分数范围是[0-100]之间的整数,选手最后的分值为六个评委的平均分。

package com.itheima.demo1;
import java.util.Scanner;public class test05 {public static void main(String[] args) {int nums[]=new int [6];Scanner sc= new Scanner(System.in);for(int i=0;i<6;i++){System.out.println("请输入"+(i+1)+"个裁判的分数");nums[i]=sc.nextInt();}int finalscore;int sum=0;for(int i=0;i<6;i++){sum=sum+nums[i];}finalscore=sum/6;System.out.println("平均分数为:"+finalscore);}}

6.数字加密:

某系统的数字密码(大于0),比如1983,采用加密方式进行传输。

规则如下:

  • 先得到每位数字,然后每位数字都加上5,最后再把所有数字反转,得到一串新数字。
package com.itheima.demo1;public class test06 {public static void main(String[] args) {int [] arr={1,9,8,3};//加密for(int i=0;i<4;i++){arr[i]=(arr[i]+5)%10;}int [] newarr=new int [4];int j=0;for(int i=3;i>=0;i--){newarr[j]=arr[i];j++;}System.out.println("加密后的结果为:");for(int i=0;i<4;i++) {System.out.println(newarr[i]);}}
}

今天的内容到这里就结束了,感谢大家的阅读。

如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力!

 


http://www.ppmy.cn/news/511193.html

相关文章

Win10 电脑能连接手机热点上网,但是连接wifi时却只能登qq不能浏览网页的问题

问题描述&#xff1a;本人用的是Win10 系统&#xff0c;平时在学校一直用电脑连接自己的手机热点&#xff0c;回到家后突然发现电脑连接自家的Wifi上网后打开浏览器显示无法连接到该网络&#xff0c;但是qq又能正常登陆并且接收同学发来的消息。检查浏览器一切正常&#xff0c;…

Charles 关闭之后 手机、苹果电脑能上QQ 但打不开网页原因

不知道你有没有遇到这种情况&#xff0c;用软件Charles抓接口&#xff0c;用完之后关闭&#xff0c;手机、电脑就不能上网了&#xff0c;但QQ可以登上。下面来解说这一情况&#xff01; 原因是本机的电脑代理没关闭。打开网络偏好设置&#xff0c;选好自己当前用的网段是以太网…

苹果cmsv10仿西瓜影院电脑手机影视自适应免费模板

苹果cmsv10仿西瓜影院模板主题介绍: 模板名称:苹果cmsv10西瓜影院电脑手机影视自适应免费模板模板程序:苹果cmsv10模板类型:自适应模板空间支持:php5.6+mysql模板颜色:白色模板来源:来自网络收集下载方式:免费下载源码大小:39kb上架时间:2020-7-29是否授权:无需授权…

电脑上浏览手机版网页

原文出处&#xff1a;http://www.freehao123.com/user-agent-switcher/ 现在很多大型的网站都推出了手机版的网页&#xff0c;不过&#xff0c;手机版的网页打开速度慢&#xff0c;而且下载文件会有各种各样的限制&#xff0c; 如果你看到一个手机版网站中有一个非常好的软件…

苹果cmsv10仿电影淘淘PC+WAP爱看的高端免费模板

苹果cmsv10仿电影淘淘PCWAP模板主题介绍&#xff1a; 模板名称&#xff1a;苹果cmsv10仿电影淘淘PCWAP爱看的高端免费模板模板程序&#xff1a;苹果cmsv10模板类型&#xff1a;pcwap空间支持&#xff1a;php5.6mysql模板颜色&#xff1a;白色模板来源&#xff1a;来自网络收集下…

空间相册怎么移到计算机里,qq空间上传照片_怎样把电脑里存的照片传到qq空间??...

qq空间怎么批量上传照片&#xff1f; 1、登录QQ账号&#xff0c;进入到个人QQ空间&#xff1b; 2、打开QQ空间相册&#xff0c;进入到相册界面&#xff1b; 3、选定上传照片到哪一个相册或者新建一个相册&#xff1b; 4、打开该相册&#xff0c;点击“上传照片”&#xff1b; 5…

手机网页调用手机QQ QQ在线客服

<a target"_blank" href"mqqwpa://im/chat?chat_typewpa&uin1234567&version1&src_typeweb&web_srclvlingseeds.com">手机QQ客服</a>

QQ空间图片爬虫

昨晚玩了一下QQ空间的图片爬虫&#xff0c;发现跟一般的不一样。 QQ空间里面的图片用一般的urllib.urlopen(url)打开图片是打不开。然后想用requests模块&#xff0c;不过感觉有点麻烦&#xff0c;后来用了httplib模块的HTTPConnection进行连接才成功。 一爬&#xff0c;发现…