Вопрос задан 01.05.2021 в 10:49. Предмет Информатика. Спрашивает Кусь Иоанн.

Исправить программу так,чтобы до и после каждой буквы а писалось две p Например aleksandr Выведёт

paplekspapndr Переделать код программы #include #include using namespace std; char t[500]; int main() { cout<<"t="; gets(t); for(int i=0;i int n=strlen(t); if (t[i]='a'){n+=2; for(int j=n;j>i;j--){ t[j]=t[j-2]; cout< } } } }
0 0
Перейти к ответам

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

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

using namespace std;
int main()
{
 string t, s="";
 cout << "t = ", cin >> t, cout << endl;
 for(int i=0; i<t.length(); i++)
  if(t[i] != 'a') s = s+t[i];
  else s = s+'p'+t[i]+'p';
 cout << s << endl;
 return 0;
}

Пример:
t =  aleksandr
paplekspapndr
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот исправленный код программы:

cpp
#include <iostream> #include <cstring> using namespace std; char t[1000]; int main() { cout << "t="; cin.getline(t, 1000); int n = strlen(t); for (int i = 0; i < n; i++) { if (t[i] == 'a') { // расширяем строку на 2 символа n += 2; // сдвигаем символы после текущей позиции на 2 позиции вправо for (int j = n; j > i+2; j--) { t[j-1] = t[j-3]; } // добавляем две 'p' после текущей позиции t[i+1] = 'p'; t[i+2] = 'p'; // увеличиваем i, чтобы пропустить добавленные символы i += 2; } } cout << t << endl; return 0; }

Основные изменения, которые я внес:

  1. Использовал функцию cin.getline() вместо gets(), так как gets() не безопасна и устарела.
  2. Исправил условие в строке if (t[i] = 'a'), заменив оператор присваивания = на оператор сравнения ==.
  3. Изменение длины строки перенес в начало цикла, чтобы учесть добавленные символы 'p'.
  4. Исправил ошибку в цикле, сдвигая символы на две позиции вправо.
  5. Добавил комментарии, чтобы было понятнее, что делает каждая часть кода.
0 0

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

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

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