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);
}
}
}
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!
string x = "Dies ist ein Test!";
x = x.Substring(1, x.Length - 2);
MfG
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
Hallo,
meiner Meinung nach ist die ApplicationContext Klasse bestens für so ein Problem geeignet.
Viele Grüße
Christian
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
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
Hallo,
wenn ich mich richtig erinnere, müsste doch Dictionary die generische Variante der Hashtable sein?
Viele Grüße
Christian
Hallo,
Eventuell bietet sich auch zahl.ToString("c"); an für Currency.
Viele Grüße
Christian
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
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
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
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.
Danke herbivore, scheint mir wirklich die beste Lösung zu sein.
MfG
Christian
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
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
public class Klasse
{
Klasse() : this(1)
{
//
}
Klasse(int i)
{
// ..
}
}
Oder hab ich es falsch verstanden, und du meinst etwas komplett anderes? Hoffe nicht 😉
MfG
Vielleicht gefällt dir dieses Control, und du ersparst dir Teile der Arbeit.
http://www.codeproject.com/useritems/XPTable.asp
MfG
Vielleicht hilft dir das hier weiter:
NET START listet aktive Dienste auf.
C:>net start
Folgende Windows-Dienste sind gestartet:
[...]
Der Befehl wurde erfolgreich ausgeführt.
MfG
Ich würde einfach vorschlagen F7 zu drücken statt dem Doppelclick.
MfG
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.
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
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
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
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
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
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
Ja, bin imma so langsam 😉
Hmm, wenn du die BackColor der TabPage auf ControlLightLight oder White setzt löst das dein Problem?
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()😉.
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
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
Recht herzlichen Dank, dann werde ich mal 'weiterbasteln'.
MfG
DivinitY
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. 🙄
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
Wäre für jeden Tipp dankbar.
Ups sorry, hab ganz vergessen zu schauen ob 1.1 dies auch unterstützt 🙁
if (filmtitel != string.Empty && herausgabejahr != string.Empty && ....)
{
...
}
Ist imo besser lesbar und 'sauberer', wollte ich nur anmerken.
MfG
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
Vielleicht liegen sie in einem anderen Container wie zum Beispiel in einem Panel?
Microsoft.Win32.SystemEvents.SessionEnding
MfG
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
int i = 65;
char c = (char)i;
bzw.
char c = 'B';
int i = (int)c;
Hoffe du hast das gemeint.
MfG
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
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
"Operation menschliches Schild roxx" steht da.
MfG
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"]);
}
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