Подсчитать количество слов во введенной пользователем строке. Считаем, что слова разделяются исключительно одним пробелом, а первый и последний символы строки не являются пробелами.
str — строка;
len — длина строки;
count — счетчик слов в строке.
Алгоритм решения задачи:
- Измеряем длину введенной пользователем строки.
- Устанавливаем счетчик слов в значение 0.
- В цикле посимвольно перебираем строку. Если очередной символ является пробелом, увеличиваем счетчик слов.
- Поскольку в цикле не было учтено последнее слово (после него нет пробела), мы должны после цикла увеличить счетчик слов на единицу. Однако, если была введена пустая строка, то этого делать не надо. Поэтому перед увеличением счетчика добавляем проверку, что длина строки больше нуля.
Программа на языке Паскаль:
var str: string; len, count, i: integer; begin readln(str); len := length(str); count := 0; for i := 0 to len do if str[i] = ‘ ‘ then count := count + 1; if len > 0 then count := count + 1; writeln(count); end.
one two three 3
Примечание. Программа не будет корректно работать, если слова разделены больше, чем одним пробелом.
9.4 Количество слов. «Поколение Python»: курс для начинающих. Курс Stepik
Второй вариант задачи: подсчитать количество слов в строке и вывести длину каждого слова.
var str, s: string; arr: array[1..255] of string; n,i,l: byte; begin readln(str); l := length(str); n := 0; s := »; for i:=1 to l do if ((str[i] = ‘ ‘) or (i = l)) and (s <> ») then begin n := n + 1; if (i = l) and (str[i] <> ‘ ‘) then s := s + str[i]; arr[n] := s; s := »; end else if str[i] <> ‘ ‘ then s := s + str[i]; writeln(n); for i:=1 to n do writeln(arr[i],’ — ‘, length(arr[i])); end.
Пример выполнения программы:
one two three 3 one — 3 two — 3 three — 5
Третий вариант задачи: Подсчитать количество слов в строке и вывести все слова в столбик.
var s, w: string; l,i: byte; count: byte; begin readln(s); l := length(s); w := »; count := 0; for i:=1 to l do if s[i] <> ‘ ‘ then w := w + s[i] else if w <> » then begin writeln(w); w := »; count := count + 1; end; if w <> » then begin // последнее слово после которого нет пробела writeln(w); count := count + 1; end; writeln(count); end.
Источник: pas1.ru
Посчитать количество слов в строке
Для ввода строки нельзя использовать функцию cin в данном случае, поскольку эта функция осуществляет ввод строки до пробела или перевода строки. Поэтому воспользуемся методом get функции cin :
cin.get(УказательНаСтроку, МаксимальноеЧислоСимволов);
Условием окончания строки является символ с кодом равным 0 (нуль-символ, ‘ ’ ). После ввода строки организуем цикл по элементам строки до ее окончания. Перед циклом убираем пробелы, введенные в начале строки (до первого слова). Условием определения следующего слова в строке является наличие какого-то символа после пробела. Именно это условие увеличивает счетчик count на 1.
strlen c++ реализация. Посчитать количество символов в строке c++ ДЗ#11
Реализация на C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Результат выполнения
Источник: prog-cpp.ru
Как посчитать количество слов в строке python
В Python есть много встроенных функций и методов, которые упрощают обработку строк. Одна из часто встречающихся задач — подсчет количества слов в строке. Это может быть полезно, например, при анализе текстов или при работе с данными, связанными с языком. В этой статье мы рассмотрим несколько способов, как посчитать количество слов в строке в Python.
Методы для подсчета количества слов в строке
Для подсчета количества слов в строке в Python существует несколько методов. Рассмотрим наиболее распространенные из них.
Использование метода split()
Метод split() является одним из самых простых и наиболее используемых способов для подсчета количества слов в строке в Python. Этот метод разбивает строку на список слов, используя разделитель, который задается в качестве аргумента метода. По умолчанию разделителем является пробел.
Вот как можно использовать метод split() для подсчета количества слов в строке:
string = «Python is a popular programming language» word_list = string.split() print(len(word_list))
Здесь мы определяем строку «Python is a popular programming language» и используем метод split() для разбиения ее на список слов. Затем мы используем функцию len() для подсчета количества элементов в списке, которое и будет количеством слов в исходной строке.
Этот подход работает не только для простых строк, но и для строк, содержащих знаки препинания и другие символы. Однако, если строка содержит множественные пробелы или другие символы-разделители, метод split() может дать неправильный результат.
Например, если строка содержит несколько пробелов между словами, метод split() может воспринимать их как отдельные элементы, что приведет к неправильному результату. Для таких случаев необходимо использовать более продвинутые методы.
Метод count()
Метод count() — это встроенный метод в Python, который используется для подсчета количества вхождений подстроки в строку. В данном случае, мы можем использовать его для подсчета количества слов в строке.
Метод count() принимает один обязательный аргумент — подстроку, которую нужно искать в строке, и два необязательных аргумента — start и end , которые указывают начальную и конечную позиции в строке для поиска подстроки. Если аргументы start и end не указаны, метод будет искать подстроку во всей строке.
Пример использования метода count() для подсчета количества слов в строке:
sentence = «The quick brown fox jumps over the lazy dog» word_count = sentence.count(» «) + 1 print(«Количество слов в строке:», word_count)
В этом примере мы сначала определяем строку sentence , содержащую несколько слов. Затем мы используем метод count() для подсчета количества пробелов в строке, добавляем 1, и получаем количество слов в строке. Результат выводится на экран.
Этот метод может быть полезен, если вам нужно быстро подсчитать количество слов в строке без использования регулярных выражений или метода split() . Однако стоит учитывать, что он может не работать должным образом, если в строке есть знаки препинания или другие символы, отличные от пробелов, используемых для разделения слов.
Использование регулярных выражений
Использование регулярных выражений — это еще один способ подсчета количества слов в строке. В Python есть модуль re , который позволяет работать с регулярными выражениями.
Регулярные выражения — это формальный язык поиска и манипулирования подстроками в тексте. Они используются для поиска определенных паттернов в строке, таких как слова, числа, электронные адреса и т.д.
Для подсчета количества слов в строке с помощью регулярных выражений, мы можем использовать функцию findall() из модуля re . Эта функция ищет все совпадения с регулярным выражением и возвращает список найденных строк.
Вот пример использования регулярного выражения для подсчета количества слов в строке:
import re string = «Это пример строки для подсчета слов» word_list = re.findall(r’bw+b’, string) print(«Количество слов в строке:», len(word_list))
В этом примере мы импортировали модуль re , определили строку, которую мы хотим проанализировать, и затем использовали функцию findall() с регулярным выражением r’bw+b’ . Это регулярное выражение соответствует словам, которые состоят из одного или более буквенно-цифровых символов и отделены от других символов пробелами или границами слов.
Функция findall() вернет список найденных слов, который мы затем передадим в функцию len() для подсчета количества слов.
Источник: python-teach.ru