Suche Code für folgende Frage ...

Worrel

Bekanntes Gesicht
Mitglied seit
22.03.2001
Beiträge
23.007
Reaktionspunkte
9.014
AW: Eine wirklich große Herrausforderung... BITTE HELFT MIR BITTE BITTE

Blackhawk50000 am 14.02.2008 08:51 schrieb:
was denn 3^30? ich dachte es wären nur 30^3..... so ein misst....

und genau deswegen brauch ich ja das ganze in nem programm um nicht alle milliarden kombimöglichkeiten von hand durch testen zu müssen....

n programm austüfteln... schleife rein, und fertig.....

das programm muss nur... im laufe der nächsten woche fertig werden... bis spätestens....hmmm......dem 22.
Wobei du natürlich nicht alle Möglichkeiten durchgehen mußt.

Wenn du zB nur die letzte Stelle betrachtest und mit allen Kombinationen durchrechnest, werden ja schon einige Zahlenketten rausfallen, so daß du dann beim Testen der verbleibenden Zahlenketten für die nächste Stelle mit weniger Zahlenketten hantieren mußt.
 
TE
B

Blackhawk50000

Erfahrener Benutzer
Mitglied seit
02.12.2004
Beiträge
108
Reaktionspunkte
0
AW: Eine wirklich große Herrausforderung... BITTE HELFT MIR BITTE BITTE

Worrel am 14.02.2008 10:12 schrieb:
Wenn du zB nur die letzte Stelle betrachtest und mit allen Kombinationen durchrechnest, werden ja schon einige Zahlenketten rausfallen, so daß du dann beim Testen der verbleibenden Zahlenketten für die nächste Stelle mit weniger Zahlenketten hantieren mußt.



das ist richtig, aber das kan später dran.... der soll ruhig erst mal ALLES durchgehen..... nicht so kompliziert machen.... nur ganz einfach.....
 

Goddess

Bekanntes Gesicht
Mitglied seit
11.03.2004
Beiträge
2.846
Reaktionspunkte
0
AW: Eine wirklich große Herrausforderung... BITTE HELFT MIR BITTE BITTE

Ich habe dein Thema bereits gestern entdeckt und, nach mehrfachem lesen, auch Verstanden was du erreichen willst. Was ich während des lesens sofort bemerkt habe ist das du weder ein Konzept hast, noch viel Ahnung von der Sprache C#. Es gibt zum lösen deines Problems viele, mehr oder weniger einfache, Methoden. Ich werde dir aber nicht abnehmen den Code zu schreiben, und schon garnicht werde ich damit anfangen hier Code-Schnipsel zu veröffentlichen, und zu beschreiben wie es funktionieren kann. Das würde dir auch nicht weiter helfen, wenn ich das täte, da du die Hälfte davon wohl nicht verstehen würdest, wenn du dich nicht schon intensiver mit der Sprache befasst hast. Statt dessen möchte ich gerne einiges von dir Wissen und sehen, wie weit du selbst schon gekommen bist.

Mit welchen Programmiersprachen hast du denn bisher schon gearbeitet?

Welche Sprache benutzt du nun wirklich für dein Projekt? C++ oder C#? Du schreibst an einer Stelle, "...es wäre so einfach in C#, deshalb nimmst du das...", und an anderer Stelle schreibst du, "...du wissest es nicht, und es können auch C++ sein das du meinst..."

Wie sieht denn dein derzeitiger Ansatz aus, das Problem zu lösen? Ohne irgendwelche Rechnungen aufzustellen.

Hast du, ausser das Design zu erstellen, auch schon Code geschrieben?

Wie sieht dein derzeitiger Code aus? Falls du noch keinen Code hast, dann schreib als aller wenigstes das Grundgerüst hier in das Thema. Und Code so, wie du dir Vorstellen könntest, das es funktioniert Als kleines Beispiel:

using System;
using System.Threading;

