типа как букварик.
У Копма есть свой букварь из 256 символов, и каждый имеет свой номер. и чтобы узнать например номер буквы «п» нужно ввести команду ord(‘п’);
также тит можно переводить символ в код ascii и на оборот
оператор ord переводит символ в код ascii
а оператор chr на оборот
например
u:=ord(a);
a:=chr(u);
Тип 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. Примечание: Посимвольный ввод до пробелаПосимвольный ввод удобен для «мгновенной» обработки символов в строке. Для организации массива символьных строк:
Пример: Трудность низкая: Трудность высокая: И напоследок рассмотрим олимпиадное задание по Паскалю: * Решить ту же задачу, в которой сдвиг будет не на 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; <в ASCII 120 - x, 97 - a>if . ; <в ASCII 121 - y, 98 - b>if . ; <в ASCII 122 - z, 99 - c>a:=chr(. ); s1:=. ; end; writeln(s1) end. Потренируйтесь в решении задач по теме, щелкнув по пиктограмме: |