Сравнение символов в паскале

Сравнение символов в паскале

Primary tabs

Forums:

В этом уроке мы продолжим изучать типы данных в Pascal.

Мы уже рассмотрели следующие типы данных:

  • integer — целые числа.
  • real — вещественные числа.
  • boolean — логические значение true/false ("истина"/"ложь", "да"/"нет").
  • char — символы. Изучим в этом уроке.

Символьные переменные

Переменные типа char объявляются как и переменные другого типа:

Символьные литералы

Ранее мы уже говорили о символьных литералах (и литералах нескольких других типов), в коде программы символьные литералы представлены одинарными символами взятыми в кавычки.

Значения литералов можно записывать в переменные:

Выражения с участием данных типа char

Сравнение символов

Данные типа char, как и остальные простые типы в Паскаль, могут сравниваться с данными того же типа, результат при таком сравнении данных имеет тип boolean. Также напомним, что выражение, результат которого является логическим типом (boolean), само называют логическим.

Примеры сравнения символов рассмотрим ниже.

Разбор задач

Пример №1

Объявите переменную символьного типа, сравните её с произвольным символьным литералом и выведите полученное в ходе сравнения значения на экран.

Пример №2

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

Пример №3

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

Пример №4

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

В этой задаче требуется провести сразу два сравнения, "потребовав" одновременности их выполнения, за одновременность отвечает логическая операция AND, используем её:

Видео-пояснения

Для данного урока следующие видео:

Самостоятельная работа

Вопросы

