Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Mehrfachausführungen Schleifen in VB 2010 ee. Programmidee: Der Anwender gibt eine Zahl ein, und das Programm gibt die Mehrfachen dieser Zahl aus (das.

Ähnliche Präsentationen


Präsentation zum Thema: "Mehrfachausführungen Schleifen in VB 2010 ee. Programmidee: Der Anwender gibt eine Zahl ein, und das Programm gibt die Mehrfachen dieser Zahl aus (das."—  Präsentation transkript:

1 Mehrfachausführungen Schleifen in VB 2010 ee

2 Programmidee: Der Anwender gibt eine Zahl ein, und das Programm gibt die Mehrfachen dieser Zahl aus (das 1x1). Das könnte so aussehen:

3 Mögliches Formular: Textbox Listbox Label Buttons

4 Was soll das Programm können? Einen Wert aus der Textbox einlesen Diesen Wert mit 1 bis 10 multiplizieren Das 1x1 in der Liste ausgeben sich schließen können die Eingabefelder leeren

5 Syntax Listbox Objekt.Methode lst_Listbox.Items.Add(was reinsoll)

6 Syntax Multiplikation Ergebnis = Faktor1 * Faktor2

7 Für die Ganze Prozedur: Deklaration der Grundzahl: dim Grundzahl As Single Einlesen der Grundzahl: Grundzahl = txt_Grundzahl.text Multiplikation: Ergebnis = Grundzahl * 1 Ausgabe: lst_Ergebnis.items.add(Ergebnis)

8 Das ganze 1x1: Die Multiplikation und die Ausgabe muss natürlich für die Zahlen von 1 bis 10 wiederholt werden. Ergebnis = Grundzahl * 2 lst_Ergebnis.items.add(Ergebnis) Ergebnis = Grundzahl * 3 lst_Ergebnis.items.add(Ergebnis) Ergebnis = Grundzahl * 10 lst_Ergebnis.items.add(Ergebnis)

9 Problem: Ein ziemlich langer Code für ein ziemlich kleines Progrämmchen, Oder???

10 Lösung Wir sagen dem Computer, er solle denselben Vorgang mit verschiedenen Zahlen wiederholen. Die Schleife

11 For-Next-Schleife Pseudo-Code: Mache von i = 1 bis 10 folgendes: Ergebnis = Grundzahl * i Schreibe das Ergebnis ins Label Nimm das nächste i

12 Syntax: For-Next-Schleife For i = Startzahl to Endzahl Anweisungsblock Next

13 VB-Code Das heißt für uns: For i = 1 to 10 Ergebnis = Grundzahl * i lst_Ergebnis.Items.Add(Ergebnis) Next i

14 Ein Versuch… … das Programm macht dasselbe wie vorher, es wurde aber wesentlich weniger Code benötigt.

15 Großer Vorteil: Wenn wir das Programm erweitern wollen, dass es bis zum 20-, 30-, 200- fachen der Grundzahl oder sonst wie weit rechnet, müssen wir nur einen Wert in der Schleife ändern: For i = 1 To Obergrenze

16 Freie Wahl der Obergrenze Dann kann die Obergrenze doch aber bestimmt auch frei gewählt werden, sprich: Vom Anwender festgelegt werden: Los Geht‘s

17 Code für großes 1x1: Private Sub cmd_Rechne… Dim Grundzahl As Single Dim Faktor As Integer, Dim Ergebnis As Single Dim i As Integer Grundzahl = txt_Grundzahl.text Faktor = txt_Faktor.text For i = 1 To Faktor Ergebnis = Grundzahl * i lst_Ergebnis.items.add(ergebnis) Next End Sub

18 Operatoren Bekannte Operatoren sind: + für Addition - für Subtraktion / für Division * für Multiplikation

19 Ein neuer Operator: Modulo-Rechnung: Entspricht der aus der Grundschule bekannten Division mit Rest. 38 : 7 = 5 Rest 3 79 : 2 = 39 Rest 1 80 : 2 = 40 Rest 0

20 Als Modulo: 38 : 7 = 5 Rest 3 79 : 2 = 39 Rest 1 80 : 2 = 40 Rest 0 38 mod 7 = 3 79 mod 2 = 1 80 mod 2 = 0

21 Ein Übungsprogramm Erstelle ein Programm, in das zwei Zahlen eingegeben werden, die dann „modulo“ gerechnet werden. Der Rest dieser Division soll dann ausgegeben werden.

22 Mögliches Formular:

23 Woran müsst ihr denken? Deklaration der nötigen Variablen (Zahl1, Zahl2, Ergebnis) Einlesen der Zahlen Eigentliche Rechnung Ausgabe

24 Programmcode: Dim Zahl1 As Integer Dim Zahl2 As Integer Dim Ergebnis As Integer Zahl1 = txt_Zahl1.Text Zahl2 = txt_Zahl2.Text Ergebnis = Zahl1 Mod Zahl2 Lbl_Ergebnis.Text = "Bei Division von " & Zahl1 & " durch " & Zahl2 & " bleibt der Rest " & Ergebnis & "."

25 Zweites Modulo-Programm: Schreiben Sie ein Programm, dass entscheidet, ob eine Zahl durch eine andere Zahl teilbar ist und eine entsprechende Meldung ausgibt.

26 Voraus-Überlegungen: Wie muss das Formular aussehen? Welche Schritte muss das Programm ausführen? (Algorithmus) Welche Variablen benötige ich? Wie müssen die Variablen deklariert sein? Wie sieht der Programmcode aus Dann mal los, ihr seid dran!

27 Mögliches Formular:

28 Benötigte Schritte Modulo Rechnung If-Entscheidung Wenn Ergebnis = 0, dann Teiler Wenn Ergebnis ≠ 0, dann kein Teiler Ausgabe in einem Label

29 Benötigte Variablen und ihre Deklariation Benötigt werden große ganze Zahlen Dim Zahl1 As Long Dim Zahl2 As Long Dim Ergebnis As Long

30 Programmcode Private Sub cmd_teilt_Click… Zahl1 = txt_Zahl1.Text Zahl2 = txt_Zahl2.Text Ergebnis = Zahl2 mod Zahl1 If Ergebnis = 0 Then lb_lErgebnis.Text = Zahl1 & " ist ein Teiler von " & Zahl2 & "." Else lbl_Ergebnis.Text = Zahl1 & " ist nicht Teiler von " & Zahl2 & "." End If End Sub

31 Aufgabenstellung Jetzt seid ihr soweit, in euren Taschenrechner eine Funktion einzubauen, die überprüft, ob einen eingegebene Zahl eine Primzahl ist. Viel Erfolg!


Herunterladen ppt "Mehrfachausführungen Schleifen in VB 2010 ee. Programmidee: Der Anwender gibt eine Zahl ein, und das Programm gibt die Mehrfachen dieser Zahl aus (das."

Ähnliche Präsentationen


Google-Anzeigen