Последовательность не более чем из 255 символов
Перейти к содержимому

Последовательность не более чем из 255 символов

  • автор:

3. Символьный, строковый и логический типы данных

Для обработки символьной информации используется тип данных char . Любому символу присваивается код – число от \(0\) до \(255\). Для хранения данных символьного типа выделяются ячейки длинной в \(1\) байт.
Для вывода кода на экран используется функция ord(x ) , при условии, что символ введен с клавиатуры. В программе символы заключаются в апострофы. Например, R:=’#’ .
С символами можно совершать операции сравнения, при этом будут сравниваться коды символов.

Тип данных string позволяет вводить последовательность символов не длиннее \(255\), также заключенной в апострофы.
Например, R:=’Привет!’ .

Тип данных Boolean применяется к логическим величинам. Они могут иметь всего два значения \(0\) и \(1\) или \(true\) и \(false\).

Логические операции в Паскаль
Не — NOT — логическое отрицание (меняет значение операнда на противоположное).
И — AND — конъюнкция (\(true\), если оба операнда \(true\)).
ИЛИ — OR — дизъюнкция (\(false\), если оба операнда \(false\)).

Запишите, как в языке Паскаль обозначается последовательность символов длиной меньше 255.

Пожалуйста, войдите или зарегистрируйтесь для публикации ответа на этот вопрос.

решение вопроса

Связанных вопросов не найдено

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

поделиться знаниями или
запомнить страничку

  • Все категории
  • экономические 43,679
  • гуманитарные 33,657
  • юридические 17,917
  • школьный раздел 612,682
  • разное 16,911

Популярное на сайте:

Как быстро выучить стихотворение наизусть? Запоминание стихов является стандартным заданием во многих школах.

Как научится читать по диагонали? Скорость чтения зависит от скорости восприятия каждого отдельного слова в тексте.

Как быстро и эффективно исправить почерк? Люди часто предполагают, что каллиграфия и почерк являются синонимами, но это не так.

Как научится говорить грамотно и правильно? Общение на хорошем, уверенном и естественном русском языке является достижимой целью.

  • Обратная связь
  • Правила сайта

ASCII код

Выведите 10 символов, которые следуют за данным в таблице ASCII.

Формат входных данных

Первая строка содержит символ, код которого находится в диапазоне \([32 \ldots 116]\) .

Формат результата

Выведите следующие 10 символов.

Примеры

входные данные результат
a bcdefghijk
t uvwxyz<|>~
+ ,-./012345

Префикс алфавита

Дана последовательность символов. Проверьте является ли она префиксом строки abcdefghijklmnopqrstuvwxyz .

Формат входных данных

Дана непустая строка длиной не более 100 символов. Все символы это строчные латинские буквы.

Формат результата

Выведите YES , если данная строка является префиксом строки abcdefghijklmnopqrstuvwxyz . Выведите NO в противном случае.

Примеры

входные данные результат
abcd YES
abcdf NO

Строка из уникальных символов

Дана строка. Необходимо проверить, что все символы в ней уникальны.

Формат входных данных

Дана строка длиной не более 100 символов. Все символы имеют ASCII коды из диапазона \([32..126]\) .

Формат результата

Выведите YES , если все символы уникальны (встречаются ровно один раз). Выведите NO в противном случае.

Примеры

входные данные результат
abcd YES
abcda NO

Палиндром

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

Формат входных данных

Дана строка длиной не более 255 символов, состоящая из строчных латинских букв и пробелов.

Формат результата

Выведите YES если строка является палиндромом и NO в противном случае.

Примеры

входные данные результат
no lemon no melon YES
korosteli leteli leteli leteli let sorok YES
lesha na polke klopa nashel NO

Примечание

Последняя фраза является палиндромом если её записать кириллицей. Но, по условию задачи, строка состоит из латинских букв и, чтобы написать текст на русском языке, приходится использовать символы транслитерации.

Анаграммы

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

Формат входных данных

Даны два слова на отдельных строках. Слова состоят из строчных латинских букв. Длины слов не превышают 255.

Формат результата

