• Hallo zusammen, bitte prüft mal die im Forum hinterlegte Mail Adresse auf Aktualität. Es ist jetzt schon mehrfach passiert, dass Mails (z.B. für Benachrichtigung neuer PNs) nicht zugestellt werden konnten, weil die Konten nicht mehr existieren oder voll gelaufen sind. Danke!
  • Hallo Gast, falls du dich wunderst, wieso Bilder und Videos nicht mehr sofort angezeigt werden, schau mal hier.
  • Nach viel zu langer Zeit ist mal wieder ein Zockertreffen angesagt. Der Termin steht! Sei dabei! Ich will auch!

Turbo Pascal Hilfe

War die Frage nicht warum in der 'repeat-until' Schleife ein Type Mismatch kommt?

Nur um es zu betonen, weil PES das verschwiegen ( :) ) hat: die Variable a sollte ein CHAR sein, kein INT.
 
Naja das Programm funktionierte ab dem Zeitpunkt in dem Ich die Schleife eingebaut habe nimmer, mit PES änderungen gings dann wieder.
Das mit der Char Variablen habe ich dann auch erkannt und nochmal nachgelesen, Danke :)
 
Also wir ham auch zum einstieg grade Pascal gemacht.

Sind jetzt bei Basic und steigen dann halt in c++ ein....

Find das garnicht schlecht, man kricht vieles leichter mit.
 
Original geschrieben von HurraHurraHurra
War die Frage nicht warum in der 'repeat-until' Schleife ein Type Mismatch kommt?

Nur um es zu betonen, weil PES das verschwiegen ( :) ) hat: die Variable a sollte ein CHAR sein, kein INT.

die Variable Char habe ich automatisch verändert, so das hier überhaupt keine Fehlermeldung mehr kam. Die erste Fehlermeldung war viel früher und da habe ich auch geschrieben wo der Fehler lag. Das mit dem Char war natürlich auch nicht richtig, stimmt.
 
Dufte. :D Pascal-Code ist geilo :D Mehr davon. :D

Ich muss mal meine alten Programme suche, Binärbäume, Quicksort, Bubblesort usw. Man ist das ewig her. :D
 
LB´s Euro Rechner 1.0 Ultimate Version :D

program funktionen;
uses crt;

var wahl: char;
nochmal: char;

procedure art;
begin
writeln('Hallo, wähle bitte die gewünschte Umrechnungsart aus.');
writeln('Willst du von EURO in ATS umrechnen drücke die Taste "1"');
writeln('Willst du von ATS in EURO umrechnen drücke die Taste "2"');
writeln('Dann bestätige deine Wahl bitte mit der "Enter" Taste');
readln(wahl);
end;

procedure ineuro;
var euro, ats: real;
begin
writeln('Bitte gebe deinen Betrag in EURO an und bestätige mit "Enter"');
readln(ats);
euro:= ats * 13.76;
writeln(ats:5:2,' EURO sind ',euro:5:2,' ATS!');
end;

procedure inats;
var ats, euro: real;
begin
writeln('Bitte gebe deinen Betrag in ATS an und bestätige mit "Enter"');
readln(euro);
ats:= euro / 13.76;
writeln(euro:5:2,' ATS sind ',ats:5:2,' Euro!')
end;

begin
clrscr;
repeat
art;
if wahl = '1' then ineuro;
if wahl = '2' then inats;
if wahl > '2' then writeln('Bitte die Taste "1" oder "2" drücken');
if wahl < '1' then writeln('Bitte die Taste "1" oder "2" drücken');
writeln('Nochmal? y/n?');
readln(nochmal);
until nochmal = 'n';
end.

Saugt es euch solange es noch Gratis ist :D
 
Original geschrieben von Lukas
LB´s Euro Rechner 1.0 Ultimate Version :D



Saugt es euch solange es noch Gratis ist :D

ich warte noch und kaufe ihn mir dann, gute Arbeit muß belohnt werden. :D

Ein paar Verbesserungen wären nicht schlecht. z.B. mehr Übersichtlichkeit durch ein richtiges Menü.
 
