Скачать 1.46 Mb.
|
Глава 4. Линейные вычислительные процессы Линейный вычислительный процесс представляет собой последовательность действий, выполняемых один за другим. Основу программы линейного вычислительного процесса составляют оператор присваивания и операторы ввода-вывода данных. 4.1. Оператор присваивания Оператор присваивания служит для вычисления выражения и записи результата в память компьютера. Общий вид записи оператора: <переменная> : = <выражение>; Знак : = читается как “присвоить”. Конец любого оператора в Турбо Паскале фиксируется точкой с запятой. При выполнении оператора присваивания происходит замена текущего значения переменной, стоящей слева от знака присваивания, новым значением, полученным в результате вычисления выражения. Например, после выполнения оператора k : = k+1; текущее значение переменной k увеличится на 1. При записи оператора присваивания необходимо строго следить за типами переменной и выражения: а) если переменная слева - вещественного типа, то арифметическое выражение может быть как целым, так и вещественным. В случае целого арифметического выражения происходит преобразование его результата к вещественному типу. Например, при выполнении оператора m : = 20 + 15 DIV 4; вещественной переменной m будет присвоено значение 23.0; б) если переменная слева - целого типа, то арифметическое выражение должно быть обязательно целым. Например, задано следующее описание типа переменных. Var a, b, c: real; n: integer; Тогда записать оператор присваивания в виде n := ab/c нельзя. В этом случае надо воспользоваться функцией TRUNC. n := trunc(ab/c); Примеры использования оператора присваивания 1. Записать оператор присваивания, который позволяет вычислить расстояние между двумя точками с координатами (x1, y1) и (x2, y2). Ответ: d := sqrt(sqr(x1 - x2) + sqr(y1 - y2)); 2. Записать последовательность операторов присваивания, обеспечивающих обмен значениями переменных x и y в памяти компьютера. Ответ: c := x; x := y; y := c; 4.2. Операторы ввода – вывода Операторы ввода – вывода данных служат для обмена информацией между внутренней памятью компьютера и внешними устройствами (монитор, клавиатура, принтер, накопители на жестких и гибких магнитных дисках и др.) Информация, представленная на внешних устройствах, организуется в файлы. Файлы, предназначенные для хранения исходных данных, называются входными. Результаты вычислений (выходные данные) записываются в выходные файлы. В Турбо Паскале определены стандартные устройства ввода (клавиатура) и вывода (экран монитора), для которых имена стандартных файлов не указываются (используются по умолчанию). Операторы ввода исходных данных с клавиатуры Общий вид записи операторов: READ(<список переменных>); READLN(<список переменных>); Переменные в списке перечисляются через запятую. Операторы ввода обеспечивают чтение данных с клавиатуры, преобразование из внешнего представления во внутреннее и присваивание их значений переменным, указанным в списке. Оператор READLN отличается от оператора READ лишь тем, что после окончания чтения данных из списка, указанного в операторе READLN, необходимо перевести курсор к чтению следующей строки. При вводе с клавиатуры значения данных в строке отделяются друг от друга одним или несколькими пробелами. После набора данных в строке необходимо нажать клавишу Пример. Пусть в задаче определены следующие исходные данные: a = 4; x = 3,8; y = 1,2104 ; k = 5; m = 74. Операторы ввода read(a, x,y); read(k,m); вызывают чтение данных с клавиатуры, набранных следующим образом: 4 3.8 1.2E4 5 74 Операторы вывода данных на экран Общий вид записи операторов: WRITE(<список выражений>); WRITELN(<список выражений>); Выражения в списке перечисляются через запятую. В качестве простейших выражений могут быть константы, переменные, символы, строки. Операторы вывода преобразуют вычисленные значения выражений, указанных в списке, из внутреннего представления во внешнее и выводят эти значения на экран монитора. Оператор WRITELN отличается от оператора WRITE лишь тем, что после вывода значения последнего выражения из списка осуществляется автоматический переход курсора к началу следующей строки. Например, операторы writeln(‘Выходные данные’); writeln(‘К =’, 8+5, ‘ y =’, 7/10); выводят на экран результаты в следующем виде: Выходные данные K =13 y =7.0000000000E –01 Управление выводом данных При стандартной форме вывода вещественные числа отображаются на экране с порядком. Мантисса выводится в нормализованном виде - с одной значащей цифрой в целой части и с десятью цифрами в дробной части. На порядок отводится четыре позиции: первая позиция - под букву Е, вторая позиция - под знак порядка, третья и четвертая позиции – под цифры порядка. Если программиста не устраивает стандартная форма вывода, то он может использовать форматированный вывод, предусмотренный в Турбо Паскале. При форматированном выводе чисел используются два формата: а) ширина поля, определяющая число позиций отводимых для вывода всего числа, включая целую, дробную части, знак и десятичную точку; б) точность представления вещественного числа, определяющая число позиций в дробной части. Вещественные числа с указанием формата всегда выводятся в десятичной форме. Для целых чисел используется только формат ширины поля. В операторах вывода форматы записываются после выражения и отделяются друг от друга двоеточием. Например, при записи оператора writeln(‘K =’, 8+5:3, ‘ y =’, 7/10:5:1); результаты отображаются на экране в следующем виде: K = 13 y = 0.7 В приведенном примере форматы 3 и 5 задают ширину поля, формат 1 – точность выводимого числа. Вывод данных на печать Для организации вывода данных на печать в Турбо Паскале необходимо вызвать стандартный модуль PRINTER, в котором описан внешний файл печати с именем LST. Для вызова модуля в программе после ее заголовка записывается предложение использования модулей: USES PRINTER; Файл LST является нестандартным, поэтому его имя должно быть непосредственно указано в операторе вывода. Например, оператор writeln(LST, ‘K =’, 8+5:3, ‘ y =’, 7/10:5:1); выведет результаты на печать в том же виде, что и на экран монитора. 4.3. Структура основной программы Программа в Турбо Паскале включает в себя заголовок, раздел описаний и раздел операторов. После заголовка может стоять предложение использования модулей. Раздел операторов оформляется в виде составного оператора. Составной оператор представляет собой последовательность операторов, заключенных в операторные скобки, обозначаемые служебными словами BEGIN…END. Конец любого предложения на Паскале (описание, оператор) фиксируется точкой с запятой. Программа всегда заканчивается точкой. Общий вид основной программы Program <имя>; Заголовок программы Uses Printer; Вызов модуля Var <переменная>,…,<переменная>: <тип>; Раздел описания …………………………………………… переменных <переменная>,…,<переменная>: <тип>; Begin <оператор>; Раздел …………… операторов <оператор>; End. Предложение Uses Printer может отсутствовать, если не требуется вывод данных на печать. В программу могут быть включены комментарии – тексты, поясняющие программу. Комментарии заключаются в фигурные скобки и записываются в любом месте программы. Пример линейной программы Составить программу вычисления площади треугольника по формуле: ![]() ![]() ![]() Исходные данные: ![]() Program LVP; Uses Printrer; Var a, b, c, p, S: real; Begin writeln(‘Введите исходные данные’); read(a, b, c); p := (a + b + c) / 2; S := sqrt(p (p - a) (p - b) (p - c)); {Вывод на экран} writeln(‘Площадь треугольника S =’, S:5:2); {Вывод на печать} writeln(LST, ‘Площадь треугольника S =’, S:5:2); End. При выполнении оператора READ программа останавливается и переходит в режим ожидания набора исходных данных с клавиатуры. В этот момент надо набрать на клавиатуре: 1 2 0.5 После нажатия клавиши Площадь треугольника S = 3.87 4.4. Контрольные задания 1. Записать в Турбо Паскале операторы присваивания
|
![]() | Учебное пособие новосибирск 2011 удк 338. 23: 658. 1(075. 8) Цевелев В. В Цевелев В. В. Управление инвестициями. Учеб пособие. — Новосибирск: сгупс, 2011. — 104 с | ![]() | Учебное пособие предназначено в помощь социальным педагогам, социальным работникам и другим специалистам. Цена 850 тг. Арт. 201 Сарсенова Ж. Н. Культурология. Учебное пособие. Алматы: Нур-Принт, 2010 300 с. Учебное пособие «Культурология» Учебное пособие «Культурология» предназначено для использования в обучении по кредитной технологии. В конце каждой главы учебного... |
![]() | Учебное пособие для магистрантов и студентов гуманитарных специальностей Павлодар Учебное пособие предназначено для студентов и магистрантов, обучающихся по специальности «Культурология». Написанное на конкретном... | ![]() | Книга представляет собой антологию тематически сгруппированных философских текстов извлечений из трудов мыслителей разных эпох, включая и современность. Пособие Хрестоматия по философии: Учебное пособие / Отв ред и сост. А. А. Радугин. – Москва: Центр, 2001.– 416с |
![]() | Учебное пособие Тамбов 2002 г. Авторы составители: Кузьмина Н. В, Инькова Н. А., Зайцева Е. А., Толстых С. Г. Основы работы в Интернет: Учебное пособие. Ч тамбов: Изд-во тгту, 2002. с. 40 Учебное пособие «Создание Web-сайтов» предназначено для слушателей курсов повышения квалификации на базе Тамбовского рц фио по программе... | ![]() | Учебное пособие для студентов специальности А86 Арын Р. С., И79 Иренов Г. Н. Этнополитология: учебное пособие. ─ Павлодар: эко, 2008. – 215 с |
![]() | Учебное пособие по английскому языку Для студентов юридического факультета Юридические профессии в Великобритании: Учебное пособие на английском языке. – М.: Импэ им. А. С. Грибоедова, 2008. – 16 с | ![]() | Учебное пособие «Основы работы в Excel», 2003 Учебное пособие предназначено для студентов имтп, а также может быть использовано при самостоятельном освоении современного программного... |
![]() | Учебное пособие Для студентов экономического факультета Москва К66 Антикризисное управление: Учеб пос.: Ч. II. М.: Импэ им. А. С. Грибоедова, 2001. 71 с | ![]() | Учебное пособие омск 2008 федеральное агентство по образованию государственное образовательное учреждение высшего профессионального образования Учебное пособие предназначено для студентов и аспирантов высших учебных заведений, специализирующихся в области физики конденсированного... |