char в паскале что это

типа как букварик.
У Копма есть свой букварь из 256 символов, и каждый имеет свой номер. и чтобы узнать например номер буквы «п» нужно ввести команду ord(‘п’);

также тит можно переводить символ в код ascii и на оборот
оператор ord переводит символ в код ascii
а оператор chr на оборот
например
u:=ord(a);
a:=chr(u);

Содержание

  1. Тип char (символьный) в паскале
  2. Тип Char :
  3. Функция ord :
  4. Функция chr :
  5. Особенность типа char :
  6. Функция pred :
  7. Функция succ :
  8. На заметку :
  9. Символьный тип char в Паскале
  10. Основные функции для работы с символами
  11. Строковые переменные в Паскаль
  12. Функции работы со строками в Pascal
  13. Посимвольный ввод до пробела

Тип char (символьный) в паскале

    Browse: Home / Самоучитель паскаль онлайн / Тип char (символьный) в паскале

Символьный тип char похож на строковой тип string , однако он имеет множество интересных функций , предназначенных для работы с ним. О типе boolean можно узнать здесь
Поэтому типу char выделена целая статья в нашем самоучителе.

Тип Char :

Как уже было сказано , тип char почти не отличается от типа string. Однако , в отличии от string , он хранит в себе всего один символ , а не целую строку. Сравнение переменной типа char и типа string :

В переменной типа char можно хранить любой символ кода ASCII.

Функция ord :

Мы знаем , что любой символ можно представить в виде кода. Функция ord возвращает тот самый код символа. Как использовать функцию ord :

В результате выполнения данной программы мы получим код введенного символа.

Например вы ввели символ «А» , тогда на выходе программы мы получим число 65 , которое соответствует коду символа «А».

Функция chr :

Если мы можем взять код из символа , значит и можем сделать символ из кода. Данной операцией занимается команда chr. Она возвращает символ из кода. Пример работы данной функции можно рассмотреть ниже.

В результате выполнения данной программы мы выведем число 65 (код символа А) , а потом выведем сам символ А.

Особенность типа char :

Особенностью данного типа является то , что он порядковый. То есть символ C идет после символа B и т.д. В таком случае их можно сравнивать.

В результате мы получим сообщение «True» , так как символ B больше символа A.
Запомните : строчной символ больше прописного ( заглавного ).

Функция pred :

Данная функция возвращает предшествующий символ. Например функция

возвращает символ a.

Функция succ :

Эта функция работает в аналогии с функцией pred. Однако функция succ возвращает следующий символ , а не предшествующий. Функция

возвращает символ b.

На заметку :

Интересной особенностью кодов символов является то , что коды строчных и прописных символов отличаются друг от друга на 32. Проще говоря символ «А» имеет код 65 , а символ «а» имеет код 97 и так в аналогии с каждым символом.

Рассмотрим такую задачу : Человек вводит строчной символ ,а нам нужно вывести прописной ( заглавный ).

лабораторные работы и задачи по программированию и информатике, егэ по информатике

Символьный тип char в Паскале

Символьной переменной соответствует тип char:

Инициализация символьной переменной:

Основные функции для работы с символами

Функция преобразует целое число, имеющее тип BYTE, в один символ ASCII-кода:

Функция возвращает порядковый номер символа параметра в таблице ASCII:

var i: integer; begin for i:=32 to 255 do write(chr(i):3); end.

Строковые переменные в Паскаль

Строковые переменные в Паскале имеют тип String

Объявление и инициализация строковой переменной:

var a:string; begin a:=’Привет всем!’; writeln(a); end.

Ввод значения строковой переменной с клавиатуры:

var a:string; begin writeln(‘Введите слово’); readln(a); writeln(‘Вы ввели слово ‘,a); end.

Строка «рассматривается» компилятором, как массив букв:

Функции работы со строками в Pascal

Исходные данные Операция Результат s3=’Мотороллер’ s4= ‘трон’ s5=’Корочка’ s6=’Рубашка’ s8=’2.73′

var s:string[30]; n,i:integer; begin writeln(‘введите текст’); readln(s); n:=0; for i:=1 to length(s) do if s[i]=’f’ then n:=n+1; write(‘в тексте букв f = ‘,n) end.

const m = [‘1’..’9′]; var s: string; i, k: byte; begin read(s); k := 0; for i := 1 to length(s) do if s[i] in m then inc(k); writeln(‘цифр = ‘, k); readln; end.

var a,b,c:string; i:longint; begin write(‘введите слово:’); readln(a); b:=»; for i:=1 to length(a) do b:=a[i]+b; if a=b then write(‘перевертыш’) else write(‘не перевертыш’); end.

  • После того как строка считывается (вводится), измеряется ее длина (функция length).
  • Далее стока просматривается посимвольно в цикле while или for .
  • Если символ строки входит в множество букв ( const letters=[‘a’..’z’]; ), то этот символ прибавляется к первому элементу массива слов строки ( . array [1..100] of string ).
  • Если символ равен пробелу, то увеличиваем счетчик для массива слов и переходим к следующей итерации цикла.
  • Пока не достигнем пробела, формируем элемент массива b (строковый массив — будущий массив из слов предложения). Добавляя каждую букву в переменную d.
  • При достижении пробела чистим переменную d для слова и начинаем формировать следующее слово.
  • После того, как массив из всех слов сформирован: начиная со второго элемента, сравниваем его длину с длиной предыдущего элемента. При необходимости меняем элементы местами. Проходим алгоритм до конца массива b.

    Примечание:
    Использовать функции: Pos, Copy, Delete

    Посимвольный ввод до пробела

    Посимвольный ввод удобен для «мгновенной» обработки символов в строке.

    Для организации массива символьных строк:

    1. Все данные разделяются одним пробелом. Нужно подсчитать, сколько студентов получили отметку 5.
    2. Вывести фамилии студентов, у которых оценка 2.
    3. Вывести фамилии студентов, родившихся в 1996 году.

    Пример:
    Входной текст: Алгоритм — это правила выполнения определенных действий!, предписание исполнителю! совершить последовательность действий!, набор команд для компьютера!
    Выходной текст: Алгоритм — это правила выполнения определенных действий, предписание исполнителю! совершить последовательность действий, набор команд для компьютера!

    Трудность низкая:
    Программа должна формировать в памяти вторую строковую переменную с измененным текстом, а потом выводить ее на экран.

    Трудность высокая:
    Программа должна преобразовывать исходную строку без использования дополнительных переменных, и затем выводить ее на экран.

    И напоследок рассмотрим олимпиадное задание по Паскалю:

    * Решить ту же задачу, в которой сдвиг будет не на 3 позиции, а на k, причем отрицательное значение является признаком сдвига влево, положительное — вправо.

    var a:char; i,n:byte; s,s1:string; begin s1:=»; readln(s); for i:=1 to length(s) do begin n:=ord(. ); n:=n+3; if n=123 then n:=97; if . ; if . ; a:=chr(. ); s1:=. ; end; writeln(s1) end.

    Потренируйтесь в решении задач по теме, щелкнув по пиктограмме:

    Источник: computermaker.info

  • Понравилась статья? Поделиться с друзьями:
    Ок! Компьютер
    Добавить комментарий