3.2.3. Ввод данных с клавиатуры

Структура программы на Pascal, ввод и вывод данных

В параграфе описаны основные структуры программы на паскале, в том числе разделы описания переменных и типов, операторы ввода и вывода.

Раздел описания переменных

Основные описатели числовых типов: integer, real

Пример var a,b:integer; c:real;

Объясняется синтаксис раздела (применение знаков « . » ; « , » ; « : » ; « ; ») и порядок работы транслятора: «Когда транслятор встречает описание пере­менной, он отводит для этой переменной ячейку памяти и ставит в соот­ветствие имени переменной номер первого байта ячейки.»

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

В разделе объясняется принцип работы с этими операторами:

«Для сообщения данных компьютеру служат операторы ввода и вывода.

Оператор ввода помещает вводимое значение переменной в отведенную ей ячейку: read(); этот оператор останавливает работу программы и ждет, пока пользователь наберет на клавиатуре число и на­жмет . Если список ввода содержит несколько имен, их значения надо вводить через запятую, пробел, или .

Если после ввода числа необходимо перевести курсор на новую строку, ис­пользуют оператор readln();

Для вывода результатов работы программы на экран дисплея используется оператор write();

список вывода содержит перечисленные через запятую имена переменных или арифметические действия, текст, заключенный в апострофы.

При выводе вещественных чисел с фиксированной запятой необходимо после имени переменной в списке ввода указать через “:” 2 числа (сколько позиций занимает число, количество цифр дробной части).»

Задания по разделу

1) Для чего необходимо описывать данные в программе

2) Какой оператор используется для ввода данных, как он рабо­тает

3) Куда попадают введенные с клавиатуры числа при работе оператора ввода

4) Как перевести курсор на новую строку после ввода данных

5) Как вывести на экран результат работы программы

6) Как сделать, чтобы данные выводились с новой строки

7) Как увидеть результаты вывода на экране дисплея, если уже сработал write

8) Можно ли получить результат вычислений без использова­ния оператора Write

1.2.3. Условный оператор

В этом параграфе, применительно к описываемой теме, хотелось бы выде­лить раздел логические выражения, в котором на примере нескольких задач описываются примеры основных логических операций

Таблицы истинности для операций

Примеры построения сложных логических выражений

1. определить, принадлежит ли точка с координатой х отрезку [a,b].

Это условие записывается двойным неравенством a

