КОМАНДЫ ПРИСВАИВАНИЯ, ВВОДА И ВЫВОДА

  • docx
  • 26.12.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л3-0025361.docx

 КОМАНДЫ ПРИСВАИВАНИЯ, ВВОДА И ВЫВОДА

 Краткие теоретические сведения

При выполнении программы происходит обработка данных. Данные в програм- мировании называют величинами. Величины, значения которых могут изменяться в процессе выполнения программы, называют переменными. Значение каждой перемен- ной хранится в определенном участке памяти компьютера.

Каждая переменная характеризуется именем, типом и значением.

Имя переменной (идентификатор) всегда должно начинаться с латинской буквы, после которой могут следовать несколько латинских букв, цифр либо символ подчер- кивания «_», записанных без пробелов. Например: 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

 

Контрольные вопросы

1.     Понятие переменной.

2.     Команда присваивания. Формат, примеры.

3.     Общие сведения о вводе-выводе данных.

4.     Процедуры ввода данных. Read. Формат, примеры.

5.     Процедура ReadLn. Формат, примеры.

6.     Процедуры вывода данных. Write, WriteLn. Форматы, примеры.