Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 初始化数组并计算某个范围内的数字频率_Java_Arrays_Range_Frequency - Fatal编程技术网

Java 初始化数组并计算某个范围内的数字频率

Java 初始化数组并计算某个范围内的数字频率,java,arrays,range,frequency,Java,Arrays,Range,Frequency,//注意这是一个练习问题 我正在尝试初始化一个具有50个整数值的数组,并计算范围为10的数字的频率。。19.(带有用户输入) 到目前为止,我的用户输入只允许输入10到19之间的数字,但我的下一步和问题是计算用户在输入中使用的数字的频率。如果您能帮助我们开始下一步,我们将不胜感激 import java.util.Scanner; public class Ex1partA { public static void main(String[] args) { Scanne

//注意这是一个练习问题 我正在尝试初始化一个具有50个整数值的数组,并计算范围为10的数字的频率。。19.(带有用户输入) 到目前为止,我的用户输入只允许输入10到19之间的数字,但我的下一步和问题是计算用户在输入中使用的数字的频率。如果您能帮助我们开始下一步,我们将不胜感激

import java.util.Scanner;

public class Ex1partA {
    public static void main(String[] args) {
        Scanner kbin = new Scanner(System.in);

        int list[]=new int[50];
        int i=0;

        System.out.print("\n\tInput numbers from 10 to 19: \n");

        while (i < 50) {
            int value = kbin.nextInt();

            if (value >= 10 & value <= 19) {
                list[i] = value;
                i++;
            } else {
                System.out.println("!! Bad number !!");
            }

        }

        for (int value : list) {
            System.out.println(" "+value);
        }
    }
}
import java.util.Scanner;
公共类Ex1partA{
公共静态void main(字符串[]args){
扫描仪kbin=新的扫描仪(System.in);
整数列表[]=新整数[50];
int i=0;
System.out.print(“\n\t输入10到19之间的数字:\n”);
而(i<50){
int value=kbin.nextInt();

如果(值>=10&value有另一个长度为10的数组。
在数组的第i个单元格中,添加插入值i+10的次数。

然后只需标准化(除以50)。

定义一个频率数组
freq[]

int[] freq= new int[10];// Declare an array of size 10

while (i < 50){
int value = kbin.nextInt();
if (value >= 10 & value <= 19) {
    list[i] = value;

    freq[value-10]++; // Count the number in array position.
    i++;
} else {
    System.out.println("!! Bad number !!");    
   }
}

//Now, display the frequency of number.
for(int k=0;k<freq.length;k++){
  System.out.println("value : " +(k+10)+" frequency : "+freq[k]);
}
int[]freq=new int[10];//声明大小为10的数组
而(i<50){
int value=kbin.nextInt();
如果(value>=10&value
我做过这个,下面是代码,
`导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.Iterator;
导入java.util.Map;
导入java.util.Scanner;
导入java.util.Set;
导入java.util.Map.Entry;
公共类MapMagic{
公共静态void main(字符串[]args){
Map Map=newhashmap();
扫描仪kbin=新的扫描仪(System.in);
整数列表[]=新整数[50];
int i=0;
System.out.println(“输入限制:”);
int limit=kbin.nextInt();
System.out.println(“输入元素”);
while(i
你的意思是要计算50个数字中有多少在某个范围内?根据用户的输入构建一个映射。键是用户输入,值是用户给出该数字的次数。只需
映射[输入]++
或使用用户输入的值(在范围检查后)作为数组的索引,并在该索引处递增元素。除非您想记住输入数字的顺序,否则无需保存值。&&是快捷运算符。&将起作用。Ya ingo。我将尝试使用此方法。
I worked on this and here is the code,

`import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
import java.util.Map.Entry;
public class MapMagic {
    public static void main(String[] args) {
        Map<Integer,Integer> map=new  HashMap<Integer, Integer>();
        Scanner kbin = new Scanner(System.in);
        int list[]=new int[50];
        int i=0;
        System.out.println("Enter limit:");
        int limit = kbin.nextInt();
        System.out.println("Enter Elements");
        while (i < limit) {
            int key = kbin.nextInt();
            if(map.get(key)==null){
                map.put(key,1);
            }
            else{
                int temp=map.get(key);
                temp++;
                map.put(key,temp);
            }
            i++;
        }
        System.out.println("Occurence");
        Set<Entry<Integer, Integer>> var =map.entrySet();
        for (Iterator iterator = var.iterator(); iterator.hasNext();) {
            Entry<Integer, Integer> entry = (Entry<Integer, Integer>) iterator.next();
            System.out.println(entry.getKey()+":"+entry.getValue());
        }
    }
}
`