На паскале – (x>a) and (x

2. пройдет ли кирпич с ребрами x,y,z в отверстие a,b?

3. определить принадлежность точки к треугольнику ABC.

4. условие существования треугольника со сторонами a,b,c.

В этом параграфе дается определение массива, поясняется область приме­нения этой структуры, синтаксис паскаля для работы с массивом.

Рассмотрены также основные действия над одномерными массивами: вы­числение суммы элементов массива, нахождение наибольшего элемента мас­сива, сортировка массива, поиск элемента в массиве.

При решении задач данные объединяются в различные структуры, наиболее простая из них: массив – именованный набор с фиксированным количеством однотипных данных. В массивы объединяются результаты экспериментов, списки фамилий сотрудников, различные сложные структуры данных. В мас­сиве могут быть одинаковые данные, поэтому элементы массива различаются по своим порядковым номерам. Если каждый элемент массива имеет один порядковый номер, такой массив – одномерный, если два – это таблица из строк и столбцов. Для таблиц первый номер элемента показывает строку, второй – столбец, на пересечении которых находится элемент. Все строки таблицы имеют одинаковую длину.

При решении задач с использованием массива необходимо следовать алго­ритму:

1. определить, какие числа даны, целые или вещественные

2. назвать весь массив одним именем

3. описать массив в разделе описания переменных, отведя тем са­мым место в памяти компьютера под массив.

4. ввести данные в память.

Описание массивов в Pascal

Пример описания массива

Var a:array[1..n]of real;

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

Описание из примера означает, что для массива а отведено 10 ячеек по 6 байт каждая. Имена ячеек: в Паскале будут записаны: a[1],a[2],…,a[10].

Ввод и вывод данных массива осуществляется через цикл, например:

For i:=1 to n do read(a[i]);

Базовые задачи на массивы

Информация о работе «Разработка обучающей программы, поддерживающей изучение темы «Структуры данных»»

Раздел: Информатика, программирование
Количество знаков с пробелами: 37860
Количество таблиц: 11
Количество изображений: 5

3.2.3. Ввод данных с клавиатуры

Для ввода в оперативную память значений переменных используется оператор ввода read:

При выполнении оператора read компьютер переходит в режим ожидания данных: пользователь должен ввести данные с клавиатуры и нажать клавишу Enter 1 . Несколько значений переменных числовых типов могут вводиться через пробел или через запятую. При вводе символьных переменных пробел и запятая воспринимаются как символы, поэтому ставить их нельзя.

Первое введённое пользователем значение переменной помещается в ячейку памяти, имя которой расположено первым в списке ввода, и т. д. Поэтому типы вводимых значений (входного потока) должны соответствовать типам переменных, указанных в разделе описания переменных.

Присвоим переменным i, j, x, а значения 1, 0, 2,5 и ‘А’. Для этого воспользуемся оператором

и организуем входной поток одним из следующих способов:

Здесь мы не только использовали различные разделители (пробел, запятая), но и представляли входной поток в виде одной, двух и четырёх строк.

Для ввода данных с клавиатуры можно также использовать оператор readln . Отличие состоит в том, что после выполнения readln осуществляется автоматический переход на новую строку входного потока, даже если в текущей строке остались невведённые символы. Таким образом, readln позволяет считать лишь начальную часть введённой пользователем строки и, проигнорировав её окончание, перейти к следующей строке.

Усовершенствуем программу n_1 , организовав в ней ввод данных с помощью оператора read . А чтобы пользователь знал, для чего предназначена программа, и понимал, какое именно действие ожидает от него компьютер, выведем соответствующие текстовые сообщения с помощью оператора writeln :

Результат работы усовершенствованной программы;

Теперь наша программа может вычислить длину окружности и площадь круга для любого значения r. Иначе говоря, она решает не единичную задачу, а целый класс задач. Кроме того, в программе понятно и удобно организован ввод исходных данных и вывод получаемых результатов. Это обеспечивает дружественность пользовательского интерфейса.

Задание 4. Опишите переменные, необходимые для вычисления площади треугольника по трём его сторонам, и запишите оператор, обеспечивающий ввод необходимых данных.

Формула нахождения площади треугольника по трём его сторонам:

p – полупериметр треугольника (a+b+c)/2
a, b, c – стороны треугольника
S – площадь

Описание переменных:
var a, b, c: real;
Оператор ввода:
readln (a, b, c);

Программа на языке Паскаль:

Как записываются операторы ввода и вывода в паскале

Оператор ввода в программе Pascal записывается в виде слов read или readln, а оператор вывода записывается в виде слов write или writeln.

  • Написать правильный и достоверный ответ;
  • Отвечать подробно и ясно, чтобы ответ принес наибольшую пользу;
  • Писать грамотно, поскольку ответы без грамматических, орфографических и пунктуационных ошибок лучше воспринимаются.
  • Списывать или копировать что-либо. Высоко ценятся ваши личные, уникальные ответы;
  • Писать не по сути. «Я не знаю». «Думай сам». «Это же так просто» — подобные выражения не приносят пользы;
  • Писать ответ ПРОПИСНЫМИ БУКВАМИ;
  • Материться. Это невежливо и неэтично по отношению к другим пользователям.

Мореплаватель — имя существительное, употребляется в мужском роде. К нему может быть несколько синонимов.
1. Моряк. Старый моряк смотрел вдаль, думая о предстоящем опасном путешествии;
2. Аргонавт. На аргонавте были старые потертые штаны, а его рубашка пропиталась запахом моря и соли;
3. Мореход. Опытный мореход знал, что на этом месте погибло уже много кораблей, ведь под водой скрывались острые скалы;
4. Морской волк. Старый морской волк был рад, ведь ему предстояло отчалить в долгое плавание.

! Обратите внимание! Координаты в операторе LOCATE записываются не так, как обычно принято — икс, затем игрек, а наоборот. Помните это. Также стоит учесть, что, в отличие от математики, координата игрек направлена не вверх, а вниз. Также одной единицей измерения оператора LOACATE является одна позиция символа. То есть, игрек (первое число) показывает, на какой строке будет установлен курсор, а икс — на какой позиции. То есть, строка LOCATE 3, 10 будет означать, что новое положение курсора — десятая позиция на третьей строке.

&nbsp &nbsp &nbsp &nbsp &nbsp В паскале оператор GotoXY (X,Y:Byte); перемещает курсор в заданное место. Слово Byte означает, что значения исиа и игрека должны быть типа Byte. Здесь определение координат нармальное — сначала икс, а затем — игрек. Для этого оператора, также как и для оператора очистки экрана ClrScr, нужна библиотека Crt.

Вводим данные


2. Переменные и типы переменных

Переменными называют величины, значения которых могут изменяться в процессе выполнения программы. Каждая переменная задается своим уникальным именем, построенным по правилам, указанным в начале главы. Максимально возможная длина имени зависит от реализации Паскаля, теоретически можно давать переменным имена вплоть до 63 символов длиной, что едва ли актуально — обычно имена не длиннее 5-10 символов.

Поскольку любые данные в памяти компьютера хранятся в числовой форме и двоичной системе счисления, кроме имени, переменной обязательно следует присвоить и тип, определяющий диапазон значений, принимаемых переменной, и способ ее обработки машиной. Поясним сказанное на примере. Как видно из Приложения 1, большая латинская буква ‘ A ‘ имеет десятичный код 65, или 01000001 в двоичном представлении. Без дополнительной информации о типе данных, хранящихся в некоторой ячейке памяти, компьютеру было бы невозможно решить, что именно представляют из себя эти данные — число 65, код символа ‘ A ‘ или что-то еще. В любом языке программирования, в том числе и в Паскале, существует стандартный набор типов, к которым может быть отнесена та или иная совокупность ячеек памяти. Информацию о типах данных Паскаля удобно свести в таблицу. Строки этой таблицы будут упорядочены по старшинству типов, от самого «младшего», требующего наименьшее число байт для представления, и, соответственно, представляющего наименьший диапазон возможных значений, до самого «старшего», представляющего наибольший диапазон значений. В табл. 2.1 представлены не все возможные, а лишь основные типы данных Паскаля.

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector