5.1
/*
创建101个长度的数组,如果输入一个数字,那么这个数组的值加一,最后输出的时候输出第i个数字的个数,如果不等于0就输出。然后根据数字的
个数看是不是复数即可
*/
import java.util.*;
class Home05_01{
public static void main(String []args) {
Scanner in = new Scanner(System.in);
int []num=new int[101];//创建数组
System.out.print("输入若干数字0结束");
while (true) {
int a = in.nextInt();
if (a!=0) {
num[a]++;//这个数字的个数加一
}
else {
break;//结束
}
}
for (int i = 1;i<=100;i++) {
if (num[i]!=0) {
if (num[i]>1) {
System.out.println(i+" occurs "+num[i]+" times");//大于1
}
else {
System.out.println(i+" occurs "+num[i]+" time");//等于1
}
}
}
}
}
5.2
/*
创建一个数组,没输入一个数字,就遍历一遍数组,看是否有,如果没有,就添加上,如果有,就继续下一次。
最后输出这个数字即可
*/
import java.util.Scanner;
class Home05_02{
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int []num=new int[10];
int count = 0;
System.out.print("输入10个数字");
for (int i = 0;i<10;i++) {//输入数字
int k = 0;
int n = in.nextInt();
for (int j = 0;j<count;j++) {
if (num[j]==n)
k = 1;//看是否存在
}
if (k==0) {
num[count]=n;//不存在,添加数组
count++;
}
}
for (int i = 0;i<count;i++) {
System.out.println(num[i]);//遍历输出
}
}
}
5.3
/*
创建一个函数,将数组传递进去,进行循环,判断他是不是后一个数字大于前一个数字,如果都是,那么就排好了,如果不是,就没有
*/
import java.util.Scanner;
class Home05_03{
public static boolean isSort(int[]list) {
for (int i = 0;i<list.length-1;i++) {
if (list[i+1]<list[i]) {//不是所有的都升序
return false;
}
}
return true;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int []num = new int[n];
for (int i = 0;i<n;i++) {
int m = in.nextInt();//读取数据
num[i]=m;
}
if(isSort(num)) {//看函数的返回值
System.out.println("ok");
}
else {
System.out.println("no");
}
}
}
5.4
5.5
/*
遍历两个数组,如果每一个数字都相等,那么就是完全相同的数组,如果有一个数字不一样,就退出循环,就不是完全相同的数组
*/
import java.util.Scanner;
class Hmoe05_05{
public static boolean equals(int []a,int[] b) {
for (int i = 0;i<a.length;i++) {//看是不是每一个元素都相等
if (a[i]!=b[i]) {
return false;//不是
}
}
return true;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int []a = new int [n];
for (int i = 0;i<n;i++) {//输入两个数组
a[i]= in.nextInt();
}
int m = in.nextInt();
int []b = new int [m];
for (int i = 0;i<m;i++) {
b[i]= in.nextInt();
}
if (equals(a,b)) {//判断
System.out.println("yes");
}else {
System.out.println("no");
}
}
}