Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
dart_wader
1 / 1 / 0
Регистрация: 01.01.2011
Сообщений: 19
#1

Доброго времени суток! Есть вопрос. - C++

02.01.2011, 10:36. Просмотров 584. Ответов 5
Метки нет (Все метки)

Ввести строку произвольной длины (<80 символов). Поменять местами первую и вторую половины строки.

P.S. Язык программирования C++.

Заранее благодарен)))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.01.2011, 10:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Доброго времени суток! Есть вопрос. (C++):

Доброго времени суток) Нужно написать программу по шифрованию - C++
Нужно написать прогу в С++ для шифрования и дешифрования текстовых файлов любым способом. Т.е. все должно примерно выглядеть так: ...

Доброго времени суток друзья. Хочу обратится к вам за советом! - C++
С недавних пор стал проявлять интерес к языку программирования с++. Посоветуйте, с чего начать?(литература, среды разработки):friends: До...

Доброго времени суток :curtsy: Надо набрать решение задачки :-* - C++
Пусть D-заштрихованная часть плоскости. Даны действительные числа x,y. Определить u, если u определяется по x и y следующим образом:

Доброго время суток. Как выбрать правильный путь? - C++
Не хотелось бы, что бы тема была похожа на какую то или входил в тот ряд тем, которыми надоедает каждый начинающий программист...

Определение времени суток - C++
Помогите написать программу, которая по введенному числу из промежутка 0…24, определяет время суток. Работаю в Борланд С++

Доброго времени суток, не могли бы вы проверить код? - C++
Дана плотность жидкости и плотность тела. Определить, что произойдет с некоторым телом, опущенным в жидкость. Например, свинец утонет в...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
igorrr37
1646 / 1274 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
02.01.2011, 12:08 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include<iostream>
using namespace std;
 
int main()
{
    string s, s1;
    cout<<"enter string\n";
    getline(cin, s);
    s1=s.substr(s.length()/2, s.length());
    cout<<s1.append(s.substr(0, s.length()/2));
 
}
Добавлено через 15 минут
вот ещё короче
C++
1
2
3
4
5
6
7
8
9
10
11
#include<iostream>
using namespace std;
 
int main()
{
    string s;
    cout<<"enter string\n";
    getline(cin, s);
    cout<<s.substr(s.length()/2, s.length())<<s.substr(0, s.length()/2);
 
}
Mayonez
380 / 272 / 21
Регистрация: 26.12.2009
Сообщений: 875
02.01.2011, 12:21 #3
dart_wader, Darth Vader
Mr.X
Эксперт С++
3049 / 1694 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
02.01.2011, 13:05 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//////////////////////////////////////////////////////////////////////////////////////
//Ввести строку произвольной длины (<80 символов). Поменять местами первую и вторую 
//половины строки.
//////////////////////////////////////////////////////////////////////////////////////
#include <algorithm>
#include <iostream>
#include <string>
//////////////////////////////////////////////////////////////////////////////////////
typedef std::string  T_str;
//////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::cout << "String: ";
    T_str  s;
    getline(std::cin, s);
    std::rotate(s.begin(), s.begin() + s.length() / 2, s.end());   
    std::cout << s
              << std::endl;
}
dart_wader
1 / 1 / 0
Регистрация: 01.01.2011
Сообщений: 19
02.01.2011, 17:27  [ТС] #5
По данной задаче есть вот такое решение, но почему-то программа выдаёт ошибку. Помогите, пожалуйста найти:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream>
using namespace std;
int main(void)
{
    char str[80],one[40],two[40];
    int i,n;
    cin>>str;
    n=strlen(str);
    for(i=0;i<n/2;i++)
    str[i]=one[i];
    strcpy_s(two,&str[n/2]);
    
    strcat_s(two,one);
 
    cout<<str;
}
Минич
66 / 66 / 3
Регистрация: 26.11.2010
Сообщений: 123
02.01.2011, 19:17 #6
Вот так, как минимум надо:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
void main()
{
    char str[81],   // последний символ \0
         one[41],
         two[41];
    int n;  // кол-во символов в строке
    
    cin.getline(str, 81, '\n');
    n = strlen(str);
    for (int i = 0; i < n/2; i++)
        one[i] = str[i];
    one[n/2] = '\0';
    strcpy_s(two, &str[n/2]);
    strcat_s(two, one);
    cout << two;
    system("pause");
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.01.2011, 19:17
Привет! Вот еще темы с ответами:

вопрос о времени - C++
(в консоле visual C++)как написать прогу которая виводит на экран дату и время на тот момент когда прога запускаеться,,,,заранее благодарен

C++ Идёт k-я секунда суток. Определите, сколько целых часов h и целых минут m прошло с начала суток - C++
Идёт k-я секунда суток. Определите, сколько целых часов h и целых минут m прошло с начала суток. Например, если k=13257=33600+4060+57,...

С начала суток часовая стрелка повернулась на "y" градусов. Сколько часов и минут прошло с начала суток? - C++
С начала суток часовая стрелка повернулась на &quot;y&quot; градусов. Сколько часов и сколько минут прошло с начала суток? #include...

Есть вопрос - C++
Вот решил заняться изучением С++. Купил книжку, которая на мой взгляд подойдет для старта, но тут возникла проблема - при покупке мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
02.01.2011, 19:17
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru