
Введите с клавиатуры две строки символов. Допишите вторую строку в конец первой, после чего
повторите эту операцию еще раз. Далее выведите первую строку на экран. В программе не должны использоваться функции стандартной библиотеки. Реализовать в виде отдельной функции. C++

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

#include <iostream>
#include <cstdlib>
using namespace std;
char strcat(char* a, char* b){
int a_count = 0, b_count = 0, j = 0;
while(a[a_count] != '\0'){ //подсчет количества элементов
a_count++;
}
while(b[b_count] != '\0'){ //подсчет количества элементов
b_count++;
}
for(int i = a_count ; i < a_count + b_count; i++){ //объединение
a[i] = b[j];
j++;
}
cout << "Concatenate first and second string: " << a << endl; //вывод
}
int main()
{
char f_str[256], s_str[256], copy_f_str[256]; //объявление массивов и копии первого массива
int i = 0; //счетчик количества элементов
cout << "Enter the first string: "; cin >> f_str; //ввод первого массива
cout << "Enter the second string: "; cin >> s_str; cout << endl; // ввод второго массива
while(f_str[i] != '\0'){ //подсчет количества элементов и присвоение в массив copy_f_str
copy_f_str[i] = f_str[i];
i++;
}
strcat(f_str,s_str); //вызов функции объединения
strcat(f_str,s_str); //вызов функции объединения
cout << "\nThe first string: " << copy_f_str << endl; //вывод первоначальной строки
system("pause"); // остановка консоли
}



Для решения этой задачи в C++, мы можем создать отдельную функцию, которая будет принимать две строки символов и выполнять указанные операции. Вот пример программы:
cpp#include <iostream>
// Функция для дописывания второй строки в конец первой
void appendAndRepeat(std::string& first, const std::string& second) {
// Дописываем вторую строку в конец первой
for (char ch : second) {
first.push_back(ch);
}
// Дописываем вторую строку еще раз в конец первой
for (char ch : second) {
first.push_back(ch);
}
}
int main() {
std::string str1, str2;
// Вводим строки с клавиатуры
std::cout << "Введите первую строку: ";
std::getline(std::cin, str1);
std::cout << "Введите вторую строку: ";
std::getline(std::cin, str2);
// Вызываем функцию для выполнения операций
appendAndRepeat(str1, str2);
// Выводим результат
std::cout << "Результат: " << str1 << std::endl;
return 0;
}
В этом примере мы создали функцию appendAndRepeat
, которая принимает первую строку по ссылке и вторую строку по значению (константную ссылку). Функция сначала дописывает вторую строку в конец первой строке, а затем еще раз повторяет эту операцию. Затем мы вводим две строки с клавиатуры, вызываем функцию и выводим результат на экран.


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









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