Potrzebna pomoc w napisaniu programu

0

Witam. Muszę napisać program który pobierze od użytkownika "Imie_Nazwisko" + "Wzrost" około 10 osób. Następnie znajdzie najniższą osobę. Nie wiem czy to mam zrobic na tablicach czy jak... Mógłby ktoś pomóc? Przynajmniej naprowadzić trochę?

0

Robisz dwie tablice 10-elementowe. Jedna przechowuje imię i nazwisko, a druga wzrost. W drugiej wyszukujesz najmniejszą wartość i wypisujesz nazwisko o tym samym indeksie z pierwszej tablicy.

0

Nie trzeba tablic. Skoro ma wyznaczyć najniższa osobę to nie potrzeba przechowywania imion,nazwisk i wzrosty innych.

Nie znam nic javy ale coś takiego może:


-> Tworzysz stringa z imieniem i nazwiskiem, inta czy tam float ze wzrostem.
->Pobierasz dane 1 osoby zapisujesz do zmiennych.
->Pobierasz dane kolejnej osoby -> Jeśli jej wzrost jest mniejszy od aktualnie zapisanej to podmieniasz. I tak do końca ;p 
0

Mam na razie tyle... co dalej?

import java.util.Scanner;

public class Pracadomowa{
  public static void main(String[] args){

      String[] imiona = new String[4];
     Scanner odczytimion = new Scanner(System.in);
     //pobranie danych
     System.out.println("Podaj imiona: ");
     for(int i=0; i<4; i++)
         imiona[i] = odczytimion.nextLine();

     int[] wzrost = new int[4];
     Scanner odczytwzrostu = new Scanner(System.in);
     System.out.println("Podaj wzrost: ");
     for(int i=0; i<4; i++)
         wzrost[i] = odczytwzrostu.nextInt();

  }
}

ace4ur: Właśnie chodzi mi o to żeby najpierw pobrać wszystkie a później prównać.

0

A skoro tak to tak jak kolega napisał powyżej.

->Stwórz tablice imion i wzrostu.
->Pobierz w pętli imiona i wzrost.
-> Porównaj wzrosty(pętlą? sortowaniem? jest wiele sposobów) 
0

Po co sortować? Przecież powinien jednocześnie podawać imię, nazwisko i wzrost danej osoby, tylko wzrost umieszczać w osobnej tablicy. Następnie wypisać imię i nazwisko z pierwszej po czym znaleźć ten sam index w drugiej i wypisać wzrost.

0

allocer Tak by było najlepiej tylko zapomniałeś chyba że mam znaleźć najmniejszy wzrost na koniec.

0

Nie wiem dokładnie, jak jest w Javie. Ale jakbyś zastosował coś, jak vector par w C++ czy hashtable z C#, gdzie kluczem byłoby imię i nazwisko a wartością wzrost.
Najmniejszy wzrost możesz szukać na bieżąco przy podawaniu danych. Tworzysz zmienną minWzrost=300 (nikt nie będzie miał więcej :)) i porównujesz podawane zmienne. Jeśli jest mniejsza to minWzrost=zmienna;

0

no a ja kompletnie się na C++ nie znam :). Może ktoś kto w javie siedzi się odezwie?

0

Naskrobałem coś takiego w c#:

 using System;

class App
{
    static void Main()
    {
        Console.Write("Ile osób: ");
        string[] nazwa = new string[Convert.ToInt32(Console.ReadLine())];
        int[] wzrost = new int[nazwa.Length];
        int WzrostMin = 250, index = 0;

        for (int i = 0; i < nazwa.Length; i++)
        {
            Console.Write("Osoba[{0}]. Podaj imię i nazwisko: ",i);
            nazwa[i] = Console.ReadLine();
            Console.Write("Podaj jej wzrost: ");
            wzrost[i] = Convert.ToInt32(Console.ReadLine());
            if (wzrost[i] < WzrostMin)
            {
                WzrostMin = wzrost[i];
                index = i;
            }
        }

        Console.Write("Najniższa osoba to {0} a wzrostu ma {1}.", nazwa[index], WzrostMin);
        Console.ReadLine();

    }
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0