Laden...
D
DivinitY myCSharp.de - Member
Student Österreich Dabei seit 17.02.2005 58 Beiträge
Benutzerbeschreibung

Forenbeiträge von DivinitY Ingesamt 58 Beiträge

19.07.2007 - 23:19 Uhr

Soda, hab' es nun doch noch hingekriegt jippie

Vielen Dank herbivore für die prompte Hilfestellung.

[...]wählst du in einer Schleife jede Zahl von Index 0 bis Länge der Zahlenvorratsliste minus noch zu wählende Zahlen[..]

Entweder habe ich es nicht ganz richtig verstanden, jedenfalls hat es erst so funktioniert wie ich wollte als ich das Minus wegließ.

Ein weiterer (Anfänger-)fehler der mir unterlaufen ist, war dass ich direkt die Laufvariable k verändert habe, was natürlich beim wiederholten Aufruf einer Methode auf der selben Ebene natürlich zu negativen k's führte und zu Exceptions 😉.
Dann doch lieber k-1, statt k--.

Das teilweise mühsame Debuggen von rekursiven Aufrufen hat meine Lösung nun ein bisschen später fertig werden lassen. 😭

So anbei nun der Code, der zur Einfachheit halber vorerst mit String und nicht direkt mit den von mir gewünschten Arrays implementiert wurde:


class Program
    {
        static void Main(string[] args)
        {
            Combination("", "1234567", 5);
            Console.ReadLine();
        }

        public static void Combination(String komb,String zahl, int k)
        {
            if (k == 0)
            {

                Console.WriteLine(komb);
                return;
            }
            
            for (int i = 0; i < zahl.Length; i++)
            {
                Combination(komb + zahl.Substring(i, 1), zahl.Substring(i+1), k - 1);
            }
        }
    }

19.07.2007 - 20:37 Uhr

Hallo,

ich suche nun schon verzweifelt nach einer Lösung für folgendes Problem:

Gegeben ist zB 1 2 3 4 5 6 7 (n = 7)
und k = 5

Nun möchte ich, dass ich die 21 möglichen Kombinationen algorithmisch ermittle.

Also aus einem Array mit 7 Zellen möchte ich alle möglichen Kombinationen von Arrays mit 5 Zellen ermittlen, wobei mir die Reihenfolge egal ist.

Ich tüftle nun schon seit ein paar Stunden mit Stift und Papier herum, allerdings habe ich wohl ein Brett vorm Kopf, ich kann einfach keinen Ansatz finden, den ich in Code umsetzen könnte.

Vermutlich wird es irgendwie mit Rekursion gehen, aber es will einfach nicht click machen.

Daher wäre ich für jeden Tipp sehr dankbar, muss keine Lösung sein, kann auch nur ein verwertbarer Denkansatz sein!

29.04.2006 - 11:43 Uhr

string x = "Dies ist ein Test!";
x = x.Substring(1, x.Length - 2);

MfG

19.04.2006 - 07:24 Uhr

Müsste wohl Komm schon Baby ft. Fatmann Scoop von Massive Töne sein.

Eine einfache Google-Suche nach "Wo geht die Party ab, hier geht die Party ab" hat das Ergebnis zu Tage gebracht.

MfG

30.11.2005 - 10:11 Uhr

Hallo,

meiner Meinung nach ist die ApplicationContext Klasse bestens für so ein Problem geeignet.

Viele Grüße

Christian

29.11.2005 - 19:54 Uhr

Hallo,

auch von mir noch eine kleine Anregung.

Fände es praktisch, wenn man irgendwie markieren kann, an welcher Stelle sich sicher kein Ufo befinden kann (wie zum Beispiel in Minesweeper mit rechter Maustaste), da es sonst relativ anstrengend und unkomfortabel zu spielen ist.

Viele Grüße

Christian

28.11.2005 - 16:47 Uhr

Hallo,


static void Main(string[] args)
        {
            Dictionary<string, string> dict = new Dictionary<string, string>();
            dict.Add("1", "eins");
            dict.Add("2", "zwei");
            dict.Add("3", "drei");

            foreach (string val in dict.Values)
            {
                Console.WriteLine(val);
            }

            foreach (string key in dict.Keys)
            {
                Console.WriteLine(key);
            }

            foreach (KeyValuePair<string, string> kvp in dict)
            {
                Console.WriteLine("{0} => {1}", kvp.Key, kvp.Value);
            }
            Console.ReadLine();
        }

MfG

Christian

28.11.2005 - 16:12 Uhr

Hallo,

wenn ich mich richtig erinnere, müsste doch Dictionary die generische Variante der Hashtable sein?

Viele Grüße

Christian

27.11.2005 - 10:00 Uhr

Hallo,

Eventuell bietet sich auch zahl.ToString("c"); an für Currency.

Viele Grüße

Christian

