storinka.click » Інформатика » Табличные величины
Інформація про новину
  • Переглядів: 1288
  • Дата: 22-02-2018, 05:55
22-02-2018, 05:55

Табличные величины

Категорія: Інформатика


1. Что определяет тип переменной? Какие типы переменных вы знаете?

2. Где встречаются упорядоченные наборы данных? В чем удобство их использования?

3. Как выглядит и как выполняется команда цикла со счетчиком в языке программирования Object Pascal?

ПОНЯТИЕ ТАБЛИЧНОЙ ВЕЛИЧИНЫ

В 8-м классе вы рассматривали задачи, в которых использовалось небольшое количество переменных. Но существует много задач, в которых нужно обрабатывать значения достаточно большого количества переменных одного и того же типа.

Например, если необходимо составить программу для вычисления средней массы ста учеников 9-х классов, то очевидно нужно использовать 100 переменных типа real, значением каждой из которых будет масса соответствующего девятиклассника из данных ста учеников 9-х классов, найти сумму значений этих переменных и разделить ее на 100.

Если использовать 100 переменных типа real с произвольными именами, например a, b, c,z, aa, ab, ac,..., az, ba, bb, bc,bz, ca, cb, cc, ..., cv, то команда нахождения суммы их значений будет содержать в правой своей части 100 слагаемых или нужно включить в текст программы следующие 100 команд:

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

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

Упорядоченный набор переменных одного типа называется табличной величиной, или одномерным массивом.

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

Имя элемента табличной величины состоит из имени этой табличной величины и порядкового номера этого элемента в табличной величине, взятого в квадратные скобки.

Так, для вышеприведенного примера целесообразно рассматривать табличную величину, состоящую из 100 элементов. Если имя этой табличной величины a, то имена переменных — элементов этой табличной величины — будут следующие: a[1], a[2], a[3], ..., a[100]. Каждая из этих переменных будет иметь тип real.

Тогда, чтобы найти сумму значений всех этих 100 переменных, достаточно записать следующие команды:

Выполнение этого фрагмента программы будет происходить так:


Загрузка...

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

В строке var переменная а типа табличная величина записывается так: var a: array [1..100] of real (англ. array — массив).

В квадратных скобках указывается диапазон номеров элементов табличной величины: от 1 до 100. После этого указывается тип элементов табличной величины. По этой записи компилятор выделяет в памяти компьютера 100 участков под каждую из 100 переменных — элементов табличной величины. Размер каждого участка зависит от типа элементов табличной величины.

Обращаем ваше внимание:

• иногда удобно нумеровать элементы табличной величины, начиная не с 1. Так, в некоторых задачах (несколько из них рассмотрим ниже) удобно нумеровать элементы табличной величины, начиная с 0, например a: array [0..12] of real, а в задаче, где рассматривается ежегодная численность населения Украины в период с 1991 по 2017 год, удобно использовать табличную величину a: array [1991..2017] of integer;

• номер элемента табличной величины можно задать как целым числом, так и значением выражения, которое принимает целые значения, например a[2 * i — 5], где i — переменная типа integer.

ВВОД И ВЫВОД ЗНАЧЕНИЙ ЭЛЕМЕНТОВ ТАБЛИЧНОЙ ВЕЛИЧИНЫ

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

которое можно разместить на форме так же, как и другие компоненты (рис. 6.1).

Многие свойства этого компонента вам уже известны: Name, Color, Font, Enabled, Visible, Height, Width, Top, Left и др.

Рассмотрим еще несколько свойств многострочного текстового поля:

• ScrollBars (англ. scroll — прокручивание, bars — прямоугольные полосы) — значение этого свойства определяет наличие или отсутствие на этом компоненте полос прокрутки (горизонтальной, вертикальной, обеих) для просмотра текста, если он выходит за границы компонента;

• ReadOnly (англ. read — читать, only — только) — значение этого свойства определяет возможность или невозможность редактирования содержимого компонента: False — можно редактировать, True — нельзя (только для чтения);

• Lines (англ. lines — линии, строки) — значением этого свойства является набор значений (текстов), расположенных в строках этого компонента; каждая строка многострочного текстового поля имеет номер, нумерация которых начинается с 0;

• Lines.Count (англ. count — подсчет) — значение этого свойства равно количеству заполненных данными строк компонента; отметит, что это свойство отсутствует в списке свойств на вкладке Свойства окна Инспектор объектов.

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

Задача 1. Ввести значения элементов табличной величины из 10 чисел, которые находятся в строках многострочного текстового поля, возвести эти числа в квадрат и вывести их в другое многострочное текстовое поле.


 

Разместим на форме два многострочных текстовых поля с именами Memol и Memo2 и установим для них значения свойств Height = 180, ScrollBars = = ssVertical. Разместим на форме также кнопку, установим для нее Caption = = 'В квадрат и создадим обработчик события Click для кнопки.

