МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів
Контакти
Тлумачний словник Авто Автоматизація Архітектура Астрономія Аудит Біологія Будівництво Бухгалтерія Винахідництво Виробництво Військова справа Генетика Географія Геологія Господарство Держава Дім Екологія Економетрика Економіка Електроніка Журналістика та ЗМІ Зв'язок Іноземні мови Інформатика Історія Комп'ютери Креслення Кулінарія Культура Лексикологія Література Логіка Маркетинг Математика Машинобудування Медицина Менеджмент Метали і Зварювання Механіка Мистецтво Музика Населення Освіта Охорона безпеки життя Охорона Праці Педагогіка Політика Право Програмування Промисловість Психологія Радіо Регилия Соціологія Спорт Стандартизація Технології Торгівля Туризм Фізика Фізіологія Філософія Фінанси Хімія Юриспунденкция |
|
|||||||
Основні операції для роботи з літерними величинами
Перейдемо до розгляду основних операцій, призначених для роботи з літерними величинами. Для роботи з літерними величинами у мові Паскаль передбачено наступні операції, процедури та функції : Length(st) – визначає довжину літерної величини st. Іншими слова, просто підраховує кількість символів в літерній величині. Цю ж інформацію можна отримати, зчитавши значення st[0], але будьте уважні, необхідно на друк виводити значення не st[0], a ord(st[0])! Copy(st, m, n) – виділяє з літерної величини stn символів, починаючи з символу під номером m. Дана функція використовується для копіювання. Concat(st1, st2) – об’єднує дві літерні величини. Дана функція виконує ту ж саму дію, що й операція ‘+’, введена вона для сумісності з більш ранніми версіями мови Паскаль. Val(st, m, kod) – перетворює літерну величину st в число m. Якщо kod<> 0, то введена літерна величина не є числом. Для кращого розуміння приведемо простеньку програму: program demo_val_str; var st : string; k, kod : integer; begin write('Введiть слово: ');readln(st); val(st, k, kod); if kod <> 0 then writeln(' Введене слово не є числом ') else writeln('Слово є числом ', k); readln end. Str(m, st) – перетворює число в літерну величину, тобто дана процедура є оберненою до val. Delete(st, m, n) – видалення деякої групи символів довжиною n починаючи з позиції m в літерній величині st. Insert(st2, st1, n) – вставити в літерну величину st1 літерну величину st2 починаючи з позиції n. Крім того, до літерних величин можна застосовувати операції порівняння, так само, як і до числових величин. З останнім розберемося дещо детальніше на прикладі конкретної задачі. Задача 188. Знайти, яке з двох введених слів більше. Розв’язання: Всі розглянуті раніше операції порівняння двох величин, які ми застосовували до числових змінних, можна застосовувати і до літерних величин. Тобто можна говорити, що одна величина дорівнює іншій, або величина А більша (менша) за величину В. Тут необхідно зробити відповідні роз’яснення. По–перше, зрозуміло, що «мама» = «мама», але тільки у тому випадку, коли всі літери в обох словах написані одними й тими ж символами, тобто літерами одного і того ж алфавіту. Якщо ж ми у першому слові літери «а» напишемо літерами англійського алфавіту, а у другому – на перший погляд ті ж самі літери «а» напишемо у російському (українському) алфавіті, то ці слова вже не будуть однаковими. Це пов’язано з тим, що, як ми вже вказували, тип string описано як масив типу char, а останній тип є впорядкованим і однакові на вигляд літери різних алфавітів не є однаковими, оскільки їм відповідають різні порядкові номери відповідних символів. По–друге, як бути у випадках, коли слова мають різну кількість літер («мама» – «мам»), або ж відрізняються одним символом («мама» – «Мама»)? У даному випадку (як і всіх інших) ПЕОМ діє наступним чином: порівнюються попарно відповідні літери двох слів і як тільки виявляється, що два чергові символи в слові відмінні, то більшим вважається те слово, у якого код даного символу більший. Все вищесказане демонструє наступна програма: program poriwn_stroki; var st1, st2 : string; i,s: integer; begin write('Введiть переше слово: ');readln(st1); write('Введiть друге слово: ');readln(st2); s := 0; for i := 1 to length(st1) do begin write(ord(st1[i]):3,' '); s := s + ord(st1[i]); end; writeln('s = ',s); s := 0; for i := 1 to length(st2) do begin write(ord(st2[i]):3,' '); s := s + ord(st2[i]); end; writeln('s = ',s); if st1 = st2 then writeln('Слова однаковi') else if st1 > st2 then writeln('Переше слово бiльше') else writeln('Друге слово бiльше'); readln; end.
Читайте також:
|
||||||||
|