Требуется вывести YES , если введенные слова являются анаграммами друг друга, и NO , если нет.

Примеры

входные данные результат
ravnovesie
svoenravie
YES
apelsin
spaniel
YES
tommarvoloriddle
iamlordvoldemort
YES

Шифр Цезаря

Для шифрования сообщения кодом Цезаря необходимо каждую букву заменить на другую, находящуюся на \(K\) позиций правее в алфавите (после z следует a). Необходимо по заданной шифровке определить исходный текст.

Формат входных данных

В первой строке дана шифровка, состоящая из строчных латинских букв и не превышающая по длине 255 символов. Во второй строке задано число \(K\) ( \(1 \le K \le 10\) ).

Формат результата

Требуется вывести исходное сообщение.

Примеры

входные данные результат
tdippm
1
school
bbb
5
www

Подстрока из одинаковых символов

Дана строка. Найдите в ней подстроку максимальной длины, состоящую из одинаковых символов.

Формат входных данных

Дана строка длиной не более 100 символов. Все символы имеют ASCII коды из диапазона \([32..126]\) .

Формат результата

Выведите наибольшую подстроку, состоящую из одинаковых символов. Если таких несколько, то выведите первую.

Примеры

входные данные результат
green ee
aaabbb aaa

Наибольшая подстрока — 1

Даны две строки. Найдите длину максимальной подстроки, входящей в обе строки.

Формат входных данных

Даны две строки длиной не более 100 символов. Все символы имеют ASCII коды из диапазона \([32..126]\) .

Формат результата

Выведите длину наибольшей подстроки.

Примеры

входные данные результат
green
red
2
school
chocolate
3

Как записать строку ввода во Free Pascal больше чем 255 символов?

Помогите придумать, как записывать строку ввода в паскале более 255 символов. Ведь, когда зажимаешь одну кнопку и ждешь пока напишутся все символы, их получатся всего 255 и больше не пишутся они. Пример: 1111111111111. 1 ( 255 единиц), 256 единиц не получается записать.

Отслеживать
16.7k 4 4 золотых знака 21 21 серебряный знак 31 31 бронзовый знак
задан 16 окт 2017 в 18:38
Даниил Немов Даниил Немов
21 2 2 бронзовых знака
Давайте попробуем взглянуть на проблему чуть шире. Для чего вам больше 255 символов в строке ввода?
16 окт 2017 в 18:52
Чтобы обрабатывать числа с количеством цифр больше 1000 для вычислений.
16 окт 2017 в 19:00
Пример: 444..4(2222 раза четверка) умножить на 555..5(5000 раз пятерка) равно .
16 окт 2017 в 19:01

Мне кто-то сказал, что это можно обойти через отключение буферизации. Но как это сделать, я не знаю. Нужно больше идей.

16 окт 2017 в 20:14
16 окт 2017 в 22:19

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Program BigString; Var BigString : array [1 .. 1000] of Char; Begin write ('Введите не более 1000 знаков: '); readln (BigString); write ('Знак N300 = '); writeln (BigString[300]) End. 

Отслеживать
ответ дан 16 окт 2017 в 19:52
734 4 4 серебряных знака 12 12 бронзовых знаков

«String» — Строковая переменная — это последовательность символов с динамической длиной, и постоянным максимальным размером в диапазоне от 1 до 255. Соответственно если надо больше, то это массивы сами создаём и сами потом обрабатываем

16 окт 2017 в 19:59

Не работает. Не получается ввести за один раз более 255 символов во Free Pascal. Когда начинаешь писать цифры, доходит до 255, а потом больше писать нельзя.

16 окт 2017 в 20:03

тогда еще более вручную.. (стараюсь не усложнять, не кандидат в идеалы):

 Program BigStringEnter; uses crt; Var BigString : array [1 .. 1000] of Char; Var i : integer; Begin write ('Введите не более 1000 знаков: '); i:=0; repeat Inc(i); BigString[i] := readkey; write(BigString[i]); until BigString[i] = #13; write ('Знак N300 = '); if i > 300 then writeln (BigString[300]) else writeln ('Пусто, потому что в массиве ', i,'символов '); End. 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *