Lazarus/Computer-Mathematik: Unterschied zwischen den Versionen

Aus ZUM-Unterrichten
main>Peterdauscher
Keine Bearbeitungszusammenfassung
main>Peterdauscher
Keine Bearbeitungszusammenfassung
Zeile 7: Zeile 7:
*Das Ergebnis der Verrechnung muss auf der Benutzeroberfläche ausgegeben werden.
*Das Ergebnis der Verrechnung muss auf der Benutzeroberfläche ausgegeben werden.


== Einlesen von Variablen ==
== Einlesen von Integer-Variablen ==


Gibt ein Benutzer eine Zahl ein, steht sie in der Eigenschaft <tt>Text</tt>. Jedenfalls stehen die einzelnen Ziffern als Zeichenkette in der Eigenschaft <tt>Text</tt>. Aus der Zeichenkette z.B. in <tt>Edit1.Text</tt> muss jetzt eine "richtige" Zahl (z.B. vom Typ <tt>integer</tt>) werden.
Gibt ein Benutzer eine Zahl ein, steht sie in der Eigenschaft <tt>Text</tt>. Jedenfalls stehen die einzelnen Ziffern als Zeichenkette in der Eigenschaft <tt>Text</tt>. Aus der Zeichenkette z.B. in <tt>Edit1.Text</tt> muss jetzt eine "richtige" Zahl (z.B. vom Typ <tt>integer</tt>) werden.
Zeile 27: Zeile 27:
Wichtig: Dieser Befehl steht noch vor dem <tt>Begin</tt>.
Wichtig: Dieser Befehl steht noch vor dem <tt>Begin</tt>.


== Rechnen mit Variablen ==
== Rechnen mit Integer-Variablen ==
Nehmen wir an, wir hätten drei Integer-Variablen, <tt>a</tt>,<tt>b</tt> und <tt>c</tt>. Das Programm soll nun die Summe der Werte in <tt>a</tt> und <tt>b</tt> ausrechnen; das Ergebnis soll in der Variablen <tt>c</tt> gespeichert werden.
Nehmen wir an, wir hätten drei Integer-Variablen, <tt>a</tt>,<tt>b</tt> und <tt>c</tt>. Das Programm soll nun die Summe der Werte in <tt>a</tt> und <tt>b</tt> ausrechnen; das Ergebnis soll in der Variablen <tt>c</tt> gespeichert werden.


Zeile 39: Zeile 39:
{| class ="wikitable toptextcells"  
{| class ="wikitable toptextcells"  
! Rechenoperation
! Rechenoperation
! Rechenzeichen in der Sprache Pascal
! Rechenzeichen <br />in der Sprache Pascal
! Beispiel
! Beispiel
|-  
|-  
Zeile 49: Zeile 49:
|-  
|-  
| (ganzzahlige) Division|| <nowiki>div</nowiki> || c:=a div b;
| (ganzzahlige) Division|| <nowiki>div</nowiki> || c:=a div b;
|-
| Rest der (ganzzahligen) Division|| <nowiki>mod</nowiki> || c:=a mod b;
|}
|}
== Ausgabe von Integer-Variablen ==
Bisher steht das Ergebnis nur in der Variable <tt>c</tt>. Der Benutzer des Programms sieht davon gar nichts. Der Wert muss noch irgendwie auf der Oberfläche erscheinen. Eine Möglichkeit dazu wäre, die Zahl in ein weiteres Edit-Feld zu schreiben:
<source lang="pascal">
Edit3.Text:=IntToStr(c);
</source>

Version vom 31. Dezember 2012, 16:06 Uhr

"Computer" heißt wörtlich übersetzt "Rechner" und deshalb wäre es ja jetzt auch Zeit, ein Programm auch einmal etwas ausrechnen zu lassen.

Dafür muss das Programm drei Dinge tun:

  • Die Zahlen, die verrechnet werden müssen, müssen von der Benutzeroberfläche eingelesen werden.
  • Die Zahlen müssen zu einem Ergebnis verrechnet werden.
  • Das Ergebnis der Verrechnung muss auf der Benutzeroberfläche ausgegeben werden.

Einlesen von Integer-Variablen

Gibt ein Benutzer eine Zahl ein, steht sie in der Eigenschaft Text. Jedenfalls stehen die einzelnen Ziffern als Zeichenkette in der Eigenschaft Text. Aus der Zeichenkette z.B. in Edit1.Text muss jetzt eine "richtige" Zahl (z.B. vom Typ integer) werden.

Das besorgt der Befehl StrToInt:

a:=StrToInt(Edit1.Text);

Diese Zeile sorgt dafür, dass der Integer-Variablen a die Wert zugewiesen wird, die der Benutzer in das Edit-Feld Edit1 geschrieben hat.

Bevor man jedoch der Variable a einen Wert zuweisen kann, muss der Computer wissen, dass es überhaupt eine Integer-Variable mit Namen a gibt.

Dies geschieht mit Hilfe einer so genannten Variablendeklaration:

var a : integer;

Wichtig: Dieser Befehl steht noch vor dem Begin.

Rechnen mit Integer-Variablen

Nehmen wir an, wir hätten drei Integer-Variablen, a,b und c. Das Programm soll nun die Summe der Werte in a und b ausrechnen; das Ergebnis soll in der Variablen c gespeichert werden.

Dies erreicht man wieder mit einem Zuweisungsbefehl mit dem stilisierten Pfeil nach links:

c := a+b;

Natürlich gibt es neben der Addition von Integer-Zahlen auch andere Rechenoperationen:

Rechenoperation Rechenzeichen
in der Sprache Pascal
Beispiel
Addition + c:=a+b;
Subtraktion - c:=a-b;
Multiplikation * c:=a*b;
(ganzzahlige) Division div c:=a div b;
Rest der (ganzzahligen) Division mod c:=a mod b;


Ausgabe von Integer-Variablen

Bisher steht das Ergebnis nur in der Variable c. Der Benutzer des Programms sieht davon gar nichts. Der Wert muss noch irgendwie auf der Oberfläche erscheinen. Eine Möglichkeit dazu wäre, die Zahl in ein weiteres Edit-Feld zu schreiben:

Edit3.Text:=IntToStr(c);