PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Turbo Pascal - mir fehlen ein paar Befehle


Gast
2004-11-19, 19:42:25
Ich soll in TPascal nen Proggie schreiben (gaaaanz billiges) wo man die Uhrzeit schreibt (bsp. 22.45) und eine verbale Ausgabe kommt (also dreiviertel elf)


Mein Problem, als string ist das wohl etwas überdimensioniert und ich soll mit real arbeiten. Wie bekomm ich das gebacken, dass die Eingabe ausgelesen wird, und vor dem Punkt eine Abfrage und nach dem Punkt eine Abfrage stattfindet.


Also das Proggie schaut, aha, vor dem Punkt steht ne 22 = elf und nach dem Komma steht ne 45 = dreiviertel.

btw. es geht immer nur in 15'er Schritten, also es gibt nur "um", viertel, dreiviertel, halb.


Mit if then wäre das ganz easy aber auch irre viel zu schreiben. mit cause of kommt man auch nicht sehr weit. Wie bekomm ich das also in Pascal hin? Hatte sonst immer nur mit Basic oder C zu tun.

aths
2004-11-19, 20:10:48
Ich soll in TPascal nen Proggie schreiben (gaaaanz billiges) wo man die Uhrzeit schreibt (bsp. 22.45) und eine verbale Ausgabe kommt (also dreiviertel elf)


Mein Problem, als string ist das wohl etwas überdimensioniert und ich soll mit real arbeiten. Wie bekomm ich das gebacken, dass die Eingabe ausgelesen wird, und vor dem Punkt eine Abfrage und nach dem Punkt eine Abfrage stattfindet.


Also das Proggie schaut, aha, vor dem Punkt steht ne 22 = elf und nach dem Komma steht ne 45 = dreiviertel.

btw. es geht immer nur in 15'er Schritten, also es gibt nur "um", viertel, dreiviertel, halb.


Mit if then wäre das ganz easy aber auch irre viel zu schreiben. mit cause of kommt man auch nicht sehr weit. Wie bekomm ich das also in Pascal hin? Hatte sonst immer nur mit Basic oder C zu tun.Du gehst den String byteweise durch. Also zuerst Länge bestimmen, dann Zeichen für Zeichen auslesen. Ein String ist ein Array of Char, du kannst mit [index] einfach an jedes Char des Strings kommen. Du prüfst, ob es genau einen Punkt gibt, und wenn ja, merkst du dir die Stelle. Dann kannst du den Eingabestring aufteilen, in die Stunden und Minuten-Angabe.

AnarchX
2004-11-19, 20:14:48
als erstes würde ich die minuten prüfen und und je 0 15 30 45 eine String definieren lassen und eine Variable bei grösser gleich 15 auf 1 setzen....

Denn diese wird zu Uhrzeit hinzugerechnet, und am Ende musst du eben für jede mögliche h einen string definieren, du kannst auch wenn du nicht das 24h format verwenden willst; auch zusammenfassen : IF (EingabeStunde=11) or (EingabeStunde=23) Then AusgabeStunde='elf'

So würde ich das sehen, ich gehe von Delphi aus, welches als Codebasis Turbopascal ja verwendet

BubbleBoy
2004-11-19, 20:53:09
..

BubbleBoy
2004-11-19, 20:56:45
.