В мире современных информационных технологий, где доступ к данным и текстовой информации беспрерывен, способность точно и эффективно анализировать и обрабатывать текст играет ключевую роль. Одним из фундаментальных заданий при работе с текстом является подсчет количества введенных слов. Эта простая и в то же время важная операция находит применение в различных областях, от анализа текстовых данных и веб-статистики до разработки текстовых редакторов и приложений для обработки естественного языка. В данной статье мы рассмотрим создание программы подсчета количества введенных слов.
C++
Пример программы на C++, которая считывает слова из ввода пользователя и подсчитывает количество введенных слов, исключая слово «done»:
#include <iostream> #include <string> int main() { const std::string sentinel = "done"; std::string input; int wordCount = 0; std::cout << "Введите слова (для завершения введите 'done'):\n"; while (true) { std::cin >> input; if (input == sentinel) { break; } wordCount++; } std::cout << "Количество введенных слов (исключая 'done'): " << wordCount << std::endl; return 0; }
Эта программа будет считывать слова, пока не встретит слово «done», после чего выведет количество введенных слов (исключая «done»).
C#
using System; class Program { static void Main() { const string sentinel = "done"; string input; int wordCount = 0; Console.WriteLine("Введите слова (для завершения введите 'done'):"); while (true) { input = Console.ReadLine(); if (input == sentinel) { break; } wordCount++; } Console.WriteLine("Количество введенных слов (исключая 'done'): " + wordCount); } }
Python
word_count = 0 print("Введите слова (для завершения введите 'done'):") while True: word = input() if word == "done": break word_count += 1 print(f"Количество введенных слов (исключая 'done'): {word_count}")
Java
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String sentinel = "done"; String input; int wordCount = 0; System.out.println("Введите слова (для завершения введите 'done'):"); while (true) { input = scanner.next(); if (input.equals(sentinel)) { break; } wordCount++; } System.out.println("Количество введенных слов (исключая 'done'): " + wordCount); } }
Pascal
program WordCounter; var input: string; wordCount: integer; begin wordCount := 0; writeln('Введите слова (для завершения введите "done"):'); repeat readln(input); if input = 'done' then break; wordCount := wordCount + 1; until false; writeln('Количество введенных слов (исключая "done"): ', wordCount); end.
Node.js
JavaScript не предоставляет встроенных средств для считывания слов из консоли по одному за раз, как это делают другие языки, такие как C++, C#, Java и Pascal. Однако вы можете использовать Node.js, чтобы создать командную строку (консольное) приложение, которое считывает слова из консоли. Пример такой программы:
const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); const sentinel = 'done'; let wordCount = 0; console.log('Введите слова (для завершения введите "done"):'); function readWord() { rl.question('', (input) => { if (input === sentinel) { rl.close(); console.log(`Количество введенных слов (исключая "${sentinel}"): ${wordCount}`); } else { wordCount++; readWord(); } }); } readWord();
Для запуска этой программы вам понадобится Node.js. Вы можете установить его с официального сайта (https://nodejs.org/) и выполнить этот скрипт в командной строке.
PHP
PHP предназначен для веб-разработки и не предоставляет стандартных средств для интерактивного ввода и вывода в консоли, как это делают другие языки программирования. Однако вы можете использовать функцию fgets() для считывания строк из стандартного ввода. Вот пример программы на PHP, которая считывает слова из стандартного ввода и подсчитывает количество введенных слов, исключая слово «done»:
<?php $wordCount = 0; $sentinel = "done"; echo "Введите слова (для завершения введите 'done'):\n"; while (true) { $input = trim(fgets(STDIN)); if ($input === $sentinel) { break; } $wordCount++; } echo "Количество введенных слов (исключая 'done'): $wordCount\n"; ?>