Здравствуй, Тарас Скотинин!
Достаточно ли здесь одного оператора печати? Конечно! Вот он.
Writeln(’Здравствуй, ’, N, ’ ’, S, ’!’);
Тут мы втиснули в процедуру Writeln аж пять параметров! Обратите внимание: в конце добавлен восклицательный знак, а между именем и фамилией печатается пробел, иначе эти слова слипнутся на экране.
После всех пояснений следующая программа должна быть вполне ясной.
var N, S : string;
begin
Writeln(’Фамилия?’); Readln(S);
Writeln(’Имя?’); Readln(N);
Writeln(’Здравствуй, ’, N, ’ ’, S,’!’);
Writeln(’Нажми Enter’); Readln;
end.
Обязательно скомпилируйте её и проверьте в действии.
Итак, нам удалось скроить уже два «кармана» для хранения данных. Действительно, переменные сродни карманам, здесь можно и хранить данные, и копировать из одного «кармана» в другой. Для копирования данных в Паскале применяют оператор присваивания, вот примеры копирования данных.
A := 'Привет, Мартышка!'; <– копирование строковой константы
B := A; <– копирование из переменной A в переменную B
Пара символов «:=» – «двоеточие» и «равно» – означают операцию присваивания. Слева от знака операции указывают переменную, в которую будут помещены данные, а справа можно указать переменную или константу. Что, по вашему мнению, напечатает следующая программа?
var A, B : string;
begin
A:= 'Первая строка';
B:= 'Вторая строка';
Writeln(A); Writeln(B);
Writeln(B); Readln
end.
Очевидно, что на экране появятся следующие строки.
Первая строка
Вторая строка
Первая строка
Первые два оператора заносят в переменные A и B две строковые константы, которые затем печатаются. Третий оператор присваивания B:=A скопирует в переменную B значение переменной A, где уже содержится «Первая строка», – она и будет напечатана последней.
Но, к чему здесь было копировать данные из одной переменной в другую? Сейчас это не имело смысла, согласен. Но последнее слово ещё не сказано!