2016-10-10 18 views
-3

配列内の組み込み数のグループの最小の差を計算するプログラムがあります(この場合、最小差は4と1の間の最小差であるため最小差は3です) 。最小差分を表示する値のユーザー入力を格納する

import java.util.*; 


public class Mindifference { 


Scanner numinput= new Scanner(System.in); 
public static void main(String[] args) 
{ 
    int[] a = new int[] {4, 9, 1, 32, 13}; 
    Arrays.sort(a); 
    int minDiff = a[1]-a[0]; 
    for (int i = 2 ; i != a.length ; i++) { 
     minDiff = Math.min(minDiff, a[i]-a[i-1]); 
    } 
    System.out.println(minDiff);  
} 
    } 
+0

何出力は?どのようなアウトプットを期待しましたか? – Bathsheba

+0

出力を最小差の計算値にします。この現在のコードと同じように、それらの数字の間の最小の最小差が1と4の間にあるので、3を出力します。 – megasxrl

答えて

0

初歩的な実装::私はプログラムではなく、これは以下の現在のコードである6に入力された値の量を設定するforループを使用してユーザから値を取りたい

import java.util.Arrays; 
import java.util.Scanner; 

public class MinDifference 
{ 

    public static void main(String[] args) 
    { 
    Scanner scanner = new Scanner(System.in); 
    int[] inputs = new int[6]; 
    for (int i = 0; i < 6; i++) 
    { 
     System.out.print("Enter an integer: "); 

     inputs[i] = scanner.nextInt(); 
    } 
    scanner.close(); 
    Arrays.sort(inputs); 
    int minDiff = inputs[1] - inputs[0]; 
    for (int j = 2; j != inputs.length; j++) 
    { 
     minDiff = Math.min(minDiff, inputs[j] - inputs[j - 1]); 
    } 
    System.out.printf("The minimum difference is %d", minDiff); 
    } 
} 
関連する問題