Написати (надрукувати) в зошит програми до таких задач:
1) Ввести окремо прізвище та ім'я. Визначити їх довжину.
Об'єднати ці два рядки в один, вивести об'єднаний рядок на екран у вигляді стовпчика символів.
(Підказка. Для масиву, що буде містити об'єднаний рядок оголосити розмір більший, з врахуванням додавання літер)
2) Ввести рядок, що складається з літер і цифр. Вивести через пробіл лише цифри з цього рядка.
3) Дано текст. Чи вірно, що в ньому є 3 однакових символи, що йдуть підряд?
4) Дано речення. Визначити, чи є в ньому літера а. Якщо є, знайти порядковий номер першої літери а, якщо немає - вивести “no”.
5) Підвищена складність - Дано речення. Знайти в ньому саме довге слово, вивести це слово та його довжину.
Answers & Comments
1) Задача про прізвище та ім'я:
#include <iostream>
#include <string>
using namespace std;
int main() {
string firstName, lastName;
cout << "Введіть прізвище: ";
cin >> lastName;
cout << "Введіть ім'я: ";
cin >> firstName;
cout << "Довжина прізвища: " << lastName.length() << endl;
cout << "Довжина ім'я: " << firstName.length() << endl;
string combined = lastName + firstName;
for (char c : combined) {
cout << c << endl;
}
return 0;
}
2) Вивести лише цифри з рядка:
#include <iostream>
#include <string>
using namespace std;
int main() {
string input;
cout << "Введіть рядок: ";
cin >> input;
for (char c : input) {
if (isdigit(c)) {
cout << c << " ";
}
}
cout << endl;
return 0;
}
3) Перевірка на 3 однакових символи:
#include <iostream>
#include <string>
using namespace std;
int main() {
string text;
cout << "Введіть текст: ";
cin >> text;
for (int i = 0; i < text.length() - 2; i++) {
if (text[i] == text[i+1] && text[i] == text[i+2]) {
cout << "Так, є 3 однакових символи підряд." << endl;
return 0;
}
}
cout << "Немає 3 однакових символів підряд." << endl;
return 0;
}
4) Перевірка на наявність літери "а":
#include <iostream>
#include <string>
using namespace std;
int main() {
string sentence;
cout << "Введіть речення: ";
getline(cin, sentence);
size_t pos = sentence.find('а');
if (pos != string::npos) {
cout << "Порядковий номер першої літери 'а': " << pos + 1 << endl;
} else {
cout << "no" << endl;
}
return 0;
}
5) Знаходження найдовшого слова:
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
string sentence, word, longestWord = "";
cout << "Введіть речення: ";
getline(cin, sentence);
stringstream ss(sentence);
while (ss >> word) {
if (word.length() > longestWord.length()) {
longestWord = word;
}
}
cout << "Найдовше слово: " << longestWord << endl;
cout << "Довжина: " << longestWord.length() << endl;
return 0;
}