Beschreibung des Projekts Pkuerzen.dpr:


 

Das vollständige Delphiprojekt Pkuerzen.dpr, inklusive EXE-File kann heruntergeladen werden.

 
Außerdem steht das Projekt als Konsolenanwendung zur Verfügung.
Beide Dateien entpacken sich selbst. Man sollte aber in verschiedenen Ordnern entpacken, da einige Dateien den gleichen Namen haben.

 

   Art    Dateiname    Größe
   Delphiprojekt      delphi.EXE 

193 KB 

   Konsolenanwendung     konsole.EXE

  54 KB 

Hinweise:

Alle Namen für Textfelder beginnen mit einem E ( für Edit). Es folgt der Name der Variablen, der in dieses Feld geschrieben wird.

Beispiel:

Ez1 ist das Textfeld, in dem die Variable z1 ( 1.Zähler) geschrieben wird.
z1 ist dabei eine Zahlvariable (integer), die im Programm erklärt wird.
z1 ist also kein Objekt der Form, sondern eine normale Variable.
 
Mathematischer Hintergrund:

Links wird ein Bruch eingetragen.
Oben steht der Zähler (z1) unten der Nenner (n1).
Einen Bruch kann man kürzen, wenn Zähler und Nenner einen gemeinsamen Teiler haben.
Kürzen
heißt:
Zähler und Nenner mit der gleichen Zahl dividieren.
Beim Kürzen ändert sich der Wert des Bruches nicht. Durch das Kürzen bekommt man aber eine einfachere Darstellung eines Bruches.

Das vorliegende Programm kürzt den Bruch soweit es geht. Dazu muss zunächst eine Zahl bestimmt werden, die sowohl den Zähler als auch den Nenner teilt. Außerdem soll diese Zahl möglichst groß sein. Eine Zahl, die diese Bedingungen erfüllt heißt größter gemeinsamer Teiler und wird mit ggT abgekürzt.

Ein schon lange bekanntes Verfahren ist der so genannte Euklidischer Algorithmus:

Gegeben sind die beiden Zahlen a und b.

Diese Zahlen werden nun fortlaufend von einander subtrahiert. Die kleinere der beiden wird von der größeren abgezogen. Das Ergebnis der Subtraktion wird anstelle der größeren Zahl genommen, dann wird erneut subtrahiert. Dies wird solange fortgeführt, bis die verbleibenden Zahlen gleich sind.

 

Beispiel:

 

     b   berechne    ersetze 
 gegeben   6  8  8 - 6 = 2  8 durch 2
 Zwischenschritt   6  2  6 - 2 = 4  6 durch 4
 Zwischenschritt  4  2  4 - 2 = 2  4 durch 2
 Zwischenschritt  2  2    

Ende da 2 = 2

Die Zahl 2 ist der größte gemeinsame Teiler von 6 und 8 ! Kurz ggT(6,8) = 2 .



Was muss das Programm leisten ?

1. ggT

Die Hauptaufgabe des Programms besteht also darin, den ggT(z1,n1) zu bestimmen. Diese Zahl wird in der Variablen k gespeichert. Sodann wird mit k gekürzt. Dazu muss man z1 und n1 durch k dividieren. Es ist zu empfehlen statt der normalen Division ( / ) die Ganzzahldivision ( div ) zu verwenden.

42 / 2 ist eine real-Zahl, auch wenn das Ergebnis 21 lautet. Real-Zahlen werden anders angezeigt:
                          Hier: 21 ® 2.10000000E+01

42 div 2 ist eine Integer-Zahl.
42 div 2 ist also 21, und es wird auch 21 angezeigt !
 
 

2. Textfelder auslesen

Das zweite Problem ist das Auslesen der Textfelder. In der Eigenschaft Text eines Textfeldes steht immer eine Zeichenkette. So ist der Inhalt 42 eigentlich ‘42‘. Für den Computer bedeutet das die Ziffer 4 und Ziffer 2 als Zeichen, wohlgemerkt. ‘42‘ ist noch lange nicht die Zahl 42. 42 bedeutet ja 4*10+2 ! Für uns haben diese beiden Ziffern, die man nebeneinander schreibt eine feste mathematische Bedeutung. Auch der Rechner muss diese Bedeutung erlernen. Die Zahl 42 wird ganz anders gespeichert als die Zeichenkette ‘42‘.

So wird vielleicht klar, dass zunächst die Zeichenkette in eine Zahl umgewandelt werden muss.
Dazu gibt es den Pascal-Befehl val. Delphi stellt die Funktionen StrToInt und StrToFloat zur Verfügung.

 

3. Ausgaben

Das dritte Problem ist die Ausgabe der Ergebnisse.

Die Berechnungen wurden selbstverständlich mit Zahlen durchgeführt. Nun sollen diese Zahlen: z2, n2 und k in die Textfelder geschrieben werden. Dazu müssen die Zahlen in Zeichenketten umgewandelt werden.
Hierfür verwendet man den Pascalbefehl str oder die Delphi-Funktionen IntToStr und IntToFloat.

Weitere Informationen ...

Einführung in die Delphi-Umgebung an Hand des Projektes Pkuerzen.dpr

 

zurück