Необхідно написати програму, яка виводить на консоль та у файл наступну інформацію:
1. Необхідно у алфавітному порядку надрукувати усі голосні та
окремо неголосні букви, які входять до цього тексту.
2. У алфавітному порядку надрукувати усі неголосні та створити усі
можливі пари неголосних з голосними, які є у тексті
c++
Ответы на вопрос
На жаль, сюди не можна прикріпити файли. Я не маю достатньої кількості інформації, що допоможе мені у виконанні.
Відповідь:
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
#include <set>
bool isVowel(char c) {
const std::string vowels = "aeiouAEIOU";
return vowels.find(c) != std::string::npos;
}
int main() {
// Введення тексту
std::cout << "Введіть текст: ";
std::string inputText;
std::getline(std::cin, inputText);
// Додавання вхідної строки на початок
std::cout << "\nВхідна строка: " << inputText << "\n\n";
// Визначення голосних та неголосних букв
std::vector<char> vowels;
std::vector<char> consonants;
for (char c : inputText) {
if (isVowel(c)) {
vowels.push_back(c);
} else if (std::isalpha(c)) {
consonants.push_back(c);
}
}
// Сортування букв
std::sort(vowels.begin(), vowels.end());
std::sort(consonants.begin(), consonants.end());
// Виведення голосних та неголосних букв
std::cout << "Голосні букви: ";
for (char v : vowels) {
std::cout << v << " ";
}
std::cout << "\nНеголосні букви: ";
for (char c : consonants) {
std::cout << c << " ";
}
// Створення та виведення унікальних пар неголосних з голосними
std::cout << "\n\nУнікальні пари неголосних з голосними:\n";
std::set<std::pair<char, char>> uniquePairs;
for (char c : consonants) {
for (char v : vowels) {
uniquePairs.insert(std::make_pair(c, v));
}
}
for (const auto &pair : uniquePairs) {
std::cout << pair.first << "-" << pair.second << "\n";
}
// Запис у файл
std::ofstream outputFile("output.txt");
outputFile << "Вхідна строка: " << inputText << "\n\n";
outputFile << "Голосні букви: ";
for (char v : vowels) {
outputFile << v << " ";
}
outputFile << "\nНеголосні букви: ";
for (char c : consonants) {
outputFile << c << " ";
}
outputFile << "\n\nУнікальні пари неголосних з голосними:\n";
for (const auto &pair : uniquePairs) {
outputFile << pair.first << "-" << pair.second << "\n";
}
return 0;
}
Пояснення:
чат джпт в допомогу