Как посчитать количество букв в слове паскаль

от admin

Символы и строки в PascalABC.NET

Символы имеют тип char, занимают 2 байта и хранятся в кодировке Unicode (UTF-16).

Для преобразования символа c в код используется функция Ord(c) , для обратного преобразования кода i в символ используется функция Chr(i) .

Классический способ определить символ, следующий за данным в кодовой таблице, — это преобразовать символ в код, прибавить к коду число и потом преобразовать полученный код снова в символ:

Аналогично определяется предыдущий символ

Методы типа char

Методы, встроенные в тип char, делятся на две категории:

  • проверяющие, принадлежит ли символ указанной категории: c.IsDigit , c.IsLetter , c.IsLower , c.IsUpper
  • преобразующие символ: c.ToUpper , c.ToLower , c.ToDigit .

Отметим, что c.IsDigit эквивалентно (c >= ‘0’) and (c <= ‘9’) и эквивалентно c in ‘0’..’9′ Для c.IsLower , c.IsLower , c.IsUpper такой простой аналогии нет. Дело в том, что в этих методах проверяются все символы, являющиеся буквами в каком-то алфавите народов мира (в частности, английские и русские)

Отметим также, что c.IsLower возвращает True только если это буква в нижнем регистре — для не букв возвращается False .

Строки

Введение

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

Основная причина — многие методы строк в .NET считают, что строки индексируются с нуля, а в Паскале строки индексируются с 1.

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

Индексация строк

Строки в Паскале индексируются с 1. К символам строк можно обращаться по индексам — s[i] .

Символы строк можно менять:

Можно использовать индексацию с конца: s[^i] обозначает i-тый символ с конца

Про­вести ча­стот­ный ана­лиз тек­ста: подсчет количества букв

На вход в про­грам­му по­да­ет­ся текст, со­сто­я­щий из про­пис­ных букв рус­ско­го и ан­глий­ско­го ал­фа­ви­та. между сло­ва­ми ста­вит­ся один про­бел, ввод тек­ста за­кан­чи­ва­ет­ся точ­кой. (Дру­гие сим­во­лы, от­лич­ные от «.» и букв «А». «Я» и «А». «Z», на вход про­грам­мы не по­сту­па­ют.) Тре­бу­ет­ся на­пи­сать про­грам­му, ко­то­рая будет про­во­дить ча­стот­ный ана­лиз тек­ста и по­сле­до­ва­тель­но вы­во­дить на экран толь­ко букву и число, рав­ное ко­ли­че­ству по­вто­ре­ний этой буквы. Вна­ча­ле не­об­хо­ди­мо вы­ве­сти дан­ные об ан­глий­ском, затем о рус­ском ал­фа­ви­те. Буквы, не встре­ча­ю­щи­е­ся в тек­сте ни разу, вы­во­дить­ся не долж­ны. Помогите написать программу,этот код никак не хочет работать.

@kuvschinov-eugeny Вы бы написали что конкретно не работает 🙂 Похоже что, вы забыли преобразовать число в строку при выводе результата. У вас же числа хранятся в mas , а не строки. Это вам не PHP, здесь строгая типизация. 😉

И ваш код можно сделать короче:

Надо ввести строку символов, а вводится единичный символ (переменная c). В остальном код верный. Чтоб заработало меняем c:char на c:string

GordonBreazz's user avatar

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.3.11.43304

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Читать:
Как вставить в powershell скопированный текст

Как посчитать количество букв в слове паскаль

17 мая, 2016 Andrey K

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

Строковые функции

length(s); s — строковая переменная (тип string)

В данном примере на экране мы увидим число 14 (пробел — тоже символ)

copy (s, n, l); s — переменная типа string, n — номер символа с которого начинается подстрока (тип integer), l — количество символов в подстроке (тип integer).

В данном примере на экране мы увидим слово мыла (т.к. «м» — шестой символ строки s, и в подстроке мы выделяем 4 символа)

concat(s1, s2, …); — возвращает строку, являющуюся объединением строк, указанных при вызове функции.

На экране мы увидим строку: «Мама мыла раму»

delete(s, n, l); — удаляет из строки s её часть, которая начинается с символа с номером n и состоит из l символов

В данном примере на экране мы увидим: «Мама раму» (удаляем 5 символов: 4 буквы и 1 пробел)

chr(n); — возвращает символ с указанным кодом

Рассмотрим таблицу символов ASCII

Основные символы таблицы ASCII

Основные символы таблицы ASCII

На экране мы увидим символ Z

pos(s, subs); — возвращает позицию (номер символа) подстроки в строке.

val(s, num, error); — выполняет преобразование строки s, изображающие целое или вещественное число, в число num. Если преобразование выполнен успешно, то значение переменной error=0. Если преобразование не может быть выполнено, то в переменную error записывается номер символа строки, который является причиной неудачи преобразования.

Использование массивов при работе со строками

При решении задач со стоками удобно использовать массивы: помещать элементы строки символов в массив. Для этого можно использовать цикл со счетчиком, функции length и copy :

В цикле от 1 до длины строки st каждому элементу массива ar присваивается подстрока, состоящая из одного i-го символа.

Рассмотрим полный текст программы с выводом полученного массива на экран:

Задача.

Заменить в строке Мама мыла раму буквы а на знак _. Вывести полученный массив на экран.

Решение

Получим: М _ м _ м ы л _ р _ м у

Задачи для самостоятельного выполнения:

  1. Удалить из введенной строки все гласные буквы и вывести результат на экран.
  2. Введенную строку вывести в обратном порядке (с последней буквы начинается и первой заканчивается)
  3. Посчитать количество гласных букв в введенной строке
  4. Вывести на экран результат выражения, записанного в виде «a + b» (где а и b некоторые двухзначные числа)

Опубликовано в рубрике Программирование Метки: алгоритмы, задачи на программирование, Паскаль

Как посчитать количество букв в слове паскаль


Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке — https://slurm.club/3MeqNEk

17 мая, 2016 Andrey K

Похожие статьи