基本上它是一个从用户那里获取6个输入数字,将它们存储在数组中,计算模式的程序。
package p18;
import java.util.Scanner;
public class P18 {
public static void main(String[] args) {
Scanner S=new Scanner(System.in);
int[] arr1=new int [6];
for (int i = 0; i < 6; ++i) {
int g = S.nextInt();
arr1[i] = g;
}
int input=6;
for(int i=0;i<input;i++)
int count=0;
for(int j=0;j<input;j++)
{
int temp=arr1[j];
int tempco=0;
for(int p=0;p<input;p++)
if(arr1[p].equals[temp])
tempco++;
if(tempco>count)
{
int t=temp;
count=tempco;
}}
System.out.println("the most frequent number"+t+, +count);
}}
答案 0 :(得分:0)
我认为这是最好的方法。使用HashMap,索引数组的元素,每个位置的值是数组中该数字的出现次数。
Scanner S=new Scanner(System.in);
int[] arr1=new int [6];
for (int i = 0; i < 6; ++i) {
int g = S.nextInt();
arr1[i] = g;
}
S.close();
int t = 0;
int count = 0;
int input=arr1.length;
for(int j=0;j<input;j++){
int temp=arr1[j];
int tempco=0;
for(int p=0;p<input;p++){
if(arr1[p]==temp)
tempco++;
if(tempco>count){
t=temp;
count=tempco;
}
}
}
System.out.println("the most frequent number is "+String.valueOf(t)+"with "+String.valueOf(count)+" occurrences");
你去了,你的代码得到纠正的解决方案。您的代码中存在多处错误,因此请不要习惯于将代码解决方案作为例程来使用,这样您就不会学习任何东西,而且这个网络不适用于此,它是要求提出你不知道不做完整课程的具体问题或错误