Java50道经典习题-程序48 数字加密】的更多相关文章

题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换.分析:例如原始数据是: 6 7 8 9(原始数据) 每个数加上5后为:11 12 13 14 除以10后为: 1 2 3 4 交换位置之后 4 3 2 1(加密后的数据) public class Prog48{ public static void main(String[] args){ int n = 67…
题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,将原有的数据和计算出的平均分数存放在磁盘文件"stud"中. import java.io.*; public class Prog50{ //定义学生模型 String[] number = new String[5]; String[] name = new String[5]; float[][] grade = new float[5][3]; float[] sum…
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制. 分析:关键是计算出每一项的值. import java.util.Scanner; public class Prog8{ public static void main(String[] args){ System.out.print("求s=a+aa+aaa+aaaa+...的值,请输入a的值:"); Scanner…
题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. public class Prog11 { public static void main(String[] args) { int count=0; int n=0; for(int i=1;i<5;i++) { for(int j=1;j<5;j++) { if(i==j) continue; for(int k…
题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*. import java.util.Scanner; public class Prog47{ public static void main(String[] args){ System.out.print("请输入7个整数(1-50):"); Scanner scan = new Scanner(System.in); int n1 = scan.nextInt(); int n2 = scan.nextI…
题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?分析:完全平方数:如果一个数能是由两个相同的数相乘的结果,那么这个数就是完全平方数,例如:9==3*3:9就是完全平方数.在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果. public class Prog13 { public static void main(String[] args) { int n=0; for(int i=0…
题目:有一个已经排好序的数组.现输入一个数,要求将它插入数组中后数组依然是排好序的.分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置. import java.util.Arrays; import java.util.Scanner; public class Prog30 { public static void main(String[] args) { int[] array = {0,1,2,3,5,7,8,9,12};//定义…
题目:809*??=800*??+9*??+1其中??代表两位数,若有这样得数,求??代表的两位数 public class Prog42{ public static void main(String[] args){ int n = 0; boolean flag = false; for(int i=10;i<100;i++) if(809*i==800*i+9*i+1){ flag = true; n = i; break; } if(flag) System.out.println(n…
题目:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数.分析:利用while语句,条件为输入的字符不为'\n'. import java.util.*; public class Prog7{ public static void main(String[] args) { System.out.println("请输入一串字符:"); Scanner scan=new Scanner(System.in); //注:Scanner类中的next()方法遇到空格就不进去…
题目:输出9*9口诀.分析:利用双重for循环进行输出,分行与列考虑,共9行9列,i控制行,j控制列. public class Prog16 { public static void main(String[] args) { for(int i=1;i<10;i++) { for(int j=1;j<i+1;j++) { System.out.print(j+"*"+i+"="+(j*i)+"\t");//使用转义字符使得输出更加…