КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Операции со строками
СТРОКИ Записи Примеры решения задач обработки строковых данных (повторить самостоятельно, см. также 7.2.1.3 и 7.2.1.4) Строки (повторить самостоятельно, см. также 7.2.1.3 и 7.2.1.4) Мышь, джойстик, плоттер, сканер, дигитайзер, sound blaster. Устройства ввода-вывода ПЭВМ Поколения ЭВМ определяются их элементной базой. 1 поколение: первые машины серии IBM/360, у нас - МЭСМ[1], БЭСМ, Стрела, Урал, М-20. 2 поколение: ЭВМ американской фирмы NCR (1957 г.), М-222, "Наири" и т.д. 3 поколение: IBM/360, IBM-370, ЕС ЭВМ (Единая система ЭВМ), СМ ЭВМ (Семейство малых ЭВМ) и др.). 4 поколение – это ВТ, разработанная после 1970 года, в т.ч. современные ПЭВМ. Для него характерны: - применение персональных компьютеров; - телекоммуникационная обработка данных; - компьютерные сети; - широкое применение систем управления базами данных; - элементы интеллектуального поведения систем обработки данных и устройств. 5 поколение? – это интеллектуальные ЭВМ, обладающих мульти- и гипермедиа вводом-выводом, подключенные к Internet, даже без видимых каналов. 10.2 Состав ЭВМ Классификация моделей IBM PC по установленному процессору.
MIPS - Million Instruction Per Second. Клавиатура Монитор
Важно соответствие монитора стандартам безопасности. Самые мягкие допустимые требования обеспечивает стандарт MPR II, жесткие – TCO’03. 10.4. Периферийные устройства ПЭВМ Принтеры: матричные струйные лазерные
Внешняя память компьютера:
[1] 1951 г. В Киеве построен первый в континентальной Европе компьютер МЭСМ (малая электронная счетная машина), имеющий 600 электронных ламп. Создатель С.А. Лебедев. В 1952 г. Под руководством С.А. Лебедева в Москве построен компьютер БЭСМ-1 (большая электронная счетная машина) — на то время самая производительная машина в Европе и одна из лучших в мире. 9.4. Примеры использования данных типа «запись»
Тип данных STRING (строка) предназначен для обработки строк (цепочек символов). Обработка строковых данных - необходимый элемент программ, работающих с текстами: - Программы лингвистического анализа текстов; - Текстовые редакторы; - Программы, работающие в диалоговом (интерактивном) режиме; - Программы, содержащие текстовые пояснения результатов своей работы. Строка – последовательность символов (от 0 до 255), заключенная в апострофы. При составлении программ используются строковые константы и строковые переменные.
Строковые константы – элементы данных, значения которых известны заранее, описаны в разделе описания констант и в ходе выполнения программы не изменяются. Формат описания строковых констант CONST <идентификатор> = <значение>; CONST ZAG = `Результат расчета`; VAR1 = ` Вариант №1 `; VAR2 = ` Вариант № 2`; KNIGA = `Турбо-Паскаль 7.0`; Строковые переменные – элементы данных, которые по ходу выполнения программы могут изменять значение и количество символов в пределах от 0 до числа, равного заданной программистом максимальной длины строковой переменной. Определить строковую переменную можно двумя способами: 1. Определение через описание типа в разделе описания типов. Формат TYPE <имя типа> = STRING [максимальная длина строки]; VAR <идентификатор1, идентификатор2,…>: <имя типа>; где - STRING – зарезервированное слово; - максимальная длина строки – наибольшее допустимое количество символов переменной данного типа (≤ 255). TYPE FLO = STRING [130]; FTK = STRING; {По умолчанию длина строки равна 255} VAR ST1: FLO; ST2, ST3: FTK; 2. Определение непосредственно в разделе описания переменных: Формат VAR ST4, ST5: STRING [60]; ST6,ST7: STRING; Выражения, в которых операндами служат данные строкового типа - строковые выражения. Строковые выражения могут состоять из: - строковых констант; - строковых переменных; - знаков операций; - указателей процедур; - указателей функций. Над строковыми данными допустимо выполнять операции сцепления и операции отношения. Операции сцепления (+) применяются для сцепления нескольких строк в одну результирующую строку, длина которой не должна превышать 250 символов. Например, выражение `Процессор ` + ` Intel ` + ` Celeron ` + ` 1.7/20 GHz` дает результат `Процессор Intel Celeron 1.7/20 GHz`, а выполнение операторов STR1:= `Группа студентов `; STR2:= `Н - 109`; STR3:= STR1+STR2; дает строку `Группа студентов Н - 109`. Такой же результат можно получить и так STR3:= STR1+`Н – 109` Операции отношения (=, <>, <, >, >=, <=) проводят сравнение двух строковых операндов и имеют приоритете более низкий, чем операции сцепления. Сравнение строк производится слева направо до первого несовпадающего символа, и та строка считается больше, в которой первый несовпадающий символ имеет больший номер в стандартной таблице обмена информацией (ASCII - коды).
Результат выполнения операций отношения над строковыми данными всегда имеет булевский тип (Boolean), и равен: - TRUE, если выражение истинно; - FALSE, если выражение ложно. Например, Выражение Результат `COM1` < `KOM2` TRUE `DOS1.0` > `DOC1.0` TRUE `АККОРД` < `AKKORD` FALSE Строки считаются равными, если они равны по длине и содержат одни и те же символы. Если строки имеют различную длину, но в общей части символы полностью совпадают, считается, что более короткая строка меньше. Для присваивания строковой переменной результата строкового выражения используется оператор присваивания (:=). STR10:= `Название факультета`; STR11:= STR10 + `ФЭМФ`; Если значение переменной после выполнения оператора присваивания превышает по длине максимально допустимую величину, указанную при описании этой переменной, то все лишние символы справа отбрасываются. Описание Строковое выражение Получаемое значение переменной А переменной А A: STRING [14]; A:= `Группа ФК-418`; `Группа ФК-418` A: STRING [9]; A:= `Группа ФК-418`; `Группа ФК` A: STRING [6]; A:= `Группа ФК-418`; `Группа` В одно выражение допускается включать операнды строкового и символьного (CHAR) типа. Если при этом символьной переменной присваивается значение строкового типа, фактическая длина строки должна быть равна единице, иначе возникает ошибка выполнения. VAR LITERA: CHAR; ST1, ST2: STRING [12]; BEGIN LITERA:= `A`; ST1:= ‘КЛАСС ’; ST2:= ST1 + LITERA; {Дает результат «КЛАСС А»} ST1:= ‘B’; LITERA:= ST1; ST2:= ‘B2’; LITERA:= ST2; {Ошибка, т.к. литерной переменной нельзя присваивать значения длиной более одного символа} К отдельным символам строки можно обращаться по номеру (индексу) данного символа в строке. Индекс определяется выражением целочисленного типа, которое записывается в квадратных скобках. Например, после выполнения присваивания STR5:= ‘Специальность Н-109’; выражение STR5[1] дает обращение к первому символу, а выражение STR5[15] + STR5[16] дает значение «Н». Запись STR5[0] дает доступ к нулевому байту, содержащему значение текущей длины строки. Это значение не должно превышать число 255.
При вводе и обработке строковых данных кроме непосредственного указания входящих в эти строки символов для обозначения символов можно использовать соответствующие им ASCII коды. В этом случае перед числом, обозначающим код ASCII символа, необходимо поставить знак #. Таким образом, можно в качестве элементов строк задавать и символы, не обозначенные на клавиатуре. VAR ST1: STRING [32]; BEGIN ST1:= ‘TEKST’ + ‘ ‘ + #3; Переменной ST1 будет присвоено значение ‘TEKST ♥’ Процедуры для обработки строк DELETE (ST, POZ, N) – удаление N символов строки ST, начиная с позиции POZ. Например, для значения ST ’ АБВГДЕ’ выражение DELETE (ST, 4,2) дает результат ‘АБВЕ’. INSERT (ST1, ST2, POZ) – вставка строки ST1 в строку ST2 начиная с позиции POZ. Например, VAR ST1, ST2, ST3: STRING; BEGIN ST2:= ‘Компьютер 2.0 GHz’; ST1:= ‘Celeron’; ST3:= INSERT (ST1, ST2, 11); В результате получается строка ST3, равная ‘Компьютер Celeron 2.0 GHz’ STR (IBR, ST) – преобразование числового типа (integer, byte, real) значения величины IBR и помещение результата в строку ST. После имени переменной IBR может быть указан формат вывода. Например, при значении переменной IBR, равном 2680, выражение STR (IBR:7, ST) дает результат ‘ 2680’. VAL (ST, IBR, COD) – преобразование значения ST в величину типа integer, byte, real и помещение результата в IBR. Значение ST не должно содержать не значащих пробелов в начале и конце. COD - целочисленная переменная. Если при выполнении операции преобразования ошибки не обнаружено, COD = 0. Если обнаружена ошибка, то COD будет содержать номер позиции первого ошибочного символа в ST, значение IBR будет неопределенно.
Например, при ST равном ‘1526’ выражение VAL (ST,IBR,COD) дает результат 1526, COD=0.
Дата добавления: 2014-01-04; Просмотров: 338; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |