Панель Авторизации/ регистрации
your Profile Complete Bar
Вы не авторизованы.
Вы не авторизованы.
| Урок 19 Символьные массивы |
|
Урок 19 Символьные массивы Цели урока: повторить понятия символьных переменных, правила их записи, основные сведения о массивах, особенности оператора DIM, познако- мить с некоторыми способами ввода элементов символьного массива, научить составлять программы с использованием символьных массивов. Ход урока I. Организационный момент. II. Актуализация опорных знаний. Ответить устно на следующие вопросы: 1) Какие операции над словами можно проводить в «Бейсике»? 2) Какова длина символьных строк в «Бейсике»? 3) Как в программах описываются символьные данные? 4) Как в программах описываются массивы? 5) Как считываются данные из операторов DATA? 6) Какие способы вы знаете для заполнения численных массивов? III. Объяснение нового материала. Кроме символьных величин, в «Бейсике» могут использоваться символьные массивы, элементами которых являются группы символов. Символьный массив отличается от числового только значением входящих в него элементов: числовой массив в качестве элементов имеет числовые выражения, символьный - строковые (символьные). Признаком символьного массива служит знак $ после имени массива. Примером одномерного массива символов служит список класса, где фамилия и имя ученика - элементы массива, а размер массива - число учеников в классе. Прежде чем использовать любой массив (в том числе и символьный), его нужно описать с помощью оператора DIM, который выполняет две основные функции: определяет число элементов и конкретизирует тип данных элементов массива. При выполнении оператора DIM в памяти компьютера резервируется пространство для элементов массива, и всем элементам строкового массива присваиваются пустые строки. Например: ВШЬ Ф; (5)6 ВШЬ И; (2б7)ю Ввод и вывод элементов символьного массива осуществляются аналогично вводу и выводу элементов числового массива. Рассмотрим некоторые способы ввода элементов символьного массива. 1) С использованием DATA, READ: DIM C$(6) DATA А, Б, В, Г, Д, Е FOR I=1 TO 6 READ A$ С$(1) =А$ NEXT I 2) С помощью ввода с клавиатуры: 10 INPUT А$ 20 N = LEN(A$) 30 DIM C$(N) 40 FOR I = 1 TO N 50 C$(I) = MID$(A$, I, I) 60 NEXT I 70 FOR I = 1 TO N 80 PRINT C$(I)" "; 90 NEXT I Рассмотрим сначала задачу на обработку текста для лучшего восприятия символьных массивов. Составьте программу для подсчета количества слов, начинающихся с буквы «К» в тексте, введенном с клавиатуры. (Замечание: при вводе текста следует использовать только заглавные русские буквы.) Решение: INPUT «ВВЕДИТЕ ТЕКСТ»; А$ FOR I = 1 ТО LEN (AS) IF MID$ (A$, I, 1) = " " THEN 50 ELSE 60 50 IF MID$ (AS, 1+1,1) = «K» THEN L = L + 1 60 NEXT I IF MID$ (AS, 1,1) = "K" THEN PRINT «Слов, начинающихся с К -» L + 1 ELSE PRINT «Слов, начинающихся с К -» L END Теперь такая же задача: подсчитать, сколько слов начинается с буквы «К» в символьном массиве, REM «СКОЛЬКО СЛОВ НАЧИНАЕТСЯ С БУКВЫ «К»» DIM A$ (5) FOR I = 1 ТО 5 READ A$ (I) IF MID$ (AS (I), 1, 1) = «К» THEN К = К + 1 NEXT I PRINT «Количество слов с буквы К -» К DATA КОТ, КОЗА, ЛИСА, КОРОВА, ВОРОНА END Разберем следующую задачу: фамилии участников олимпиады хранятся в одном массиве, а количество баллов - в другом. Составить программу, которая будет печатать фамилию победителя, если он набрал 100 баллов. REM «Печатаем фамилию победителя, набравшего 100 баллов». DIM AS (4), В (4) FOR I = 1 ТО 4 READ A$ (I) NEXT I FOR I = 1 TO 4 READ В (I) NEXT I DATA ИВАНОВ, ПЕТРОВ, СИДОРОВ, БОГДАНОВ DATA 23, 95, 100,90 FOR I = 1 TO 4 IF В (I) = 100 THEN PRINT «ПОБЕДИТЕЛЬ -» A$ (I) NEXT I END IV. Закрепление нового материала. Предложить учащимся составить программу для следующей задачи: Даны скорости самолетов (в м/сек);
Ввести данные в массивы, найти среднюю, максимальную и минимальную из скоростей. V. Домашнее задание: выучить конспект урока; составить программу для решения следующей задачи: даны значения скоростей, которые развивают птицы и животные (в км/час):
Поместив данные в два массива, найти среднюю, максимальную и минимальную скорость; путь, пройденный каждым животным за 12 часов. Результаты вывести на экран. |