Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015
Свидетельство о публикации

Автоматическая выдача свидетельства о публикации в официальном СМИ сразу после добавления материала на сайт - Бесплатно

Добавить свой материал

За каждый опубликованный материал Вы получите бесплатное свидетельство о публикации от проекта «Инфоурок»

(Свидетельство о регистрации СМИ: Эл №ФС77-60625 от 20.01.2015)

Инфоурок / Информатика / Другие методич. материалы / Пример использования звуковых процедур в среде программирования ТП
ВНИМАНИЮ ВСЕХ УЧИТЕЛЕЙ: согласно Федеральному закону № 313-ФЗ все педагоги должны пройти обучение навыкам оказания первой помощи.

Дистанционный курс "Оказание первой помощи детям и взрослым" от проекта "Инфоурок" даёт Вам возможность привести свои знания в соответствие с требованиями закона и получить удостоверение о повышении квалификации установленного образца (180 часов). Начало обучения новой группы: 28 июня.

Подать заявку на курс
  • Информатика

Пример использования звуковых процедур в среде программирования ТП

библиотека
материалов

hello_html_1cf94099.gifhello_html_d6d968c.gifhello_html_d6d968c.gifМассивы

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

Массив (ARRAY) объединяет элементы одного типа данных. Индексная переменная, служащая для указания отдельного элемента массива, должна быть простого типа (например, типа Integer). Массивы бывает двух видов:

  1. Одномерные.

Массив называется одномерным, если для получения доступа к его элементам достаточно одной индексной переменной. Например, описание типа линейного массива выглядит так:
VAR A (имя массива): ARRAY [0(начальный индекс)..5 (конечный индекс)] Of integer (тип данных);

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

S, BB : Array [1..40] Of Real;
N :
Array ['A'..'Z'] Of Integer;
R :
Array [-20..20] Of Word;
T :
Array [1..40] Of Real;

Теперь переменные S, BB и T представляют собой массивы из сорока вещественных чисел; массив N имеет индексы символьного типа и целочисленные элементы; массив R может хранить в себе 41 число типа Word.

Единственным действием, которое возможно произвести с массивом целиком - присваивание. Для данного примера описания впоследствии допустима следующая запись:
S:=BB;

Однако, присваивать можно только массивы одинаковых типов. Даже массиву T присвоить массив S нельзя, хотя, казалось бы, их описания совпадают, произведены они в различных записях раздела описания.

Никаких других операций с массивами целиком произвести невозможно, но с элементами массивов можно работать точно так же, как с простыми переменными соответствующего типа. Обращение к отдельному элементу массива производится при помощи указания имени всего массива и в квадратных скобках - индекса конкретного элемента. Например:
R[10] - элемент массива R с индексом 10.

Фундаментальное отличие компонента массива от простой переменной состоит в том, что для элемента массива в квадратных скобках может стоять не только непосредственное значение индекса, но и выражение, приводящее к значению индексного типа. Таким образом, реализуется косвенная адресация:
BB[15] - прямая адресация;
BB[K] - косвенная адресация через переменную K, значение которой будет использовано в качестве индекса элемента массива BB.

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

Если вы помните, с такой формой организации данных мы встречались, когда изучали строковые переменные. Действительно, переменные типа String очень близки по своим свойствам массивам типа Char. Отличия в следующем: строковые переменные можно было вводить с клавиатуры и распечатывать на экране (с обычным массивом это не проходит); длина строковой переменной была ограничена 255 символами (255 B), а для размера массива критическим объемом информации является 64 KB.


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

  1. Двумерные.

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

VAR А (имя массива): ARRAY [0..30,0..18] OF char (тип данных);

Обработка одномерного и двумерного массивов ведется при помощи циклического оператора FORTODO.


Создание простейших мелодий на языке программирования TURBO PASCAL


Один из способов применения одномерных массивов – создание простейших мелодий. Приведем пример программы одной самой широко известной детской мелодии

«КУЗНЕЧИК»:



PROGRAM Music;

USES crt;

CONST freed:ARRAY[0..87] OF word=(440,262,440,262,440,392,392,0,392,262,392,

262,392,440,440,0,440,262,440,262,440,392,392,0,392,262,392,262,392,440,440,0,0,440,524,3,524,524,524,0, 0,524,648,3,648,648,648,0,0, 648,0,524,524,0,440, 0,392,0,440,440,0,0,440,524,3,524,524,524,0,0,524,648,5,648,648,648,0,0,648,0,524,524,0,440,0,392,0,440);

VAR I:byte;

BEGIN

Textbackground(14);

Textcolor(2);

Clrscr;

Gotoxy(37,9);

Write(‘МЕЛОДИЯ - КУЗНЕЧИК’);

FOR I:=0 TO 33 DO

BEGIN

Sound (freed[ I ]);

Delay(17000);

Nosound;

END;

FOR I:=34 TO 87 DO

BEGIN

Sound (freed[ I ]);

Delay(11000);

Nosound;

END;

END.



ПРИМЕЧАНИЕ:

CONST – Постоянная переменная

WORD – Тип данных, длиной в слово

TEXTBACKGROUND – Фон (заливка экрана заданным цветом)

TEXTCOLOR – Цвет символов

CLRSCR – Очистка экрана

GOTOXY – Положение курсора

SOUND – Включить звук

NOSOUND – Выключение звука

DELAY – Задержка дальнейшего выполнения программы

440,262… – Ноты


hello_html_4950c99c.gif

Ноты:


262 – до

294 – ре

330 – ми

349 – фа

392 – соль

440 – ля

494 – си

524 – до




Подайте заявку сейчас на любой интересующий Вас курс переподготовки, чтобы получить диплом со скидкой 50% уже осенью 2017 года.


Выберите специальность, которую Вы хотите получить:

Обучение проходит дистанционно на сайте проекта "Инфоурок".
По итогам обучения слушателям выдаются печатные дипломы установленного образца.

ПЕРЕЙТИ В КАТАЛОГ КУРСОВ

Краткое описание документа:

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

Автор
Дата добавления 11.02.2015
Раздел Информатика
Подраздел Другие методич. материалы
Просмотров303
Номер материала 380702
Получить свидетельство о публикации
Похожие материалы

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