26.11.2005 - 15:45 Uhr

Hallo,

Siehe hier:
Sinus

MfG

Christian

26.11.2005 - 13:43 Uhr

Hallo,

g.FillRectangle(b, p.X - 1, p.Y - 1, 3, 3);

Der Dritte Parameter muss p.Y statt p.X lauten, dann werden es 5 Punkte.

Übrigens würde ich persönlich folgende foreach-Schleife verwenden:


foreach (Point p in points)
{
g.FillRectangle(b, p.X - 1, p.Y - 1, 3, 3);
}

MfG

Christian

18.11.2005 - 17:54 Uhr

http://www.ietf.org/rfc/rfc1459.txt?number=1459

Wenn du mIRC verwendest mag es eventuell auch hilfreich sein per /debug @DebugWindow in einem Fenster die Datenübertragung zu verfolgen.

MfG

10.11.2005 - 22:19 Uhr

Wollte wissen ob es einen sinnvollen Grund gibt, warum der XmlSerializer in .NET 2.0 nicht direkt generisch implementiert wurde.

Wäre statt


XmlSerializer serializer = new XmlSerializer(typeof(MySerializableClass));

nicht


XmlSerializer<MySerializableClass> serializer = new XmlSerializer<MySerializableClass>();

schöner, besser, sauberer usw.?

Wäre für jeden Hinweis dankbar, da dies auch für eigene Klassen interessant sein könnte, ob man sie mittels Generics erstellt oder nicht.

MfG

Christian

01.11.2005 - 20:11 Uhr

Wäre nett, falls mir dieses Reflector Add-In jemand zukommen lassen könnte, da blog.dotnetwiki.org nicht funktioniert und ich keine andere Download-Quelle finden konnte.

MfG

Christian

[EDIT]
Hat sich erledigt, Seite geht wieder!
Beitrag kann gelöscht werden.

01.11.2005 - 08:40 Uhr

Danke herbivore, scheint mir wirklich die beste Lösung zu sein.

MfG

Christian

31.10.2005 - 13:58 Uhr

Ich bin gerade dabei, die neuen C# 2.0 bzw. .NET 2.0 Features zu 'lernen'.

Dabei würde mich interessieren, welche Lösung zu bevorzugen ist, wenn man mehrere Predicates an die Array.Find Methode übergeben möchte.

In folgendem einfachen Beispiel, möchte ich überprüfen welche (erste) Zahl im Array sowohl natürlich als auch gerade ist.

Die erste Lösung ist einen eigenen Predicate zu schreiben, der beide beinhaltet.
Die zweite Lösung ist eine eigene Find-Methode zu schreiben, die mehrere Predicates erlaubt.
(Gibt es evtl. eine 3. Lösung in Richtung Multicast-Delegate, die ich nicht herausfinde?)


using System;
using System.Collections.Generic;
using System.Text;

namespace PredicateApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] array = new int[] { -7, -4, 2, 9 };

            int x = System.Array.Find<int>(array, IsNatural);
            Console.WriteLine("IsNatural: {0}",x);
            x = System.Array.Find<int>(array, IsEven);
            Console.WriteLine("IsEven: {0}", x);
            Console.WriteLine();

            x = System.Array.Find<int>(array, IsNaturalAndIsEven);
            Console.WriteLine("IsNatural and IsEven (1): {0}", x);

            x = MyArray.Find<int>(array, IsNatural, IsEven);
            Console.WriteLine("IsNatural and IsEven (2): {0}", x);

            Console.ReadLine();
        }

        public static bool IsNatural(int i)
        {
            return i >= 0;
        }

        public static bool IsEven(int i)
        {
            return i % 2 == 0;
        }

        public static bool IsNaturalAndIsEven(int i)
        {
            return IsNatural(i) && IsEven(i);
        }
    }
}

public static class MyArray
{
    public static T Find<T>(T[] array, params Predicate<T>[] matches)
    {
        if (array == null)
        {
            throw new ArgumentNullException("array");
        }
        if (matches == null)
        {
            throw new ArgumentNullException("matches");
        }
        foreach (T value in array)
        {
            bool _matches = true;

            foreach (Predicate<T> match in matches)
            {
                _matches &= match(value);
            }

            if (_matches)
                return value;
        }
        return default(T);
    }
}

Bin für jeden Kommentar dankbar!

MfG

Christian

07.10.2005 - 11:42 Uhr

if (rab_Einstellungen_Progressbar.Checked = true)

Der Vergleichsoperator wäre '==' statt dem Zuweisungsoperator '='.

Allerdings ist die gängige Praxis ohnedies folgende Schreibweise:


if (rab_Einstellungen_Progressbar.Checked)

MfG

05.10.2005 - 22:10 Uhr

public class Klasse
{
  Klasse() : this(1)
  {
    //
  }
  Klasse(int i)
  {
    // ..
  }
}

