doppelte int Werte



  • Hallo,
    ich hab ein Problem, ich habe fuenf integer Variablen, a,b,c,d,e - diese stellen positive int Werte dar, die bei Optionen eingegeben werden koennen zB Zeilennummer wo die Ausgabe verschiedener Zwischenergebnisse einer Berechnung erscheinen sollen in einem File.

    Allerdings soll es keine doppelten geben koennen, eine Zeile kann also quasi nicht gleichzeitig die Summen aller Werte und deren Durchschnitt enthalten, sondern der Durchschnitt soll dann in der naechsten Zeile stehn.

    Wie auch immer, wie pruefe ich effektiv und elegant, ob ich doppelte Zahlen drin hab, bei fuenf versch int vars - mir faellt nur Schrott ein?



  • Ich glaube du solltest dir bei dieser "Menge" Integern keine so großen Gedanken darüber machen, ob du das nun effektiv und/oder elegant überprüfst.

    Mir würde nur folgendes einfallen:

    int[] vars = new int[5];
    ...
    for (int i = 0; i < vars.length; ++i) {
        for (int j = 0; j < vars.length; ++j) {
            if (j == i) continue;
            if (vars[i] == vars[j]) return true; // ja, ein Wert doppelt
        }
    }
    

    Ich denke, daran gibt es jetzt nicht so großartig was dran auszusetzen.
    Ich glaube mein 500mhz PC wird damit nicht überlastet. 😃
    Eleganz? In meinen Augen ist alles, was ich schreibe, elegant. ^^



  • Danke!!!
    werds gleich ausprobieren - an meinem 450 Mhz Pentium 2, hoffentlich gehts dann bei mir auch noch 😉


Anmelden zum Antworten