Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Операторы ввода - вывода




Простейшие операторы.

Оператор присваивания:= выполняет правую часть выражения и присваивает результат переменной, расположенной в левой части выражения.

Пример:

X:=5+6; {к 5 прибавляется 6 и результат помещается в X}
X:=X+4 {к X прибавляется 4 и результат помещается в X}
X+Y:=15+3 {ошибка, в левой части не может быть 2-х переменных!}
Name:=′Петя′; {переменной Name присваивается значение Петя}
Ch:= ′+′; {переменной Ch присваивается значение +}

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

Оператор безусловного перехода GOTO <метка> нарушает последовательное выполнение программы и передает управление оператору, помеченному меткой: GOTO Metka 1;

Внимание! Не забывайте описывать метки в разделе LABEL!

Имейте в виду, что хорошим стилем программирования является сведения операторов GOTO к минимуму.

Оператор вызова процедуры < имя процедуры > вызывает для выполнения подпрограмму-процедуру. После выполнения процедуры управление передается оператору, следующему сразу за оператором вызова процедуры.

 

Ввод данных осуществляется операторами: READ и READLN. Формат оператора Read для ввода с клавиатуры: READ(X1, X2,…, XN);

где X1, X2,…, Xn-значения типа integer, real, string char и др.

Если вводится несколько значений, между ними должен находиться пробел. Например, для ввода трех целых значений X, Y, S с помощью оператора READ(X, Y, S); надо набрать: 7 8 120 и начать клавишу ENTER. Для исключения ошибок при вводе каждым оператором READ рекомендуется вводить только одно значение. Например:

READ (X); READ (Y); READ ( S ); { ввод трех значений с одной строки}

Формат оператора READLN для ввода с клавиатуры:

READLN(X1, X2,…, XN);

Единственное отличие READLN от READ-после выполнения READLN курсор перемещается на следующую строку:

READLN(X); READLN(Y); READLN( S ); {ввод трех значений с отдельных

строк}

READLN; {пропуск строки}.

Вывод данных на экране осуществляется операторами: WRITE и WRITELN.

Формат оператор WRITE для вывода на экран: WRITE (Y1, Y2, …, YN);

Где Y1, Y2, …,Yn-значение типа integer, real, string char и др. Единственное отличие WRITELN от WRITE-после выполнения Writeln курсор перемещается на следующую строку. Пример:

Оператор Результат
WRITE(′СУММА 5+6=′,5+6); СУММА 5+6=11
WRITE(′ПРИВЕТ′); ПРИВЕТ
WRITE(′A′); WRITE(′B′) AB
WRITE(А1,А2, … АК); вывод переменных А1, …,AK в одну строку экрана;
WRITELN(А1,А2, … АК); вывод переменных А1, …,AK в одну строку экрана и переход к началу следующей строки;
WRITELN(′A′); WRITE(′B′); A B
WRITELN пропуск строки и переход к началу следующей строки.

 

В языке Паскаль предусмотрена возможность форматировать (упорядочивать) выходные данные. Это делается путем указания длины поля вывода через двоеточие после каждого выводимого значения.

Общий формат: WRITELN(x1:< n1>, X2:< n2>, …);

где n1 n2,…-длина поля вывода соответственно для X1, X2,…

формат для чисел с фиксированной точкой имеет несколько иной вид: в нем указывается общая длина поля вывода и количество цифр в дробной части:

WRITELN(x1:< n1>:<q1>, X2:< n2>:<q2>…); где n-общая длина поля вывода,

q-количество цифр в дробной части.

Если выводимое значение занимает в поле вывода меньше позиций, чем n1 n2, то перед этим значением располагаются пробелы. Если выводимое значение не помещается в ширину поля K, то для этого значения будет отведено необходимое количество позиции. Пример:

Оператор вывода Результат Оператор вывода результат
WRITELN(555:3); 555 WRITELN(511.04:8:4); 511.0400
WRITELN(555:4); 555 WRITELN(′A′:6); A
WRITELN(555:5); 555 WRITELN(5:3,10:3); 510

Пример 1. Заданы длины трех сторон треугольника a, b, c. Вычислить периметр и площадь треугольника. Значения a, b, c ввести с клавиатуры.

Решение задачи можно разделить на несколько этапов:

1.Ввод значений a, b, и c.

2.Вычисление полупериметра по формуле

3.Вычисление площади прямоугольника по формуле Герона

4.Вывод площади треугольника s и периметра 2p.

Текст программы с комментариями приведен ниже.

Program four;

{Описаны переменные вещественного типа: a, b, c-стороны треугольника,

s-площадь, p-полупериметр.}

var

a, b, c, s p:real;

begin

{Ввод исходных данных.}

write (′a=′); readln(a);

write (′b=′); readln(b);

write (′c=′); readln(c);

{Вычисление полупериметра треугольника.}

p:=(a+b+c)/2;

{Вычисление площади треугольника.}

s:=sqrt(p*(p-a)*(p-b)*(p-c));

{Вывод периметра и площади в экспоненциальной форме.}

writeln (′периметр треугольника′, 2*p);

writeln (′площадь треугольника′, s);

end.

Пример 2. Заданы радиус основания и высота цилиндра. Вычислить площадь основания и объем. Площадь основания вычисляется по формуле, объем цилиндра равен

Решение задачи можно разделить на несколько этапов:

1.Ввод значений r и h.

2.Вычисление площади основания

3.Вычисление объема цилиндра

4.Вывод площади основания и объема цилиндра.

Текст программы с комментариями приведен ниже:

{Описание переменных.}

var

s,v,r,h:real;

begin

{Ввод исходных данных.}

writeln(′Введите R и H′);

readln (r,h);

{Вычисление площади основания.}

s:=pi*sqr(r);

{Вычисление объема цилиндра.}

v:=s*h;

{Вывод результатов в формате с фиксированной точкой.}

writeln (′v=′, v:6:2);

writeln(′s=′, s:8:3);

end.

Рассмотрим одну особенность форматированного вывода вещественного числа. Пусть есть оператор write (a:m:n), где m- ширина поля вывода, n- количество знаков в дробной части числа. Если число a не помещается в m позиций, то поле вывода расширяется до минимально необходимого. В связи с этим допустимыми являются следующие форматы: а:2:2, а:1:2, а:0:2 и даже

а:-1:2. В этом случае вы фактически указываете только количество разрядов в дробной части числа, а ширина поля вывода определяется в момент вывода вещественного числа на экран.




Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 1123; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.023 сек.