Oder hab ich es falsch verstanden, und du meinst etwas komplett anderes? Hoffe nicht 😉

MfG

05.10.2005 - 12:34 Uhr

Vielleicht hilft dir das hier weiter:

SVN System für Windows? Daten Synch?

MfG

14.09.2005 - 12:39 Uhr

Vielleicht gefällt dir dieses Control, und du ersparst dir Teile der Arbeit.

http://www.codeproject.com/useritems/XPTable.asp

MfG

10.09.2005 - 15:21 Uhr

Vielleicht hilft dir das hier weiter:

NET START listet aktive Dienste auf.

C:&gt;net start
Folgende Windows-Dienste sind gestartet:

[...]

Der Befehl wurde erfolgreich ausgeführt.

MfG

08.09.2005 - 17:51 Uhr

Ich würde einfach vorschlagen F7 zu drücken statt dem Doppelclick.

MfG

01.09.2005 - 17:33 Uhr

Der Standardplayer für [...] wurde geändert.

Gefällt mir nicht wenn eine Anwendung einfach alle Dateitypen an sich reisst, ohne dass ich dies erlaube/bestätige.

31.08.2005 - 23:50 Uhr

Für den Optionsdialog wird soweit ich weiß die Screensaver-Applikation mit dem Parameter /c (configure) ausgeführt, du musst also über die Programmparameter der Main-Funktion auf /c überprüfen um dann einen etwaigen Optionendialog zu öffnen.

MfG

29.08.2005 - 11:52 Uhr

Probier mal ob

sqlStmt = string.Format("UPDATE tabelle SET filename ='{0}', cd = '{1}', language = '{2}', text='{3}', date = TO_DATE('{4}'), archiv = '{5}' WHERE id='{6}'", Filename, CD, Language, Text, Date, Archiv, FileID);

funktioniert.

MfG

23.08.2005 - 14:02 Uhr

Hallo progger,

habe momentan nur VS 2005 Beta 2 bei der Hand, da findest du diese Einstellung unter:

Tools -> Options

Text Editor -> C# -> Formatting -> New Lines -> [ ] Place open brace on new line for methods

MfG DivinitY

21.08.2005 - 19:07 Uhr

Original von WhiteTiger
Ich finde es ne gute Lösung --> bin immer offen für Verbesserungen.

Ich finde meine besser 😁
Ist einfach ein sinnloser Umweg über die Konvertierung wenn der Ausgangsstring nicht extern vorgegeben ist, meiner Meinung nach.

MfG

21.08.2005 - 09:54 Uhr

Ich würde das ungefähr wie folgt machen:


public class CVolt
    {
        private float volt;

        public float Volt
        {
            get { return this.volt; }
            set { this.volt = value; }
        }

        public CVolt()
        {
        }

        public CVolt(float volt)
        {
            this.volt = volt;
        }

        public override string ToString()
        {
            return string.Format("{0} Volt", volt);
        }
    }

Zum Füllen der DomainUpDown-Box:


for (float f = 12.0f; f >= 0.0f; f -= 0.2f)
            {
                this.domainUpDown1.Items.Add(new CVolt(f));
            }  

Und wenn du dann den Zugriff auf die Volt brauchst, um mit der PWM was auch immer zu machen, brauchst du nur folgendes:


            CVolt actItem = this.domainUpDown1.SelectedItem as CVolt;

Schon hast du die genauen float-Volt über actItem im Zugriff (actItem.Volt)

Hoffe was ich schreibe ist kein kompletter Blödsinn und es hilft dir weiter.

MfG

18.08.2005 - 10:23 Uhr

