Zählschleife VB

  • VB.NET
  • .NET (FX) 1.0–2.0

Es gibt 21 Antworten in diesem Thema. Der letzte Beitrag () ist von Schuggy.

    Zählschleife VB

    Guten Abend,

    ich bräuchte Hilfe...komme nicht so ganz mit der Aufgabe klar :/

    Erstellen Sie eine Zählschleife, in der mit Inkrement n von einem Anfangswert x bis zu einem Endwert y hochgezählt werden soll.
    Jeder Zählschritt soll angezeigt werden. Dazu sollen die Werte für n, x und y eingelesen werden.
    Ist der Endwert y erreicht, soll der Endwert in "grüner" Schriftfarbe angezeigt werden.


    Ich bin euch sehr Dankbar...

    Frohes neues Jahr
    @Melone es bringt sich nichts jedes mal einen Thread zu erstellen, damit wir deine Hausaufgaben lösen.
    Was bringen dir unsere Lösungen, wenn du sie sehr wahrscheinlich c&p. An deiner Stelle würde ich Tutorials auf yt anschauen ^^
    EMPIRE BUSINESS
    Da das sich wirklich sehr nach Hausaufgaben anhört, werde ich dir keinen fertigen Code präsentieren.
    Wenn du die Idee verstehst wirst du das aber einfach in Code übersetzen können.

    1) Lies x, y und n ein.
    Falls das ne Konsolenanwendung ist, lies es mit Console.ReadLine und versuche dann, den resultierenden String zu nem Integer umzuwandeln.
    Falls es ne WinForms- oder WPF-Anwendung ist, nutze eben 'ne TextBox.
    Du solltest natürlich auch prüfen, ob der String zu einem Integer konvertiert werden kann und entsprechend reagieren.

    2) Bau dir ne For-Schleife die i mit x initialisiert, und n zu i addiert, solange i kleiner y ist.
    In Pseudocode: for i = x do i += n while i < y

    Nun musst du nur noch die Werte innerhalb der For-Schleife ausgeben und nach der For-Schleife den Text ändern und färben.
    Daher bin ich auf eure Hilfe anwesend...

    Und wir sind auf Deine Kooperation anwesend angewiesen.
    Du musst schon auf unsere Fragen eingehen, damit wir Dir helfen können. Schau also nochmal genau Posts #2 und #5 an und berichte uns anschließend.
    "Luckily luh... luckily it wasn't poi-"
    -- Brady in Wonderland, 23. Februar 2015, 1:56
    Desktop Pinner | ApplicationSettings | OnUtils
    @Niko Ortner Jou.

    Melone schrieb:

    Zählschleife
    Was hat das ganze mit Datenbankprogrammierung zu tun?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Hallo Zusammen,

    ich habe die selbe Aufgabenstellung wie Melone.
    Ich muss das ganze in Visualbasic Forms machen als Vorbereitung für ein Projekt in der Uni.

    Bei mir funktioniert die For-to-Funktion auch soweit, allerdings weiß ich nicht genau wie ich die Ergebnisse auslesen lasse.
    Ich habe versucht das ganze per Messagebox.show(Ergebnis) auslesen zu lassen, allerdings wird mir dort nur das Gesamte Ergebnis ausgelesen(z.b. wenn ich x als 1, y als 3 und n als 2 deklariert habe, ist das Ergebnis dann 6)
    Wie kann ich jedes Zwischenergebnis einzelnt über EINE Messagebox auslesen lassen?

    Gibt es evtl auch noch andere Möglichkeiten als über eine Messagebox?

    Vielen Dank für die Hilfe
    Du kannst jedes Zwischenergebnis speichern und dann am Ende eine MessageBox anzeigen die alle Werte enthält. Oder du zeigst für jeden Wert eine MessageBox. Wenn du eine ConsoleApplication verwendest, kannst du auch Console.WriteLine nutzen. Die letzte Möglichkeit wäre, das Ganze in eine TextBox auszugeben.

    Grüße
    "Life isn't about winning the race. Life is about finishing the race and how many people we can help finish the race." ~Marc Mero

    Nun bin ich also auch soweit: Keine VB-Fragen per PM! Es gibt hier ein Forum, verdammt!
    @.prox Bin mir nicht sicher, ob das nicht sogar Option Strict Off ist, aber in VB.NET werden Strings mit & verknüpft, nicht +.
    Am Besten wäre aber eh String.Format oder sogar String Interpolation.

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    @Trade Ich nehme an, dass das C# ist. Würde auch zu seinen angegebenen Sprachen passen. Ich werde meinen Code sicher auch nicht auf VB umschreiben wenn ich irgendwo antworte, das bekommen die Autoren sicher selbst hin.

    Grüße
    "Life isn't about winning the race. Life is about finishing the race and how many people we can help finish the race." ~Marc Mero

    Nun bin ich also auch soweit: Keine VB-Fragen per PM! Es gibt hier ein Forum, verdammt!
    Wie speicher ich die Zwischenergebnisse ab?
    Wenn ich die messagebox.show(Ergebnis) in die For-to setze zeigt er mir jeden einzelnen Loop (Danke für den Hinweis schonmal), wenn ich jetzt jedoch mal 1-100 machen würde würde das ja Ewigkeiten dauern und das wäre dann ja nicht Sinn der Sache.

    Ich hab dasselbe jetzt nochmal versucht mit der Textbox, da zeigt er mir auch wenn ich das in die For-to setze immer nur das Endergebniss an.

    @.prox ja meinte ausgeben :)
    @Schuggy

    Nehmen wir mal an du hast eine RichTextbox ( sehr praktisch für dieses Beispiel :(
    Im Inhalt der Forschleife, verknüpfst du jedes mal den Inhalt der RichtTextbox mit den Zwischenergebnissen. ( quasi fügst du jedesmal die Zwischenergebniss zur RichtTextBox dazu )

    Hier ein Beispielscode, welcher eine Zählervariable i = 0 hat, und diese Zählervariable jeden Durchgang um 1 erhöht bis die Zählervariable 10 erreicht ( i = 0, 1 , 2 , 3.....10 )

    VB.NET-Quellcode

    1. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    2. For i As Integer = 0 To 10 Step 1
    3. RichTextBox1.AppendText("i=" + i.ToString() + Environment.NewLine) ' Environment.NewLine ist für eine neue Zeile
    4. Next
    5. End Sub


    So sieht der Code in der Praxis aus:
    EMPIRE BUSINESS

    Nikx schrieb:

    Würde auch zu seinen angegebenen Sprachen passen
    Naja, dann fehlt aber das Semikolon. Kleiner, aber feiner Unterschied, der hier die Sprache ändern kann. :P Und wie .prox ja sagte, kam das durch seinen C#-seitigen Einfluss. Sollte also wohl schon VB.NET sein. Ich sag's nur lieber, weil so könnte man dann auch von VB.NET ausgehen und das mit dem + übernehmen, was aber dort afaik nicht richtig ist.

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!: