СРОЧНО! С++! Помогите решить любые две программы из этих заданий
1. Скласти програму, яка виводить на екран другу частину таблиці кодування символів (символи з
кодами від 128 до 255). Таблиця повинна складатися з восьми колонок і шістнадцяти рядків. У першій
колонці повинні бути символи з кодом від 128 до 143, у другій - від 144 до 159 і т. д
2. Ввести з клавіатури масив символів розмірністю 15 елементів (кожен символ вводиться окремо через
циклічний оператор довільного типу, ознакою завершення вводу символів є клавіша Enter)
В створеному рядку символів підрахувати кількість цифр. Яких з них виявилось найбільше?
3. Задано два рядка: «Незабаром настане найкраще», «Свято року». Об'єднати їх в один рядок в якому всі
символи верхнього регістру замінити на символи нижнього регістру. Визначити довжину отриманого
рядка та вивести на екран друге і четверте слово з нього.
4. Ввести з клавіатури два рядки, які містять по декілька слів. Об'єднати їх в один більш довгий рядок та
вивести його на екран. З отриманого нового рядка сформувати стовпчик зі слів які в нього входили.
Підрахувати скільки слів вийшло в результаті.
Ответы
Відповідь:
3)
#include <iostream>
#include <string>
#include <algorithm>
int main()
{
std::string line1 = "Незабаром настане найкраще";
std::string line2 = "Свято року";
// Объедините две строки и преобразуйте в строчные
std::string combined = line1 + " " + line2;
std::transform(combined.begin(), combined.end(), combined.begin(), ::tolower);
// Распечатайте длину объединенной строки
std::cout << "Length: " << combined.length() << std::endl;
// Разделите комбинированную строку на слова
std::string words[4];
int wordIndex = 0;
std::string currentWord = "";
for (char c : combined)
{
if (c == ' ')
{
words[wordIndex++] = currentWord;
currentWord = "";
}
else
{
currentWord += c;
}
}
words[wordIndex] = currentWord;
// Выведите второе и четвертое слова
std::cout << "Second word: " << words[1] << std::endl;
std::cout << "Fourth word: " << words[3] << std::endl;
return 0;
}
4)
#include <iostream>
#include <string>
#include <sstream>
int main()
{
std::string line1, line2;
std::getline(std::cin, line1);
std::getline(std::cin, line2);
// Об’єднайте дві лінії в один рядок
std::string combined = line1 + " " + line2;
// Створіть рядковий потік із об’єднаного рядка
std::stringstream ss(combined);
std::string word;
int count = 0;
// Перебирайте слова в рядковому потоці
while (ss >> word)
{
// Виведіть кожне слово в окремому рядку
std::cout << word << std::endl;
++count;
}
std::cout << "Total number of words: " << count << std::endl;
return 0;
}
Пояснення:
Ця програма читає два рядки введення з клавіатури за допомогою std::getline, а потім об’єднує їх в один рядок за допомогою конкатенації рядків. Потім він створює об’єкт std::stringstream з об’єднаного рядка, який дозволяє нам легко перебирати слова в рядку за допомогою оператора вилучення operator>>. Перебираючи слова, ми друкуємо кожне з них в окремому рядку та підраховуємо кількість слів, які ми побачили. Нарешті, ми друкуємо загальну кількість слів у кінці.