Für die Beta 2 von VS.NET gibt es einen ScreenSaver StarterKit (http://blogs.msdn.com/danielfe/archive/2004/06/29/168449.aspx).

Vielleicht hilft dir dieser Code auf die Sprünge.

MfG

10.08.2005 - 14:30 Uhr

Ja, bin imma so langsam 😉

Hmm, wenn du die BackColor der TabPage auf ControlLightLight oder White setzt löst das dein Problem?

10.08.2005 - 14:24 Uhr

Der einzige Unterschied der mir auffällt ist, dass bei deinem TabControl die Fokusmaske zu sehen ist, wenn es das ist, was dich stört, musst du einfach nach dem Wechseln der TabPage den Fokus auf zB das erste Element dieser TabPage setzen (zB.: this.textBoxAdresse.Focus()😉.

07.08.2005 - 20:55 Uhr

Hallo,

in .NET 2.0 kannst du dem Style-Property der ProgressBar den Wert ProgressBarStyle.Marquee zuweisen, falls du zufällig .NET 2.0 verwendest.

MfG

04.08.2005 - 09:58 Uhr

Ich denke mit Miranda IM und einem Plugin (glaube es gibt welche in diese Richtung) bzw. einem selbstgeschriebenem Miranda-Plugin müsste dies einfacher/besser lösbar sein.

MfG

03.08.2005 - 18:17 Uhr

Recht herzlichen Dank, dann werde ich mal 'weiterbasteln'.

MfG

DivinitY

03.08.2005 - 18:06 Uhr

Original von herbivore
zu 2. könntest du es über den Resize-Event probieren. Wenn du es nicht schaffst, dass Minimieren zu verhinden, kannst du dort zumindest das Fenster sofort wiederherstellen.

Bei mir wird das Resize-Event nur gefeuert wenn ich den Minimize-Button der Form direkt drücke, wenn ich alle Fenster per o.g. Varianten minimiere, wird der Event nicht ausgelöst. 🙄

03.08.2005 - 16:49 Uhr

Die Anwendung heißt DeskTask.

03.08.2005 - 15:14 Uhr

Weiß zufällig jemand, wie ich folgende Situation am besten nachbauen kann.

Habe schon ein bisschen herumprobiert, allerdings hatte ich dabei einige Schwierigkeiten, wobei das Hauptproblem nach wie vor ist, wie ich es schaffe, dass

  1. diese Applikation ständig im Hintergrund ist bzw.
  2. das Drücken von WIN-D bzw. "Desktop anzeigen" in der Schnellstartleiste diese Applikation nicht minimiert.

Wäre für jeden Tipp dankbar.

30.07.2005 - 08:20 Uhr

Ups sorry, hab ganz vergessen zu schauen ob 1.1 dies auch unterstützt 🙁

30.07.2005 - 01:33 Uhr

if (filmtitel != string.Empty && herausgabejahr != string.Empty && ....)
{

...
}

Ist imo besser lesbar und 'sauberer', wollte ich nur anmerken.

MfG

30.07.2005 - 01:28 Uhr

Quick'n'Dirty


private void textBox1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyData == Keys.Enter && this.textBox1.Lines.Length == 3)
            {
                e.SuppressKeyPress = true;
            }
        }

Vermutlich wird wohl morgen einer der Experten eine saubere Lösung zeigen! 👍

MfG

29.07.2005 - 14:32 Uhr

Vielleicht liegen sie in einem anderen Container wie zum Beispiel in einem Panel?

17.07.2005 - 15:44 Uhr

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

bzw.

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

Keine Gewähr für Richtigkeit, aber denke schon dass es die sein müssten.

MfG

16.07.2005 - 10:03 Uhr

int i = 65;
char c = (char)i;

bzw.


char c = 'B';
int i = (int)c;

Hoffe du hast das gemeint.

MfG

30.06.2005 - 13:03 Uhr

Habe heute in einem On-Demand Webcast, der in Visual C# Express 2005 Beta durchgeführt wurde gesehen, wie die Funktion Property Editing View per rechter Maustaste im Designer ausgeführt wurde.

Da ich die Funktion sehr nützlich finde, musste ich mit Bedauern feststellen, dass mir die rechte Maustaste im VS 2005 Beta 2 nicht brachte was ich wollte. 🙁

Weiß zufällig jemand, ob es diese Funktion noch gibt, wenn ja wo?

MfG

DivinitY

29.06.2005 - 20:29 Uhr

Hallo, da ich gerade den Webcast von Justin Rogers über ein Poker-Programm mit Visual C# Express 2005 Beta durcharbeite, muss ich mit Bedauern feststellen, dass ich die Sources nirgends finden kann. Besagte Seite kann nicht gefunden werden.

Nun wollte ich fragen, ob zufällig jemand von euch die Sources (PokerDemo1.zip) hat und sie mir zukommen lassen könnte. Wäre sehr nett!

Mit freundlichen Grüßen

DivinitY

04.06.2005 - 20:07 Uhr

"Operation menschliches Schild roxx" steht da.

MfG

07.05.2005 - 21:21 Uhr

Probier's mal so.


MySqLConnection con = new MySqlConnection(conString)
con.Open();
DataSet ds = new DataSet();

string sqlQuery = string.Format("SELECT * FROM person WHERE name='{0}'","Jon");
MySqlDataAdapter adapter = new MySqlDataAdapter(sqlQuery,con);
adapter.Fill(ds,"Person");
con.Close();

foreach(DataRow row in ds.Tables["Person"].Rows)
{
Console.WriteLine(row["LastName"] + " " +row["Phonw"]);
}

03.05.2005 - 16:51 Uhr

Original von dschmoegner
Es sind Punkte, Doppelpunkte und ein Leerzeichen vertreten.

Ein Dateiname darf keines der folgenden Zeichen enthalten: \ / : * ? " < > |

(Schöner Ballon-Tip wenn du manuell im Explorer versuchst eine Datei mit einem ungültigen Zeichen versehen umzubenennen.)

MfG