Und bitte, formatiere Deinen Code richtig. :D Ich weiß, hier im Forum isses schwer. ;)

Achja, nix gegen deutsche Variablennamen, aber die benennt man saubererweise alle in Englisch. Schliesslich soll Dein Code ja mal die Weltherrschaft an sich reißen. :D
 
So jetzt gehts zur objektorientierten programmierung.
Letztes mal haben wir mit delphi (3) begonnen und uns dadurch erstmals mit objekten beschäftigt.

Angeblich solls ja im netz nur so wimmeln von anfänger tutorials in sachen delphi/objektorientiert programmieren, also wer was parat hat bitte posten :)

Danke :)
 
:wall:

So ein scheissdreck dieses delphi ...

habe den letzten kurs versäumt (2 stunden) und dadurch nun absolut keine ahnung)
Gemacht wurde ein taschenrechner (subtrahieren, addieren, multiplizieren und dividieren)

Turbo pascal vorkentnisse habe ich ja so halbwegs, aber jetzt mit der ganzen delphi oberfläche ... :mad:

also wenn wer ein delphi beispiel/tutorial anhand eines taschenrechners hätte das wäre super :)
 
Hab da mal wieder ne Frage :verl:

Und zwar schreibe ich gerade ein kleines programm, welches die caesarische verschlüsselung oder so ähnlich vornimmt.

Also ich habe ein edit feld wo ich meinen klartext eingebe, eines wo ich den verschiebungsfaktor eingeben kann und im letzten edit feld soll dann das chiffrat erscheinen.

Das ist mal der erste Versuch:

procedure TForm1.btnDeChiffrierenClick(Sender: TObject);
Var
X, vfaktor: integer;
inhalt: string;

begin
inhalt := edtklartext.text;
vfaktor := strtoint(edtfaktor.text);

for X := 1 to length(edtklartext.text) do begin
edtchiffrat.text := chr(ord(inhalt[X]) + vfaktor)

end;
end;

Geht auch zum starten, doch wenn ich auf den button zum verschlüsseln klicke, erscheint im chiffrat fenster nur der letzte buchstabe, der ist allerdings korrekt verschoben worden.

Wo der fehler ist, ist mir klar.
In der letzten zeile 'edtchiffrat.text := chr(ord(inhalt[X]) + vfaktor)' wird durch die schleife der inhalt von edtchiffrat immer wieder überschrieben, sodass ich am ende immer nur den letzten buchstaben sehe.

Wie kann ich das nun machen, dass ich das gesamte wort chiffriert sehe ?

Danke schonmal ;)

Edit: Sorry für die schlechte formatierung des codes, aber wenn ich das richtig formatiere wirds nach dem editieren erst recht wieder auf eine ebene gehaut ...
 
So das obere problem habe ich gelöst, nun aber was neues.



Ich will, dass wenn in einem edit feld die return taste gedrückt wird, die onclick procedur eines buttons aufgerufen wird.
Hier mein erster versuch:

procedure TForm1.edtKlartextKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#13, #8, #65 .. #90]) then begin
key := #0;
showmessage('Bitte nur Großbuchstaben verwenden!');
end;
if key = #13 then TForm1.btnChiffrierenClick(sender);
end;

Also die erste if not key in zeile soll einfach verhindern dass was anderes als Grossbuchstaben eingegeben werden.
#8 erlaubt die backspace taste, und #13 die return taste.

dann if key = #13 then TForm1.btnChiffrierenClick(sender);
Wenn auf die return taste gedrückt wird, soll die procedur vom button ausgeführt werden.
Starte ich das programm, steht da aber 'Diese form des methodenaufrufs ist nur für klassenmethoden erlaubt
:confused: :confused: :confused:

Schreibe ich TForm1.btnChiffrierenClick(sender: TObject) schreibt er ')' erwartet aber ';' gefunden.......

Schreibe ich nur TForm1.btnChiffrierenClick heissts wieder nicht genügend wirkliche parameter.

Was mache ich falsch :confused:

So und jetzt bitte bitte bitte helft mir :love:
 
Zurück
Oben