-
随机产生5个范围是[1,100]的整数,把这些数字中所有个位或十位为3的数字打印出来
-
20 30 50 63 90
-
30 63
*/
public class Task01 {
public static void main(String[] args) {
//1. 随机产生5个范围是[1,100]的整数
Random r = new Random();
//把数字存放到数组中
int[] arr = new int[5];
for (int i = 0; i < 5; i++) {
arr[i] = r.nextInt(100) + 1; //[1,100]
}//打印所有的随机数 for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } System.out.println(); //2. 个位或十位为3的数字打印 for (int i = 0; i < arr.length; i++) { //获取十位与个位的数字 int ge = arr[i] % 10; int shi = arr[i] /10 % 10; if (ge == 3 || shi == 3) { System.out.print(arr[i] + " "); } }
}
}
/*
-
计算出5位数的回文数和7位数的回文数相差了多少个
*/
public class Task02 {
public static void main(String[] args) {
//1. 计算出5位数的回文数 有多少个
int count5 = get5Count();
//2. 计算出7位数的回文数 有多少个
int count7 = get7Count();
//3. 相差了多少个
System.out.println(“相差了多少个:” + (count7 - count5));
}/*
- 计算出5位数的回文数 有多少个
- 指定方法的名称: get5Count
- 指定方法的参数: 无
- 指定方法的返回值: int
*/
public static int get5Count(){
int count = 0;//记录5位数的回文数个数
//12321
for (int i = 10000; i <= 99999; i++) {
//分别获取个十百千万位的数字
int g = i % 10;
int s = i / 10 %10;
int b = i / 100 % 10;
int q = i / 1000 % 10;
int w = i / 10000 % 10;
if (gw && sq) {
//5位数的回文数 + 1
count++;
}
}
return count;
}
/*
- 计算出7位数的回文数 有多少个
- 指定方法的名称: get7Count
- 指定方法的参数: 无
- 指定方法的返回值: int
*/
public static int get7Count(){
int count = 0;//记录7位数的回文数个数
//1234321
for (int i = 1000000; i <= 9999999; i++) {
//分别获取个、十、百、千、万、十万、百万位的数字
int g = i % 10;
int s = i / 10 %10;
int b = i / 100 % 10;
int q = i / 1000 % 10;
int w = i / 10000 % 10;
int sw = i / 100000 % 10;
int bw = i / 1000000 % 10;
if (gbw && ssw && b==w) {
//7位数的回文数 + 1
count++;
}
}
return count;
}
}
/*
-
定义一个方法,求出给定的数字在给定int型数组中出现的次数,如果一次没有出现则返回0
如:给定数字3 求出3在数组 int[] arr = {3,4,3,5,7,9};中出现的次数
*/
public class Task03 {
public static void main(String[] args) {
//1.指定要查找的数字
int key = 3;
//2.指定数组
int[] arr = {3,4,3,5,7,9};
//3.求出给定的数字在给定int型数组中出现的次数
int count = getCount(arr, 3);
System.out.println(“出现的次数:” + count);}
/*
- 求出给定的数字在给定int型数组中出现的次数
- 指定方法的名称: getCount
- 指定方法的参数: int[] arr, int key
- 指定方法的返回值: int
*/
public static int getCount(int[] arr, int key){
//1.记录key出现的次数
int count = 0;
for (int i = 0; i < arr.length; i++) {
//比较数组元素与key至是否相同
if (arr[i] == key) {
//key出现的次数 + 1
count++;
}
}
return count;
}
}
/*
-
定义一个方法,查找指定数字在数组中出现的位置(若出现多次,多次打印)
如: 数组[1232]要查找的数是2 则方法内部会打印索引值 1 ,3
数组[1232]要查找的数是5 则方法每部会打印 “数组中没有这个数字”
*/
public class Task04 {
public static void main(String[] args) {
//1.指定数组
int[] arr = {1,2,3,2};
//2.指定要查找的数字
//int key = 2;
int key = 5;
//3.查找指定数字在数组中出现的位置
getIndex(arr, key);
}/*
-
查找指定数字在数组中出现的位置
-
指定方法的名称:getIndex
-
指定方法的参数:int[] arr, int key
-
指定方法的
-