Как быстро выучить стихотворение наизусть? Запоминание стихов является стандартным заданием во многих школах.
Как научится читать по диагонали? Скорость чтения зависит от скорости восприятия каждого отдельного слова в тексте.
Как быстро и эффективно исправить почерк? Люди часто предполагают, что каллиграфия и почерк являются синонимами, но это не так.
Как научится говорить грамотно и правильно? Общение на хорошем, уверенном и естественном русском языке является достижимой целью.
- Обратная связь
- Правила сайта
Источник: www.soloby.ru
4/48 — Что является основным результатом работы БА в IT? Курс Бизнес-анализ в IT.
Лабораторная работа №2 структура программы в паскале. Ввод и вывод данных. Линейные программы
Цель работы: усвоить назначения и использование операторов ввода данных и вывода результата, оформления программы на Паскале, освоение программы с линейной структурой, используемых, как правило, для реализации обычных вычислений по формулам.
Краткие теоретические сведения
Программа на Паскале состоит из двух частей: описания используемых данных и операторов по их преобразованию. Вторая часть также называется программным блоком. Общий вид программы:
Формат вывода — это указываемое после двоеточия целое число, определяющее, сколько позиций на экране должна занимать выводимая величина. Если цифр в числе меньше, чем зарезервированных под него позиций на экране, то свободные позиции дополняются пробелами слева от числа. Если указанное в формате вывода после двоеточия число меньше, чем необходимо, то оно автоматически будет увеличено до минимально необходимого.
Для вывода вещественного числа в формате с фиксированной запятой в списке вывода для каждого выражения указывается два параметра:
- общее количество позиций, отводимых под число;
- количество позиций в дробной части числа.
При выполнение нового оператора write вывод продолжается в той же строке. Чтобы осуществить переход к новой строке, используется оператор writeln. Других различий между операторами write и writeln нет.
4.2.2. Первая программа на языке Паскаль
Пользуясь рассмотренными операторами, составим программу, вычисляющую длину окружности и площадь круга радиуса 5,4 см.
Исходными данными в этой задаче является радиус: r — 5,4 см. Результатом работы программы должны быть величины С — длина окружности и S — площадь круга. С, S и r — величины вещественного типа.
Исходные данные и результаты связаны соотношениями, известными из курса математики: С = 2πr, S = πr + . Программа, реализующая вычисления по этим формулам, будет иметь вид:
Ответы на вопросы 3: Замер времени исполнения программы.
Эта программа верна и решает поставленную задачу. Запустив её на выполнение, вы получите следующий результат:
И всё-таки составленная нами программа имеет существенный недостаток: она находит длину окружности и площадь круга для единственного значения радиуса (5,4 см).
Для того чтобы вычислить длину окружности и площадь круга для другого значения радиуса, потребуется вносить изменения непосредственно в текст программы, а именно изменять оператор присваивания. Внесение изменений в существующую программу, по меньшей мере, не всегда удобно (например, когда программа большая и операторов присваивания много). Ниже вы познакомитесь с оператором, позволяющим вводить исходные данные в процессе работы программы, не прибегая к изменению текста программы.
4.2.3. Ввод данных с клавиатуры
Для ввода в оперативную память значений переменных используется оператор ввода read:
При выполнении оператора read компьютер переходит в режим ожидания данных: пользователь должен ввести данные с клавиатуры и нажать клавишу Enter. Несколько значений переменных числовых типов могут вводиться через пробел или через запятую. При вводе символьных переменных пробел и запятая воспринимаются как символы, поэтому ставить их нельзя.
Первое введённое пользователем значение переменной помещается в ячейку памяти, имя которой расположено первым в списке ввода, и т. д. Поэтому типы вводимых значений (входного потока) должны соответствовать типам переменных, указанных в разделе описания переменных.
var i, j: integer; x: real; a: char;
Присвоим переменным i, j, x, а значения 1, 0, 2.5 и «А». Для этого воспользуемся оператором read (i, j, x, a) и организуем входной поток одним из следующих способов:
Здесь мы не только использовали различные разделители (пробел, запятая), но и входной поток представляли в виде одной, двух и четырёх строк.
Для ввода данных с клавиатуры можно также использовать оператор readln, который отличается от оператора read только тем, что после его выполнения курсор переходит на новую строку.
Усовершенствуем программу n_1, организовав в ней ввод данных с помощью оператора read. А чтобы пользователь знал, для чего предназначена программа, и понимал, какое именно действие ожидает от него компьютер, выведем соответствующие текстовые сообщения с помощью оператора writeln:
Результат работы усовершенствованной программы:
Теперь наша программа может вычислить длину окружности и площадь круга для любого значения r. Иначе говоря, она решает не единичную задачу, а целый класс задач. Кроме того, в программе понятно и удобно организован ввод исходных данных и вывод получаемых результатов. Это обеспечивает дружественность пользовательского интерфейса.
Самое главное
Для ввода в оперативную память значений переменных используются операторы ввода read и readln.
Для вывода данных из оперативной памяти на экран монитора используются операторы вывода write и writeln.
Ввод исходных данных и вывод результатов должны быть организованы понятно и удобно; это обеспечивает дружественность пользовательского интерфейса.
Вопросы и задания
- Запишите оператор, обеспечивающий во время работы программы ввод значения переменной summa.
- Целочисленным переменным i, у, k нужно присвоить соответственно значения 10, 20 и 30. Запишите оператор ввода, соответствующий входному потоку:
-
а) 20 10 30
б) 30 20 10
в) 10 30 20 - Опишите переменные, необходимые для вычисления площади треугольника по его трём сторонам, и запишите оператор, обеспечивающий ввод необходимых исходных данных.
- Что является результатом выполнения оператора?
-
а) write (а)
б) write (1 а «)
в) write (1 а=1, а) - Какой тип имеет переменная f, если после выполнения оператора write (f) на экран было выведено следующее число?
-
а) 125
б) 1.25Е+2 - Каким образом можно вывести на экран вещественное число в формате с фиксированной запятой?
- Запишите операторы ввода двух чисел и вывода их в обратном порядке.
- Дан фрагмент программы: read (a); read (b); c:=a+b; write (a, b); write (с) Упростите его, сократив число операторов ввода и вывода.
- Дан фрагмент программы: а:=10; b:=a+l: a:=b-a; write (а, Ь) Какие числа будут выведены на экран компьютера?
- Напишите программу, которая вычисляет площадь и периметр прямоугольника по двум его сторонам.
«Принтер для печати пластиковых карт» — Возможность разместить в два раза больше информации на одной пластиковой карте. Стоимость. Принтер для печати пластиковых карт. ZEBRA P110i/ P120i. Обзор модельного ряда.
Экономичные полноцветный принтеры для печати пластиковых карт. Высокая производительность Широкий выбор дополнительных устройств кодирования.
«Периферийные устройства ПК» — Периферийные устройства. Принтеры. Запись. Цифровые фотоаппараты. Иерархия средств подключения.
Видеоадаптеры. Классификация ПУ. Универсальная последовательная шина. CD-R. Параметры выбора.
Встроенная вспышка. Первопроходцы. Природа. Модем. Видеотерминал.
Сканеры. Периферийные устройства ПК. Классификация мышковидных.
«Средства ввода и вывода информации» — Сканер. Плоттер. ЭЛТ. Принтеры. Клавиатура. Цифровые камеры и фотоаппараты.
Функции. Универсальное устройство для ввода. Устройства ввода и вывода информации. Графический планшет. Мышь.
«Устройства вывода информации» — Устройство компьютера. Чем больше разрешающая способность монитора, тем выше качество изображения. Недостатки струйных принтеров: Большой расход чернил; Высокая стоимость заправки. Плоские мониторы на жидких кристаллах (ЖК) компактны и не имеют излучения. Устройства вывода информации.
Монитор является универсальным устройством вывода информации.
«Принтеры» — Локальные. Термоблок, печка, fuser — узел в котором тонер впекается в бумагу. Лазерные. Матричные (игольчатые). Со временем теряют свои свойства и подлежат регулярной замене специалистом. Струйные. Сетевые. Меняется пользователем. Характеристики принтеров.
Девелопер, носитель, developer — мельчайшие металлические частицы, переносящие тонер на фотовал.
«Подсистема ввода-вывода» — Точка прерывания. Таблицы. Непрерывное размещение. Атрибут. Разрешения на доступ к файлам. Связный список индексов. Данные. Физическая организация.
Прямой доступ к памяти. Индексно-последовательный файл. Монтирование. Ввод-вывод, управляемый прерываниями. Разрешения на доступ к каталогам.
Организация параллельной работы.
Всего в теме 27 презентаций
Оператор — это элемент языка, задающий полное описание действия, которое необходимо выполнить. Каждый оператор представляет собой законченную фразу языка программирования и определяет некоторый вполне законченный этап обработки данных. В состав операторов могут входить служебные слова, данные, выражения и другие операторы. В английском языке данное понятие обозначается словом “statement”, означающим также “предложение”.
Каждый оператор в любом языке программирования имеет определенный синтаксис и семантику . Под синтаксисом оператора понимается система правил (грамматика), определяющая его запись с помощью элементов алфавита данного языка, в который наряду с различными символами входят, например, и служебные слова. Под семантикой оператора понимают его смысл, т.е. те действия, которым соответствует запись того или иного оператора. Например, запись i:= i + 1 является примером синтаксически корректной записи оператора присваивания в языке Pascal, семантика которого в данном случае такова: извлечь значение ячейки памяти, соответствующей переменной i, сложить его с единицей, результат записать в ту же ячейку памяти.
В большинстве процедурных языков программирования набор операторов практически одинаков и состоит из оператора присваивания, операторов выбора, операторов цикла, оператора вызова процедуры, операторов перехода. Иногда выделяют также пустой (отсутствие действия) и составной операторы. Многие операторы являются способом представления определенных алгоритмических конструкций (см. “Алгоритмические конструкции ” ) в языке программирования. Рассмотрим группы операторов подробнее, используя синтаксис языка Pascal.
Оператор присваивания
Присваивание — это действие компьютера, в результате которого переменная получает значение вычисленного выражения (оно помещается в соответствующую переменной ячейку памяти). Для описания такого действия в языках программирования существует оператор присваивания .
В общем виде оператор присваивания записывается так:
Например, в языке Pascal в качестве знака присваивания используется комбинация символов:=. В ряде других языков — знак равенства.
Результатом выполнения оператора присваивания является изменение состояния данных: все переменные, отличные от переменной , стоящей в левой части оператора присваивания, не меняют своего значения, а указанная переменная получает значение выражения , стоящего в правой части оператора присваивания. В большинстве случаев требуется, чтобы тип выражения совпадал с типом переменной . Если это не так, то оператор либо считается синтаксически некорректным, либо производится преобразование типа выражения к типу переменной (см. “Типы данных ” ).
Операторы выбора
По-другому эти операторы называют условными операторами . Условные операторы используются для программирования алгоритмов, содержащих алгоритмическую конструкцию ветвление.
В языках программирования имеется несколько видов условных операторов. Полный условный оператор соответствует алгоритмической структуре полного ветвления:
В языке программирования соответствующий условный оператор имеет вид:
if B then S1 else S2
Если выражение B , которое вычисляется в начале выполнения условного оператора, имеет значение “истина”, то будет выполняться оператор S1 , в противном случае — оператор S2 . Операторы S1 и S2 могут быть составными.
Алгоритмическая структура неполного ветвления реализуется с помощью неполного условного оператора, который имеет вид:
if B then S
Здесь B — логическое выражение, а S — произвольный оператор. Оператор S будет выполняться, если выражение B окажется истинным.
Если условный оператор реализует всего две ветви выбора (“да” и “нет”), то с помощью оператора варианта (case -оператора) можно запрограммировать многоветвящуюся структуру. Оператор варианта имеет вид:
Выполняется данный оператор так: значение выражения E ищется среди перечисленных в записи оператора значений V1, V2, …, Vn , и если такое значение находится, то выполняется соответствующий оператор S1, S2, …, Sn .
В разных языках программирования синтаксис и даже семантика перечисленных операторов могут отличаться, но возможности, предоставляемые программисту подобными конструкциями, примерно одинаковы.
Пример 1. В статье “Алгоритмические конструкции ”2 был приведен пример записи алгоритма решения обобщенного квадратного уравнения с помощью конструкций ветвления. Приведем фрагмент программы на языке Pascal, реализующий этот же алгоритм:
if a = 0 then
if b = 0 then
if c = 0 then writeln(«x — любое»)
else writeln(«нет корней»)
else writeln(-c/b)
if D 0 do begin
S:= S + N mod 10;
N:= N div 10
В цикле с постусловием тело цикла предшествует условию В. В отличие от цикла с предусловием здесь В — это условие окончания цикла. Оператор цикла с постусловием в Паскале имеет вид:
repeat S until B
При такой организации цикла тело цикла S хотя бы один раз обязательно выполнится.
Практически во всех процедурных языках существует оператор цикла c параметром . Схематично его можно представить так:
for E1 to E2 step E3 do S
Здесь значение переменной (параметра цикла) меняется от значения выражения E1 до E2 с шагом E3. Для каждого такого значения параметра цикла выполняется оператор S. В языке Pascal понятие шага в описании этого оператора отсутствует, а сам шаг для целочисленного параметра цикла может быть равен либо 1, либо –1. Оператор “цикл с параметром” используется для программирования циклов с заданным числом повторений. Для программирования итерационных циклов (число повторений которых заранее неизвестно) он не годится.
Оператор вызова процедуры
В статье “Подпрограммы ” подробно рассказывается о таком виде подпрограмм, как процедуры. Стандартные подпрограммы языка программирования, которые входят в одну из библиотек подпрограмм, а также пользовательские подпрограммы, описанные внутри данного блока, вызываются с помощью оператора вызова процедуры :
Здесь E1,E2,…,En — переменные или выражения, представляющие собой фактические параметры обращения к процедуре. Наиболее часто используемыми стандартными процедурами являются процедуры ввода и вывода данных (read и write в Pascal).
Вызов процедуры семантически эквивалентен выполнению блока, описанного в качестве тела процедуры, после передачи в него начальных значений некоторых переменных (параметров-значений) или замены имен некоторых переменных (параметров-переменных) на имена фактических переменных, указанных при вызове процедуры.
Пример 3. Пусть у нас описана процедура abc:
procedure abc(a,b:integer;var c: integer);
Вызов этой процедуры abc(2,3,x) эквивалентен блоку действий:
Операторы перехода
Наиболее известным в данной группе операторов является оператор безусловного перехода goto . Если ко всем или некоторым уже имеющимся операторам программы добавить метки , то в программе становится возможным использовать оператор перехода вида:
Метка в данном случае соответствует началу того оператора, с которого должно продолжиться выполнение программы. Такой оператор позволяет записывать в языке программирования алгоритмы, имеющие сколь угодно сложную структуру. Но зачастую использование безусловного перехода неоправданно, т.к. ведет к запутанной, плохо читаемой программе. Практически единственным осмысленным применением оператора goto является выход сразу из нескольких вложенных циклов, например, при обработке двухмерных массивов.
Пример 4. Пусть нам требуется определить, есть ли в двухмерном массиве a элемент, равный 0:
for i:= 1 to N do
for j:= 1 to N do
if a = 0 then begin
1: if b then write(«есть») else write(«нет»);
Программа, разработанная по правилам структурного программирования, не должна содержать операторов безусловного перехода. Приведенную выше программу без использования оператора goto можно переписать следующим образом:
while not b and (i =) and (n , , . )
список вывода
Выражения — символьные, числовые, логические,
в том числе переменные и константы
Пример:
write («s c s Вычисление длины окружности и площади круга»);
write(«Введите r>>»);
readln(r);
c:=2*pi*r;
Результат работы программы:
s:=pi*r*r;
writeln («c s a»)
в) write («a «);
Похожие материалы:
- Прошивка Samsung Galaxy S3 mini Galaxy s3 mini прошивка 4
- Что делать, если планшет не загружается дальше логотипа — варианты решения проблемы
- Что делать, если телефон показывает наушники
- Как узнать скрытый номер на Теле2 человека, который звонил
Источник: bazava.ru