Программа подсчета количества слов, начинающихся с гласных или согласных

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

C++

Пример программы на C++, которая читает слова по одному за раз, пока не будет введена отдельная буква ‘q’. После этого программа сообщит количество слов, начинающихся с гласных, количество слов, начинающихся с согласных, и количество слов, не попадающих ни в одну из этих категорий:

#include <iostream>
#include <cctype> // Для функции isalpha

int main() {
    char input[100];
    int vowelWords = 0;
    int consonantWords = 0;
    int otherWords = 0;

    std::cout << "Введите слова (для завершения введите 'q'):\n";

    while (true) {
        std::cin >> input;

        if (input[0] == 'q' && input[1] == '\0') {
            break; // Выход из цикла при вводе 'q'
        }

        if (isalpha(input[0])) {
            char firstChar = tolower(input[0]); // Преобразование в нижний регистр
            if (firstChar == 'a' || firstChar == 'e' || firstChar == 'i' || firstChar == 'o' || firstChar == 'u') {
                vowelWords++;
            } else {
                consonantWords++;
            }
        } else {
            otherWords++;
        }
    }

    std::cout << "Слов, начинающихся с гласных: " << vowelWords << std::endl;
    std::cout << "Слов, начинающихся с согласных: " << consonantWords << std::endl;
    std::cout << "Слов, не попадающих ни в одну из этих категорий: " << otherWords << std::endl;

    return 0;
}

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

C#

using System;

class Program
{
    static void Main(string[] args)
    {
        int vowelWords = 0;
        int consonantWords = 0;
        int otherWords = 0;

        Console.WriteLine("Введите слова (для завершения введите 'q'): ");
        string input;

        while (true)
        {
            input = Console.ReadLine();

            if (input == "q")
            {
                break; // Выход из цикла при вводе 'q'
            }

            if (!string.IsNullOrWhiteSpace(input) && char.IsLetter(input[0]))
            {
                char firstChar = char.ToLower(input[0]);

                if ("aeiou".Contains(firstChar))
                {
                    vowelWords++;
                }
                else
                {
                    consonantWords++;
                }
            }
            else
            {
                otherWords++;
            }
        }

        Console.WriteLine($"Слов, начинающихся с гласных: {vowelWords}");
        Console.WriteLine($"Слов, начинающихся с согласных: {consonantWords}");
        Console.WriteLine($"Слов, не попадающих ни в одну из этих категорий: {otherWords}");
    }
}

Python

def is_vowel(char):
    vowels = "AEIOUaeiou"
    return char in vowels

def main():
    vowel_words = 0
    consonant_words = 0
    other_words = 0

    print("Введите слова (для завершения введите 'q'):")
    while True:
        word = input()
        
        if word == 'q':
            break  # Выход из цикла при вводе 'q'

        if word.isalpha() and len(word) > 0:
            if is_vowel(word[0]):
                vowel_words += 1
            else:
                consonant_words += 1
        else:
            other_words += 1

    print(f"Слов, начинающихся с гласных: {vowel_words}")
    print(f"Слов, начинающихся с согласных: {consonant_words}")
    print(f"Слов, не попадающих ни в одну из этих категорий: {other_words}")

if __name__ == "__main__":
    main()

Java

import java.util.Scanner;

public class WordAnalyzer {
    public static void main(String[] args) {
        int vowelWords = 0;
        int consonantWords = 0;
        int otherWords = 0;

        Scanner scanner = new Scanner(System.in);
        System.out.println("Введите слова (для завершения введите 'q'):");

        while (true) {
            String word = scanner.next();

            if (word.equals("q")) {
                break; // Выход из цикла при вводе 'q'
            }

            if (word.matches("[a-zA-Z]+")) {
                char firstChar = Character.toLowerCase(word.charAt(0));
                if ("aeiou".contains(String.valueOf(firstChar))) {
                    vowelWords++;
                } else {
                    consonantWords++;
                }
            } else {
                otherWords++;
            }
        }

        System.out.println("Слов, начинающихся с гласных: " + vowelWords);
        System.out.println("Слов, начинающихся с согласных: " + consonantWords);
        System.out.println("Слов, не попадающих ни в одну из этих категорий: " + otherWords);
    }
}

Pascal

program WordAnalyzer;

var
  inputWord: string;
  vowelWords, consonantWords, otherWords: integer;
  firstChar: char;

begin
  vowelWords := 0;
  consonantWords := 0;
  otherWords := 0;

  writeln('Введите слова (для завершения введите ''q''):');

  repeat
    readln(inputWord);

    if inputWord = 'q' then
      Break;  // Выход из цикла при вводе 'q'

    if (Length(inputWord) > 0) and (IsLetter(inputWord[1])) then
    begin
      firstChar := LowerCase(inputWord[1])[1];
      if firstChar in ['a', 'e', 'i', 'o', 'u'] then
        Inc(vowelWords)
      else
        Inc(consonantWords);
    end
    else
      Inc(otherWords);

  until False;

  writeln('Слов, начинающихся с гласных: ', vowelWords);
  writeln('Слов, начинающихся с согласных: ', consonantWords);
  writeln('Слов, не попадающих ни в одну из этих категорий: ', otherWords);
end.

JavaScript

function isVowel(char) {
  const vowels = "AEIOUaeiou";
  return vowels.includes(char);
}

function main() {
  let vowelWords = 0;
  let consonantWords = 0;
  let otherWords = 0;

  console.log("Введите слова (для завершения введите 'q'):");

  while (true) {
    let word = prompt();

    if (word === 'q') {
      break; // Выход из цикла при вводе 'q'
    }

    if (word.match(/^[A-Za-z]+$/)) {
      if (isVowel(word[0])) {
        vowelWords++;
      } else {
        consonantWords++;
      }
    } else {
      otherWords++;
    }
  }

  console.log(`Слов, начинающихся с гласных: ${vowelWords}`);
  console.log(`Слов, начинающихся с согласных: ${consonantWords}`);
  console.log(`Слов, не попадающих ни в одну из этих категорий: ${otherWords}`);
}

main();

PHP

<?php
function isVowel($char) {
    $vowels = "AEIOUaeiou";
    return strpos($vowels, $char) !== false;
}

$vowelWords = 0;
$consonantWords = 0;
$otherWords = 0;

echo "Введите слова (для завершения введите 'q'):\n";

while (true) {
    $word = trim(fgets(STDIN));

    if ($word === 'q') {
        break; // Выход из цикла при вводе 'q'
    }

    if (preg_match('/^[A-Za-z]+$/', $word)) {
        $firstChar = $word[0];
        if (isVowel($firstChar)) {
            $vowelWords++;
        } else {
            $consonantWords++;
        }
    } else {
        $otherWords++;
    }
}

echo "Слов, начинающихся с гласных: $vowelWords\n";
echo "Слов, начинающихся с согласных: $consonantWords\n";
echo "Слов, не попадающих ни в одну из этих категорий: $otherWords\n";
?>
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Давайте поможем друг другу! Если вы нашли ошибку или хотите предложить лучшее решение, пожалуйста, напишите об этом в комментариях.

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

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