Задачи

  1. Объявите три переменные типа char, присвойте им значения и выведите эти значения на экран:
    • одним вызовов write (все три) — т.е. передав несколько аргументов.
    • отдельно вызывая writeln для вывод значения каждой переменной
    • Получите от пользователя значения переменной, сравните его со значением символа пятёрки $5$ и выведите результат сравнения на экран.
    • Получите от пользователя значения двух символьных переменных, сравните значение каждой с символьным литералом (используйте два разных) и выведите два результата сравнения на экран — 1) сравнение первой переменной с первым литералом и 2) сравнения второй переменной со вторым литералом.
    • Получите от пользователя значения три символьных значения, выясните — равны ли все они друг другу и уведомьте о результатах сравнения пользователя, выведя итог в консоль.
      Подсказка: для получения итогового результата нескольких сравнений используйте одну из логических операций.
    • Получите от пользователя значения четырёх символьных значения, выясните — выполняется ли следующее условие:

    """первая переменная равна третьей, не равна второй или третья равна четвертой"""

    Составьте по указанному условию логическое выражение и выведите его результат на экран.

    Читайте также:  Что такое eml файл

    Итак, продолжаем наши уроки Паскаль для начинающих. В прошлом уроке мы разобрали строковый тип данных, но там мы упомянули про символы, поэтому прежде чем глубоко изучать тип данных String, мы узнаем о типе Char. Символьный тип данных Char — тип данных, значениями которого являются одиночные символы. Данный тип может содержать всего один любой символ (Например: «*», «/», «.», «!» и другие). Каждый такой символ занимает 8 бит памяти, всего существует 256 восьмибитовых символов. Все символы, используемые символьным типом Char записаны в таблице символов ASCII (American Standart Code for Information Interchange) или Американский стандарт кода для обмена информацией.

    Символьные константы заключаются в апострофы, например ‘.’, ‘*’, ‘7’, ‘s’. Также символьную константу можно записать с помощью символа — «решетки», например #185 — выведет символ под номером 185 из таблицы ASCII (это символ ‘№’).

    К символьному типу применимы 5 функций: Ord, Chr, Pred, Succ и Upcase.

    Функция Ord преобразовывает символ в её числовой код из таблицы ASCII. Например для символа ‘№’ она возвратит значение 185. Функция Chr обратна функции Ord. Функция Chr преобразует числовой код символа в сам символ, например, если взять числовой код 64, то функция Chr (64) возвратит символ ‘@’.

    Пример программы на Паскаль с использованием функции Ord:

    Пример программы на Паскаль с использованием функции Chr:

    Функция Pred возвращает значение предыдущего символа из таблицы ASCII, например для символа ‘P’ (Pred (P)) эта функция возвратит символ ‘O’. Функция Succ обратная функции Pred. Для символа ‘P’ функция Succ (P) возвратит символ ‘Q’, то есть следующий символ из вышеописанной таблицы ASCII.

    Пример программы на Паскаль с использованием функций Pred и Succ:

    Читайте также:  Сколько стоит смс на 900 мегафон

    Функция UpCase применима только для строчных букв английского алфавита. Данная функция преобразует строчные английские буквы в заглавные.

    Пример программы на Паскаль с использованием функции UpCase:

    P.S. В данном уроке описаны исключительно функции, применимые к символьному типу, про отличие функций от процедур можно узнать в Уроке №7 — Подпрограммы.

    Приложение к уроку — таблицы символов ASCII:

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

    Строки в Паскале – это данные типа string. Они используются для хранения последовательностей символов. В Паскале длина стандартной строки ограничена 255 символами. Под каждый символ отводится по одному байту, в котором хранится код символа. Кроме того, каждая строка содержит еще дополнительный байт, в котором хранится длина строки.

    Если заранее известно, что длина строки будет меньше 255 символов, то программист может сам задать максимальную длину строки.

    Примеры описания строк:

    Длина строки хранится в первом ее байте, индекс которого равен 0.
    Объявление типизированной константы для типа string осуществляется так:

    Существует понятие пустой строки, т.е. строки, которая не имеет элементов. Пустая строка обозначается двумя рядом стоящими апострофами (например, st = "color : #339 933 ; "> : = / span> = "color : #ff0000 ; "> » / span> ).

    Операции над строками

    Строки можно присваивать друг другу. Если максимальная длина переменной слева меньше длины присваиваемой строки, то лишние символы справа отбрасываются.

    Строки можно объединять с помощью операции конкатенации, которая обозначается знаком +.

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

    Читайте также:  Как стирать хозяйственным мылом в стиральной машине

    Имя строки может использоваться в процедурах ввода-вывода. При вводе в строку считывается из входного потока количество символов, равное длине строки или меньшее, если символ перевода строки (который вводится нажатием клавиши Enter) встретится раньше. При выводе под строку отводится количество позиций, равное ее фактической длине.

    К отдельному символу строки можно обращаться как к элементу массива символов, например s1 = "color : #009 900 ; "> [ / span> = "color : #cc66cc ; "> 3 / span> = "color : #009 900 ; "> ] / span> . Символ строки совместим с типом char, их можно использовать в выражениях одновременно, например:

    Можно осуществлять коррекцию любого символа строковой переменной, для чего в соответствующем операторе достаточно указать имя переменной типа string, вслед за которым в квадратных скобках задается номер ее элемента (например, str [ 3 ] : = ‘j’ ).

    Элементы строки нумеруются с единицы, т.к. в каждой строковой переменной имеется элемент с номером 0, в котором в виде символа хранится длина текущей строки. Чтобы узнать текущую длину, достаточно применить функцию ord к нулевому элементу строки. Например:

    Нулевой элемент строковой переменной можно корректировать. При этом будет изменяться текущая длина строки. Например, выражение str [ 0 ] : = #50 устанавливает текущую длину равной 50.

    Ссылка на основную публикацию
    Спутник вылетел за пределы солнечной системы
    «Во́яджер» (англ. voyager , от фр. voyageur — «путешественник») — название двух американских космических аппаратов, запущенных в 1977 году, а...
    Снять пароль с роутера tp link
    Домашняя беспроводная сеть Wi-Fi должна быть защищена паролем. Но ведь бывают разные случаи, скажете вы. Например, вы хотите пригласить друзей...
    Снять пароль с макроса excel
    Здравствуйте, друзья! Последние дни бился над такой задачей: Имеется файл .xls, в нем макрос на VBA, защищенный паролем. Файл создается...
    Спутниковые системы связи курсовая работа
    В данной курсовой работе рассмотрены история, особенности и перспективы развития спутниковой сети связи. Новейшие технологии спутниковой связи предлагают действенные технико-...
    Adblock detector