1. КОМАНДЫ ПРИСВАИВАНИЯ, ВВОДА И ВЫВОДА Краткие теоретические сведения
При выполнении программы происходит обработка данных. Данные в програм- мировании называют величинами. Величины, значения которых могут изменяться в процессе выполнения программы, называют переменными. Значение каждой перемен- ной хранится в определенном участке памяти компьютера.
Каждая переменная характеризуется именем, типом и значением.
Имя переменной (идентификатор) всегда должно начинаться с латинской буквы, после которой могут следовать несколько латинских букв, цифр либо символ подчер- кивания «_», записанных без пробелов. Например: A, B1, sum, Name, Pr_3.
Тип переменной определяет диапазон допустимых значений.
Все переменные, используемые в программе, должны быть описаны в разделе описаний. Например:
Var
A, B: integer; X:real;
Text: string;
Переменная не имеет какого-либо конкретного значения до тех пор, пока компь- ютеру не будет дано точное предписание, поместить что-либо определенное в соот- ветствующую ячейку памяти.
На Паскале такого рода предписание обычно выражается командой присваивания, имеющей вид:
имя_переменной:=выражение_или_значение
Оператор присваивания (:=) предписывает выполнить выражение, заданное в его правой части, и присвоить результат переменной, идентификатор которой расположен в левой части. Переменная и выражение должны быть совместимы по типу.
Оператор присваивания выполняется следующим образом: сначала вычисляется выражение в правой части присваивания, а затем его значение присваивается пере- менной, указанной в левой части оператора.
Например, для оператора
Rezult:=A div В;
сначала выполняется целочисленное деление значения переменной А на значение переменной В, а затем результат присваивается переменной Rezult.
Примеры применения оператора присваивания: A:=22;
B:=A+6; X:=a/10;
text:=’Privet!’;
Пример, демонстрирующий работу команды присваивания. program primer;
var a:integer; begin
a:=5; {переменной А присваивается значение 5 – исходное значение} writeln(‘a=’,a); {вывод на экран монитора значения переменной а} a:=2*a; {значение переменной А увеличивается в 2 раза}
writeln(‘a=’,a); {вывод на экран монитора промежуточного значения перемен- ной а}
a:=a+1; {значение переменной А увеличивается на 1}
writeln(‘a=’,a); {вывод на экран монитора значения переменной а - результат}
end.
В результате выполнения программы на экране в «окне вывода» появится следу- ющая информация об изменении значений переменной А:
a=5 a=10 a=11
Важно помнить: в результате выполнения команды присваивания предыдущее значе- ние переменной стирается.
Для выполнения операций ввода-вывода служат четыре процедуры: Read, Readln, Write, WriteLn.
Процедура чтения Read обеспечивает ввод числовых данных, символов, строк и т.д. для последующей их обработки программой.
Формат процедуры Read: Read (x1, x2, …, xn);
где x1, x2, …, xn- переменные допустимых типов данных.
Значения x1, x2, …, xn набираются минимум через один пробел на клавиатуре и высвечиваются на экране. После набора данных для одной процедуры Read нажимает- ся клавиша ввода Enter.
Значения переменных должны вводится в строгом соответствии с синтаксисом языка Паскаль. Если соответствие нарушено (например, х1 имеет тип Integer, а при вводе набирается значение типа Char), то возникают ошибки ввода-вывода. Сообще- ние об ошибке имеет вид: I/O error XX, где ХХ - код ошибки.
Процедура чтения ReadLn аналогична процедуре Read, единственное отличие за- ключается в том, что ее выполнения курсор автоматически перейдет на новую строку.
Процедура записи Write производит вывод числовых данных, символов, строк, булевских значений.
Формат процедуры Write: Write (<список вывода>);
где <список вывода>- последовательность переменных, констант, математиче- ских выражений, перечисляемых через запятую.
Процедура записи WriteLn аналогична процедуре Write, единственное отличие заключается в том, что после вывода последнего в списке значения для одной проце- дуры WriteLn данные для следующей процедуры WriteLn будут выводиться с начала новой строки.
Процедуры вывода допускают использование указания о ширине поля, отводи- мого под значение в явном виде:
WRITE (Y:m:n,X:k:l,...);
WRITELN (Y:m:n:,X:k: I,...);
где m и k- количество позиций, отведенных под запись значения переменных Y и X соответственно;
n и I - количество позиций, отведенных под запись дробной части чисел Y и X.
Пример 1. Найти сумму двух вещественных чисел.
Используемые переменные: x, y –вводимые числа (исходные данные), z – их сумма (результат)
Program primer; var
X, Y, Z: Real;
begin
Writeln(‘Введите два числа X и Y:'); {вывод строки подсказки}
Readln(X,Y); {ввод чисел x и y}
Z := X + Y; {вычисление суммы x и y}
Writeln(' X + Y=’, Z); {вывод результата}
end.
Результат
Введите два числа X и Y:
15 22
X + Y=37
Пример 2.
Составить программу расчета значения функции.
Z = |cos х4 – 3 tg х2 |+0.8 sin yх2+ 10 при любых значениях х и у. Результат вывести в виде: при х= и у=… z=…
Используемые переменные: x, y -аргументы, z – значение функции Program pr1;
Var x,y,z: real;
Begin
writeln('введите X Y'); {вывод строки подсказки}
readln (x,y); {ввод аргументов x и y}
z:=abs(cos(sqr(x)*sqr(x)-3*sin(sqr(x))/cos(sqr(x))))+0.8*sin(y*sqr(x))+10;
writeln('при x=',x:8:2,' y=',y:8:2,' z=',z:8:2); {вывод результата}
End.
Результат введите X Y 1 2
при x=1.00 y=2.00 z=11.59
Пример 3.
Вводится вещественное число а. Не пользуясь никакими арифметическими опе- рациями, кроме сложения, получить 7а за четыре операции.
Используемые переменные: а –вводимое число,
b, c, d – вспомогательные переменные
Program pr2;
Var a,b,c,d:real;
Begin write('введите a ');
readln (a); {ввод исходного числа}
b:=a+a; {2a}
c:=b+b; {4a}
d:=b+c; {6a}
a:=d+a; {7a}
writeln('7a=',a:8:2); {вывод результата}
End.
Результат
введите a 2
7а= 14.00
Пример 4.
Найти площадь круга и длину окружности.
Используемые переменные: r - радиус, d – длина окружности,
s – площадь круга
Program pr3; Var d,r,s:real;
Begin
write('введите радиус окружности ');
readln (r); {ввод радиуса}
d:= 2*Pi*r; {вычисление длины окружности}
s:=Pi*sqr(r); { вычисление площади круга} writeln('длина окружности= ',d:4:2); {вывод результата} writeln('площадь окружности= ',s:4:2);
End.
Результат
введите радиус окружности 5 длина окружности=31.42 площадь окружности=78.54
Пример 5.
Вычисление суммы цифр введенного натурального двузначного числа.
Используемые переменные: n - двузначное число, a, b – цифры числа Program pr4;
Var n, a, b: integer;
Begin
write('n= '); readln(n); {ввод исходного двузначного числа}
a:=n div 10; {1-я цифра}
b:=n mod 10; {2-я цифра}
writeln('сумма = ', a+b); {вывод результата}
End.
Результат
n=48
сумма=12
Пример 6.
Введенное натуральное 4-значное число изменить так, чтобы 2 и 3 цифры поме- нялись местами.
Четырехзначное число N можно представить в виде суммы разрядных слагае- мых: N=n1*1000+n2*100+n3*10+n4, где n1, n2, n3, n4 – цифры соответствующих раз- рядов. Например, 3562=3*1000+5*100+6*10+2
Чтобы во введенном числе N поменять цифры местами, нужно выделить каждую цифру и записать число в виде N=n1*1000+n3*100+n2*10+n4
Используемые переменные: N – вводимое четырехзначное число,
n1, n2, n3, n4 – цифры
Program pr5;
Var N, n1, n2, n3, n4:integer;
Begin write('введите n ');
readln (n); {ввод исходного 4-значного числа}
n1=N div 1000; {1-я цифра числа}
n2:=N div 100 mod 10; {2-я цифра числа }
n3:=N div 10 mod 10; {3-я цифра числа }
n4:=N mod 10; {4-я цифра числа}
n:= n1*1000+n3*100+n2*10+n4; {получение числа в виде суммы разрядных
слагаемых}
writeln('результат ', n); {вывод результата}
End.
Результат:
введите n 1234
результат 1324
Пример 7.
Обмен значениями переменных X и Y.
Для того, чтобы переменные X и Y поменялись своими значениями, можно ис- пользовать вспомогательную переменную, например, T. Вспомогательная переменная нужна для того, чтобы сохранить временно значение переменной X. После этого в пе- ременную X можно занести значение переменной Y, а Y - присвоить значение X. Используемые переменные: X, Y – вводимые числа,
T – вспомогательная переменная
Program pr6;
Var X, Y, T: integer; begin
write('Введите X Y ');
readln(X, Y); {ввод исходных чисел}
T:=X;
X:=Y;
end.
Y:=T;
writeln('X=', X, 'Y=',Y); {вывод результата}
Результат:
Введите X Y 3 7 X=7 Y=3
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.