Ниже представлен текст соответствующей процедуры и окно с результатом выполнения проекта (рис. 6.2). В тексте процедуры использованы два стандартных метода для многострочного текстового поля: Clear (англ. clear — очищать) — очищает все строки этого компонента и Lines.Append (англ. append — добавлять) — добавляет в многострочное текстовое поле новую строку и выводит в нее значение параметра, указанного в скобках.

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

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

В приведенной процедуре использована табличная величина, элементы которой имеют номера от 0 до 9. Это сделано с учетом того, что номера строк многострочного текстового поля начинаются с 0. То есть первая по порядку строка многострочного текстового поля имеет номер не 1, как мы привыкли, а 0.

Можно было бы рассматривать табличную величину, элементы которой имеют номера от 1 до 10. В этом случае процедура будет выглядеть так:

Если закрыть окно выполнения проекта и потом еще раз запустить проект на выполнение, то необходимо будет опять вводить числа в строки первого многострочного текстового поля. Но можно предварительно ввести числа в многострочное текстовое поле до запуска проекта на выполнение. Для этого следует:

1. Выбрать многострочное текстовое поле.

2. Выбрать кнопку

в конце строки Lines окна Инспектор объектов

(рис. 6.3).

3. В окне Диалог ввода строк удалить текст первой строки и ввести 10 чисел.

4. Выбрать кнопку ОК.

Тогда при сохранении проекта эти значения также сохранятся и автоматически появятся в многострочном текстовом поле после запуска проекта на выполнение.


Загрузка...

Внимание! При работе с компьютером соблюдайте правила безопасности и санитарно-гигиенические нормы.

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

1. Откройте окно среды Lazarus.

2. Разместите на форме два многострочных текстовых поля высотой 200 пикселей и кнопку с текстом Изменить.

3. Сохраните проект в папке с именем Упражнение 6.1, созданной в вашей папке.

4. Создайте обработчик события Click для кнопки и введите в него следующий текст:

5. Сохраните обновленную версию проекта.

6. Запустите проект на выполнение.

7. Очистите первое многострочное текстовое поле и введите в него числа: -6; 12; -13; 0; 4; 138; -34; 55.

8. Выберите кнопку Изменить.

9. Проанализируйте значения, выведенные во второе многострочное текстовое поле.

10. Измените несколько чисел в первом многострочном текстовом поле.

11. Выберите кнопку Изменить.

12. Проанализируйте значения, выведенные во второе многострочное текстовое поле.

13. Закройте окно выполнения проекта.

14. Закройте окно среды Lazarus.

Упорядоченный набор переменных одного типа называется табличной величиной, или одномерным массивом.

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

Имя элемента табличной величины состоит из имени этой табличной величины и порядкового номера этого элемента в табличной величине, который взят в квадратные скобки.

Если рассматривать табличную величину из 100 элементов действительного типа, то в строке var соответствующая переменная а такого типа

записывается так: var a: array [1..100] of real. Имена элементов этой табличной величины: а[1], а[2], а[3], а[100]. Каждая из этих переменных

будет иметь тип real.

Дайте ответы на вопросы

1°. Что такое табличная величина?

2°. Из чего состоит имя элемента табличной величины?

3*. Как описать переменную типа табличная величина в строке var?

4*. Что может использоваться как номер элемента табличной величины?

5°. Каким может быть диапазон номеров элементов табличной величины?

6*. Какие свойства многострочного текстового поля вы знаете? Что определяют значения каждого из них?

7*. Как ввести числа в многострочное текстовое поле до запуска проекта?

8°. Как ввести значения элементов табличной величины из многострочного текстового поля?

9°. Как вывести значения элементов табличной величины в многострочное текстовое поле?

10*. Какие преимущества имеет использование табличных величин по сравнению с использованием отдельных переменных?

Выполните задания

1°. Запишите выполнение приведенного фрагмента для табличной величины, значениями элементов которой являются числа: 2; -2; 3; 0,25; -4.

2°. Запишите выполнение приведенного фрагмента программы для табличной величины, значениями элементов которой являются числа: 0,5; -3; 2; -1,6.

3°. Запишите фрагмент программы, которая вводит значения в табличную величину из 8 действительных чисел, содержащихся в строках многострочного текстового поля.

4°. Запишите фрагмент программы, которая выводит значения элементов табличной величины из 11 чисел в строки многострочного текстового поля.

5*. Создайте проект, в котором вводятся значения элементов табличной величины из 8 целых чисел, каждое из этих чисел увеличивается на 17 и результаты выводятся в другое многострочное текстовое поле. Сохраните проект в папке с именем Задание 6.1.6, созданной в вашей папке.

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

стовое поле. Сохраните проект в папке с именем Задание 6.1.7, созданной в ва0ей папке.

7*. Создайте проект, в котором значения элементов табличной величины из 12 элементов определяются по правилу 3 * i - 2, где i — порядковый номер элемента этой табличной величины. Значения элементов табличной величины выведите в многострочное текстовое поле. Сохраните проект в папке с именем Задание 6.1.8, созданной в ва0ей папке.

 

Это материал учебника Информатика 9 класс Ривкинд