namespace MyDecrypter
{
public class DeCrypter : code
{
...
}
for (int b = 0; b < 256; b++)
{
m_Key3[kb] = (byte)(tempKey[3 - (b % 4)] ^ m_Key1[kb]);
...
}
for (int x = 0; x < 4; x++)
{
addResult[x] = tempKey[3 - x];
}
Ad1 = (uint)((addResult[3] << 2) | (addResult[2] << 16) | (addResult[1] << 8 ) | (addResult[0]));
}
// noch mehr Code
}
}

Bevor du antwortest, denk bitte genau darüber nach, was du sagen willst. ;)
 
TE
B

Blackhawk50000

Erfahrener Benutzer
Mitglied seit
02.12.2004
Beiträge
108
Reaktionspunkte
0
AW: Eine wirklich große Herrausforderung... BITTE HELFT MIR BITTE BITTE

Goddess am 14.02.2008 13:58 schrieb:
Bevor du antwortest, denk bitte genau darüber nach, was du sagen willst. ;)

Okay, ich muss sagen, damit haste mich geflasht.. hehe... :).... also.

Ich habe kleinere einbliche in Assabler, Basic, TuboPaskal, c, c++, PHP, HTML bekommen.... ABER ich befasse mich erstmals intensiv mit einer sprache und das ist C#.Net...... Ich möchte darin unbeding sehr gut sein, da mir diese sprache wirklich viel spaß macht..... mein bisheriges konzept sieht leider mager aus, da ich ausbildungsmäßig heute eine änderung an einer php seite vornehmen musste die ich nicht selbst geschrieben habe, und ich von php vorher KEINE ahnung hatte (heute (2 wochen später) etwas mehr)

angefangen mal so

Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            int Modifirer1 = Convert.ToInt32(tb_Modi1.Text);
            int Modifirer2 = Convert.ToInt32(tb_Modi1.Text);
            int Modifirer3 = Convert.ToInt32(tb_Modi1.Text);
            //Dann muss er eben jedes irgendwie mit jedem vergleich, wobei das vergleich noch nicht das problem ist....
        }
    }
}
 

Goddess

Bekanntes Gesicht
Mitglied seit
11.03.2004
Beiträge
2.846
Reaktionspunkte
0
AW: Eine wirklich große Herrausforderung... BITTE HELFT MIR BITTE BITTE

Blackhawk50000 am 15.02.2008 18:13 schrieb:
angefangen mal so

Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using System;
using System.Collections.Generic;
[s]using System.[/s]
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
Darauf solltest du schon einmal nicht aufbauen. Mehrfache using directives, zum Beispiel using System.Collections.Generic; werden zwar nicht als Fehler gemeldet, bringen aber auch nichts.

//Dann muss er eben jedes irgendwie mit jedem vergleich, wobei das vergleich noch nicht das problem ist....
Und wo siehst du das Problem? Schreib es mal hier herein, schreib auch mögliche Ansätze hier in das Thema, es können Code-Schnipsel und Gedanken sein die du dir dazu gemacht hast. Dann lässt es sich leichter beurteilen ob dein Ansatz etwas bringt, oder ob du lieber etwas anderes statt dessen versuchen könntest. Einen kleinen Hinweis möchte ich dir jetzt schon geben, zur Lösung des generellen Problems könnte sich der Ansatz des Spiels Mastermind als hilfreich erweisen. ;)
 
TE
B

Blackhawk50000

Erfahrener Benutzer
Mitglied seit
02.12.2004
Beiträge
108
Reaktionspunkte
0
AW: Eine wirklich große Herrausforderung... BITTE HELFT MIR BITTE BITTE

Goddess am 15.02.2008 19:49 schrieb:
Blackhawk50000 am 15.02.2008 18:13 schrieb:
angefangen mal so

Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using System;
using System.Collections.Generic;
[s]using System.[/s]
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
Darauf solltest du schon einmal nicht aufbauen. Mehrfache using directives, zum Beispiel using System.Collections.Generic; werden zwar nicht als Fehler gemeldet, bringen aber auch nichts.

//Dann muss er eben jedes irgendwie mit jedem vergleich, wobei das vergleich noch nicht das problem ist....
Und wo siehst du das Problem? Schreib es mal hier herein, schreib auch mögliche Ansätze hier in das Thema, es können Code-Schnipsel und Gedanken sein die du dir dazu gemacht hast. Dann lässt es sich leichter beurteilen ob dein Ansatz etwas bringt, oder ob du lieber etwas anderes statt dessen versuchen könntest. Einen kleinen Hinweis möchte ich dir jetzt schon geben, zur Lösung des generellen Problems könnte sich der Ansatz des Spiels Mastermind als hilfreich erweisen. ;)


das mit den doppelten usings war eine copy and past fehler....

also was ich zunächst als problem sehe ist es diese verdammte texteingabe der 30 modifikatoren erst in ein arrey (zahl für zahl in ein eigeney arrey-element) und das ganze dann noch in ein rechenbares int zu bringen....
ich habs schon versicht mit

int Modifire1 = Convert.ToInt16(tb_Modifikator1.Text);
int[] stelle = new int[8];
stelle = Modifire1;

tb_Ziel.Text = stelle[3].ToString(); //textausgabe des hoffentlich 3. zeichens der zahlenfolge

aber das brachte auch nichts, dann hab ichs versucht mit

int Modifire1 = Convert.ToChar(tb_Modifikator1.Text);

war aber klarerweise dann ein formatfehler....

dann kam die idee mit

char[] Modifirer1 = tb_Modi1.Text.ToCharArray();
char[] Modifirer2 = tb_Modi1.Text.ToCharArray();
char[] Modifirer3 = tb_Modi1.Text.ToCharArray();

tb_Ziel.Text=Modifirer1[3].;

war aber auch n fehler... :(

..
 
TE
B

Blackhawk50000

Erfahrener Benutzer
Mitglied seit
02.12.2004
Beiträge
108
Reaktionspunkte
0
AW: Eine wirklich große Herrausforderung... BITTE HELFT MIR BITTE BITTE

also, ich bin jetzt schonmal so weit, das ich meine eingabe in ein arrey einlesen kann.... zahl für zahl....ich habe auch schon versucht da ne rechnung ein zu bauen, aber der rechnet nicht mit den wertden die drin stehen wie zum beispiel 5, sondern mit dem wert des wertes oder sowas... keine ahnung.... das ist der aktuelle stand

Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            string Schlüssel = tb_Schlüssel.Text;
            string Modifirer1 = tb_Modifikator1.Text;
            string Modifirer2 = tb_Modifikator2.Text;
            string Modifirer3 = tb_Modifikator3.Text;
            string Ziel = tb_Ziel.Text;

            char[] arrSchlüssel = Schlüssel.ToCharArray();
            char[] arrMorifirer1 = Modifirer1.ToCharArray();
            char[] arrMorifirer2 = Modifirer1.ToCharArray();
            char[] arrMorifirer3 = Modifirer1.ToCharArray();
            char[] arrZiel = Ziel.ToCharArray();


            for (int a = 0; a < arrSchlüssel.Length; a++)
            {
                for (int b = 0; f < arrMorifirer1.Length; b++)
                {
                    for (int c = 0; c < arrMorifirer2.Length; c++)
                    {
                        for (int d = 0; d < arrMorifirer3.Length; d++)
                        {
                            int control = Convert.ToInt16(arrSchlüssel[a]) + Convert.ToInt16(arrMorifirer1[f]) + Convert.ToInt16(arrMorifirer3[c]) + Convert.ToInt16(arrMorifirer3[d]);

                            if (control >= 6)
                            {
                                control -= 6;
                                if (control >= 6)
                                {
                                    control -= 6;
                                    if (control >= 6)
                                    {
                                        control -= 6;
                                    }
                                }
                            }
                            if (control < 0)
                            {
                                control += 6;
                                if (control < 0)
                                {
                                    control += 6;
                                    if (control < 0)
                                    {
                                        control += 6;
                                    }
                                }
                            }
                                tb_Resultat.Text += control.ToString();
                            
                        }
                    }
                }
            }


        }
    }
}
 
Oben Unten