Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Praktische Informatik (http://www.informatikerboard.de/board/board.php?boardid=6)
--- Turbo Pascal (http://www.informatikerboard.de/board/thread.php?threadid=3685)


Geschrieben von asdfasdf am 29.08.2017 um 23:40:

  Turbo Pascal

Meine Frage:
Hi, ich soll in der Schule ein Programm schreiben. Ich habe mir aber aus Spaß etwas grundlegendes gemacht...

Unzwar:

program x
uses crt;

var
name:string;
age:integer;

begin
clrscr;
writeln('what is your name');
readln(name);

clrscr;
writeln('how old are you?');
readln(age);

clrscr;
writeln('name,' , you are', age,' years old');
readln;
end.

Zur Formulierung meiner Frage ein Beispiel: Ich heiße Max und bin 11 Jahre alt. Wenn ich jetzt meinen Namen und mein Alter im Programm angebe dann kommt beim Run folgendes heraus: Max, you are11 years old.
Zwischen "are" und "11" ist kein Leerzeichen, was absichtlich ist, da es im Programm auch kein Leerzeichen aufweist.

Wie kriege ich es nun hin, dass zwischen "you are" und "age" ein Leerzeichen ist?

Meine Ideen:
Ich habe auch schon versucht im Programm ein Leerzeichen bzw. viele Leerzeichen vor die Variable "age" zu setzen, hat aber nicht bewirkt.



Geschrieben von as_string am 30.08.2017 um 14:47:

 

Du musst das Leerzeichen innerhalb der Anführungszeichen machen, also direkt hinter "are" noch vor dem Hochkomma.
Außerdem ist das Hochkomma vor der Variable name falsch.

Du musst prinzipiell unterscheiden zwischen Variablen und Stringliteralen (also das, was in Hochkommata steht).

Gruß
Marco



Geschrieben von TDN am 30.08.2017 um 15:47:

  Turbo Pascal

Ach ja, das mit dem Hochkomma bei den Variablen habe ich im pascal programm richtig, hier jedoch falsch großes Grinsen Und danke für die Antwort


Forensoftware: Burning Board, entwickelt von WoltLab GmbH