Добавил admin | Категория Pascal за 12 уроков, перевод | 18 Декабря 2013
Сегодня мы с вами поговорим о том как работать в Паскале со строковыми переменными, обратите внимание на код ниже:
Program Lesson2_Program1;
Var name, surname: String;
Begin
Write('Enter your name:');
readln(name);
Write('Enter your surname:');
readln(surname);
writeln;{new line}
writeln;{new line}
Writeln('Your full name is: ',name,' ',surname);
Readln;
End.
Давайте теперь посмотрим на нашу программу. Тут мы объявляем две переменных типа string, это name, surname. Как вы наверное уже успели понять мы сегодня с вами будем изучать тип данных string. Это такой строковый тип в Паскале :).
Давайте разбирать что же все таки мы написали выше. И так, мы предлагаем пользователю ввести свое имя (строчка Write('Enter your name:');), ждем пока он его введет (строчка readln(name);) затем предлагаем ввести ему фамилию, ждем пока он ее введет. Думаю с этим все понятно. Потом обратите внимание у нас идут два пустых
writeln;{new line}
writeln;{new line}
мы их используем для того что бы переместить указатель на две строки ниже.
Ну и на следующей строке мы выводим
Writeln('Your full name is: ',name,' ',surname);
Ваше имя и фамилия
Обратите внимание что это можно сделать следующим образом
Writeln('Your name is: ',name,'');
Или вот так
Writeln('Your name is: ',name);
Константы и оператор присваивания
в паскале по мимо переменных так же есть так называемые константы. Константой называется «переменная» значение которой в процессе работы программы не изменяются. Давайте посмотрим на следующий код
Program Lesson2_Program2;
Var
surname: String;
Const {the reserved word 'const'
is used to initialize constants}
name = 'Victor';
Begin
Write('Enter your surname:');
readln(surname);
writeln;
writeln;
Writeln('Your full name is: ',name,' ',surname);
Readln;
End.
Тут мы объявляем специальный раздел – Const и в нем описываем константу name и присваиваем ей значение name = 'Victor'; В других примерах, например когда нужно использовать числовую константу можно написать так:
Const
age = 15;
теперь наша константа age может быть использована в любом месте программы. Например
age2 := 15;
age2 := age + 15;
приведенный выше пример показывает как с помощью нашей константы age мы увеличиваем значение переменной age2. В результате выполнения этого участка кода в переменной age2 будет значение 30.
Для закрепления нашего сегодняшнего материала хотелось бы вам представить такой вот исходных код программы, подумайте над ним, посмотрите как это работает.
Program lesson2_Program3;
Var PD, Dname, Cmodel : String;
TotalKM, CostPD, TCostPD, Distance : Real;
{real is a decimal (described later)}
begin
TCostPD := 0;
{note that this is called an 'initialisation'.
It is important to initialise variables to 0
so that it is 'refreshed' from the previous
'rubbish' value in the memory.}
Writeln('This program prompts you to '+
+'input the cost per litre of');
Writeln('the petrol/diesel you spend '+
+'in and the average distance you travel');
Writeln('with your car every week. Then '+
+'the computer calculates the total cost');
Writeln('you spend in fuel every week.');
Readln;
Write('Diesel or Petrol?: ');
Readln(PD);
Write('Name Of Driver: ');
Readln(Dname);
Write('Car Model: ');
Readln(Cmodel);
Write('Cost of Diesel/Petrol: (£) ');
Readln(CostPD);
Writeln('Average distance you travel '+
+'with your car every week: (kilometres) ');
Readln(Distance);
Writeln;
Writeln;
Writeln('Name of Driver:',Dname);
Writeln('Car Model:',Cmodel);
Writeln('Diesel/Petrol:',PD);
Writeln('Average distance covered '+
+'every week: ',Distance:1:2,'Km');
Writeln('Cost of ',PD,' per liter: £',CostPD:1:2,'/litre');
Writeln;
Writeln;
TCostPD := Distance * CostPD;
Writeln('Total cost of ',PD,' per week:'+
+'£',TCostPD:1:2); {note this,}
TCostPD := 0;
Writeln('Total cost of ',PD,' per week:'+
+'£',(Distance * CostPD):1:2); {this}
Writeln('Total cost of ',PD,' per week:'+
+'£',Distance * CostPD); {and this - without ':1:2'}
readln;
End.