vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln 
Autor: Sloorg
Datum: 25.07.16 09:31

Hiya,

ich hätte hier noch 'nen Code in C#, aber da hab ich leider gar keinen Plan, wie man den ausführen kann... (hat ein Kumpel von mir an der Uni erstellt)

using System;
using System.Linq;
using System.Collections.Generic;
 
class NoteProgram
{
    static public int[] ALLOWED_LENGTHS = new int[] {2, 4, 8, 16};
 
    public static void Main()
    {
        List<String> notes = new List<String>();
 
        // Werte einlesen
        while(true) {
            Console.Write("Notenwert eingeben: ('ENDE' beendet die Eingabe): ");
            String line = Console.ReadLine().Trim();
            int value = 0;
 
            // Ende der Eingabe
            if (line == "ENDE")
                break;
 
            // Validieren der Eingabe
            if (line[0] == '_') {
                if (int.TryParse(line.Substring(1, line.Length - 1), out value) _
                  && ALLOWED_LENGTHS.Contains(value)) {
                    notes.Add(line);
                }
                else {
                    Console.WriteLine("Ignoriere ungueltigen Notenwert {0}", _
                      line);
                }
            }
            else if (int.TryParse(line, out value) && ALLOWED_LENGTHS.Contains( _
              value)) {
                notes.Add(line);
            }
            else {
                Console.WriteLine("Ignoriere ungueltigen Notenwert {0}", line);
            }
        }
 
        // Permutationen finden
        List<List<String>> permutations = FindPermutations(notes);
 
        // Permutationen ausgaben
        Console.WriteLine("Sich ergebende Notenpermutationen:");
        foreach (List<String> permutation in permutations ) {
            foreach (String note in permutation ) {
                Console.Write(" ");
                Console.Write(note);
            }
 
            Console.WriteLine();
        }
    }
 
    /**
     * Alle Permutationen finden und zurückgeben.
     *
     * \param[in] source
     * Zu permutierende Liste.
     *
     * \param key
     * Interner Gebrauch. Nicht von außen setzen.
     *
     * Diese Methode nutzt den hier beschriebenen Algorithmus:
     * <http://stackoverflow.com/a/14444037>.
     */
    private static List<List<String>> FindPermutations(List<String> source, int k = 0)
    {
        List<List<String>> result = new List<List<String>>();
 
        int i = 0;
        for (i=k; i < source.Count; i++) {
            String tmp = source;
            source = source[k];
            source[k] = tmp;
 
            foreach (List<String> permlist in FindPermutations(source, k + 1)) {
                result.Add(permlist);
            }
 
            tmp = source[k];
            source[k] = source;
            source = tmp;
        }
        if (k == source.Count - 1) {
            result.Add(source.GetRange(0, source.Count));
        }
 
        return result;
    }
}
Gruß, Sloorg.

Beitrag wurde zuletzt am 25.07.16 um 09:37:15 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
4 Zahlenreihen -- alle möglichen Kombinationen ermitteln4.791Schudi13.02.12 19:53
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln3.547Manfred X13.02.12 20:22
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln3.422Schudi13.02.12 20:32
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln3.963Manfred X13.02.12 21:25
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.503Sloorg09.07.16 13:22
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.716Manfred X09.07.16 21:29
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln3.744Preisser13.02.12 21:38
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.567Sloorg09.07.16 23:08
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.603Manfred X10.07.16 10:33
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.693Franki21.07.16 04:23
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.646Sloorg11.07.16 03:56
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.524Sloorg20.07.16 07:41
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.503Franki21.07.16 04:27
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.519Sloorg21.07.16 10:21
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.478Sloorg21.07.16 11:10
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.485Franki22.07.16 03:15
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.486Sloorg22.08.16 10:05
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.440Manfred X21.07.16 11:12
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.479Franki22.07.16 02:36
Unterscheidbare Permutationen2.503Manfred X22.07.16 04:49
Re: Unterscheidbare Permutationen2.496Franki24.07.16 01:33
Re: Unterscheidbare Permutationen2.404Sloorg24.07.16 19:35
Re: Unterscheidbare Permutationen2.493Manfred X24.07.16 21:05
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.548Sloorg25.07.16 09:31
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.591Sloorg25.07.16 09:40
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.450Manfred X25.07.16 16:01
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.491Franki27.07.16 01:27
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.456Manfred X28.07.16 12:07
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.584kocengmalek28.07.16 09:14
Re: 4 Zahlenreihen -- alle möglichen Kombinationen ermitteln2.608kocengmalek28.07.16 10:14

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel