2016-12-16 10 views
-3

私の大学の研究室作業では、4つのタスクを完了する必要があります。私は現在9の6にあり、それを大部分は完了しましたが、私はそれの最後の部分を完了するのが難しいです。これは、私たちが何をしなければならないかの説明です:アレイと出力を使用した特定の出力を持つ名前と年齢のアプリケーション

は、2つの配列を定義プログラム書く - あなたのプログラムは、文字列の入力をユーザーに尋ねるべき大きさの両方10. 、文字列のいずれかと整数のいずれかを人物の名前である
を表し、年齢を表す整数です。 ユーザー
が名前の代わりに「完了」
と入力されるか、または配列がいっぱいになるまで(すなわち、
の10ペアが入力されるまで)、これを続行する必要があります。それから、の名前と年齢、そして最も若いものと最も古いものの名前が のように表示されます。

ヒント:一つのトリッキーな部分は、あなたが入力した名前を入力完了して[完了]したら、
プログラムはその後、「完了」の名前で人の年齢を尋ねていないことを確認している - 注意してくださいこれについて

私は太字で上記の問題を強調しました。以下は私が現在持っているコードですが、太字のテキストを正しく行う方法がわかりません。

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

public class nameAge { 


public static void main(String[] args){ 
String[] name = new String[10]; 

    int[] age = new int[10]; 

    Scanner in = new Scanner(System.in); 

    String NAME_REQUEST = ("Please enter name"); 
    String AGE_REQUEST = ("Please enter age"); 

    System.out.println("Please enter the name of a person and then their age. Do this for up to 10 people and once finished, type 'done'"); 
    name[0] = in.nextLine(); 
    System.out.println(AGE_REQUEST); 
    age[0] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[1] = in.next(); 
    System.out.println(AGE_REQUEST); 
    age[1] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[2] = in.next(); 
    System.out.println(AGE_REQUEST); 
    age[2] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[3] = in.next(); 
    System.out.println(AGE_REQUEST); 
    age[3] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[4] = in.next(); 
    System.out.println(AGE_REQUEST); 
    age[4] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[5] = in.next(); 
    System.out.println(AGE_REQUEST); 
    age[5] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[6] = in.next(); 
    System.out.println(AGE_REQUEST); 
    age[6] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[7] = in.next(); 
    System.out.println(AGE_REQUEST); 
    age[7] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[8] = in.next(); 
    System.out.println(AGE_REQUEST); 
    age[8] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 
    name[9]= in.next(); 
    System.out.println(AGE_REQUEST); 
    age[9] = in.nextInt(); 
    System.out.println(NAME_REQUEST); 


    int size = name.length; 
    int sizeN = age.length; 

    for (int i=0; i < size; i++) { 
     System.out.println("Name: " + name[i]); 
     System.out.println("Age: " + age[i]); 
    } 
    int smallest = age[0]; 
    int largetst = age[0]; 
    for(int i=1; i< age.length; i++) 
      { 
        if(age[i] > largetst) 
          largetst = age[i]; 
        else if (age[i] < smallest) 
          smallest = age[i]; 

      } 

      System.out.println("Largest Number is : " + largetst); 
      System.out.println("Smallest Number is : " + smallest); 
    } 
} 
+0

を助けるかもしれない、ように、あなたが特定の領域で問題が発生している_why_指定しよう読者はあなたにそれらを説明することができます。あなたがしたようにコードを書くだけの人がいると、何かを学ぶ可能性は低くなります。緊急の懇願や締め切りを控えることも控えてください。ボランティアにとっては決して緊急ではありません。 – halfer

答えて

-1

これを試してみて、うまくいきました。希望が役立ちます。ハッピーコーディング。宿題の問題について尋ねるときは、Java にこのコードをループドキュメントの表情を取らなければならない

package com.pearson.nextgen.aggregatedsessionservice; 

import java.util.Scanner; 

public class NameAgeTest { 

    public static void main(String[] args) { 
     String[] name = new String[10]; 
     int[] age = new int[10]; 
     Scanner in = new Scanner(System.in); 

     String NAME_REQUEST = "Please enter name"; 
     String AGE_REQUEST = "Please enter age"; 

     int count = 0; 
     while (count < 10) { 
      System.out.println(NAME_REQUEST); 

      String nameInput = in.next(); 
      if (nameInput.equalsIgnoreCase("done")) { 
       break; 
      } 
      name[count] = nameInput; 
      System.out.println(AGE_REQUEST); 
      age[count] = in.nextInt(); 

      count++; 
     } 

     int[] minAndMaxIndex = findMinAndMaxIndex(age, count); 
     System.out.println("Youngest Person: " + name[minAndMaxIndex[0]]); 
     System.out.println("Oldest Person: " + name[minAndMaxIndex[1]]); 

    } 

    private static int[] findMinAndMaxIndex(int[] inputArray, int count) { 
     int min, max = 0; 
     int minIndex = 0, maxIndex = 0; 
     max = min = inputArray[0]; 

     for (int i = 0; i < count; i++) { 
      if (inputArray[i] > max) 
       maxIndex = i; 
      else if (inputArray[i] < min) 
       minIndex = i; 

     } 
     return new int[] { minIndex, maxIndex }; 
    } 

} 
+0

私は2つの理由から後悔しました。まず、あなたが何を変えたのか、なぜそれを説明するのかここでは説明しません。第二に、あなたが宿題で不正行為をしている人を助けるなら、それは彼らに役立つのでしょうか? OPが講師に自分の仕事を守らなければならない場合はどうなりますか? – halfer

0

はあなたに

public static void main(String[] args) { 
    int youngest =0,older=0; 
    String[] name = new String[10]; 
     int[] age = new int[10]; 
     String NAME_REQUEST = ("Please enter name"); 
     String AGE_REQUEST = ("Please enter age"); 

    for(int i=0 ; i< 10;i++){ 
     Scanner in = new Scanner(System.in); 
     System.out.println(NAME_REQUEST); 
    String tmpName = in.nextLine(); 
    if(tmpName.equalsIgnoreCase("done")) 
    break; 
    name[i] = tmpName; 
    System.out.println(AGE_REQUEST); 
    age[i] = in.nextInt(); 
    if(age[i] > age[older]) 
    older = i; 
    if(age[i] < age[youngest]) 
    youngest = i; 

    } 

    System.out.println("OLDER is : " + name[older]); 
    System.out.println("Younger : " + name[youngest]); 
} 
関連する問題