Вопрос задан 28.10.2023 в 00:54. Предмет Информатика. Спрашивает Бодров Данила.

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

«р» Запросить у пользователя 5 строк и вывести на экран количество непустых строк.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Бодолан Мария.

#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;

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Программа на C++ для выполнения задачи будет выглядеть следующим образом:

```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`, которая содержит количество непустых строк, введенных пользователем.

Таким образом, данная программа позволяет выполнить две задачи: вывод строки, введенной пользователем до первой буквы "р", и подсчет количества непустых строк, введенных пользователем.
0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос