
Программа на C++. Тема строки Вывести на экран строку, введенную пользователем до первой буквы
«р» Запросить у пользователя 5 строк и вывести на экран количество непустых строк.

Ответы на вопрос

#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int Pcount = 0; // На самом деле, особо и не нужен, нужен лишь для того, чтобы вывести
// строчку, что символ p не найден
int Count = 0; // счетчик для хранения количества не пустых строк
cout << "Entered string." << endl;
char *str = new char[500]; // Создаем динамический массив на 500 элементов
gets_s((char*)str, 500); // Функция, принимающая на ввод строку.
for (int i = 0; i < 500; i++) // Перебор символов в поиске 'p'
{
if (str[i] == 'p') //если i-тый элемент массива равен символу 'p', то проваливаемся дальше
{
Pcount++; // Инкриментируем, чтобы вывести все туже строчку о том, что символа p нету)))
for (int j = 0; j < i; j++) // перебираем символы для вывода. i - в этой строке указывает где был найден символ 'p'.
{
cout << str[j];
}
cout << endl;
break; // оператор выхода из цикла.
}
}
if (Pcount == 0) // Если символов p не вводилось, то Pcount будет равен 0
{
cout << "p is not found" << endl; // и выведеться эта строка.
}
cout << "Entered 5 string's" << endl;
for (int i = 0; i < 5; i++) // В этом цикле запрашиваем строку 5 раз
{
gets_s((char*)str, 500); // Функция принимающуя на ввод строку.
if (str[0] != '\0') // Этим условием мы проверяем первый элемент массива на нуль терминатор
// если он не равен нуль терминатору , то увеличиваем счетчик Count
{
Count++; //т.о он будет хранить кол-во не пустых строк.
}
}
cout << Count << endl; // выводим на экран кол-во не пустых строк
delete[] str;//освобождаем память
_getch();// Содержиться в conio.h (для того тобы окно не закрывалось)
return 0;
}



```cpp
#include
#include
int main() {
std::string str;
std::cout << "Введите строку: ";
std::getline(std::cin, str);
// Находим позицию первой буквы "р" в строке
size_t pos = str.find('р');
// Проверяем, есть ли буква "р" в строке и выводим строку до нее
if (pos != std::string::npos) {
std::string substring = str.substr(0, pos);
std::cout << "Строка до первой буквы 'р': " << substring << std::endl;
}
else {
std::cout << "Введенная строка не содержит букву 'р'" << std::endl;
}
// Запросим у пользователя 5 строк
std::string input_string;
int count = 0;
std::cout << "Введите 5 строк:" << std::endl;
for (int i = 0; i < 5; i++) {
std::getline(std::cin, input_string);
// Проверяем, является ли строка непустой
if (!input_string.empty()) {
count++;
}
}
std::cout << "Количество непустых строк: " << count << std::endl;
return 0;
}
```
Пояснение к программе:
1. Мы используем заголовочные файлы `
2. Внутри функции `main()` создана переменная `str`, которая будет использоваться для ввода строки пользователем.
3. Мы используем функцию `std::getline()`, чтобы прочитать строку, введенную пользователем.
4. Мы используем функцию `find()`, чтобы найти позицию первой буквы "р" в строке. Если такая буква найдена (`pos != std::string::npos`), то мы создаем подстроку с помощью функции `substr()`, которая содержит все символы до найденной позиции, и выводим эту подстроку на экран.
5. Если буква "р" не найдена в строке, выводится сообщение о том, что такая буква не содержится в введенной строке.
6. Затем программа запрашивает у пользователя 5 строк.
7. Создается переменная `count`, которая будет использоваться для подсчета количества непустых строк.
8. Мы запускаем цикл `for`, который повторяется 5 раз.
9. Внутри этого цикла с помощью функции `std::getline()` мы считываем строку, введенную пользователем.
10. Мы проверяем, является ли строка непустой с помощью функции `empty()`. Если строка не пустая, мы увеличиваем значение переменной `count`.
11. В конце программы выводится значение переменной `count`, которая содержит количество непустых строк, введенных пользователем.
Таким образом, данная программа позволяет выполнить две задачи: вывод строки, введенной пользователем до первой буквы "р", и подсчет количества непустых строк, введенных пользователем.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili