0 / 0 / 0
Регистрация: 16.08.2018
Сообщений: 37
1

Перевернуть строку символов

30.08.2018, 14:46. Показов 4060. Ответов 9
Метки нет (Все метки)

Напишите программу, которая запрашивает строку символов, состоящую только из латинских букв, и выводит её в развёрнутом виде.
Sample Input 1:

abcdefghijklmnopqrstuvwxyz
Sample Output 1:

zyxwvutsrqponmlkjihgfedcba
Sample Input 2:

aaaaaaaaaaaaaaaaaaaab
Sample Output 2:

baaaaaaaaaaaaaaaaaaaa

вот мой код дальше додуматься не могу что писать.
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
using namespace std;
int main() {
    string s;
    cin>>s;
    int n;
    n=s.lenght();
    for (int i=0; i<n; i--){
        if(....
  return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.08.2018, 14:46
Ответы с готовыми решениями:

Ввести с клавиатуры строку символов. Перевернуть каждое четное слово в строке.
Есть задание. Ввести с клавиатуры строку символов. После чего Перевернуть каждое четное слово в...

Перевернуть строку
всем привет! помогите, плиз: Введённую с клавиатуры строку А записать в обратном порядке в...

Перевернуть строку
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; int main() { setlocale(LC_ALL,...

Перевернуть строку
Данн текст. Необходимо вывести его буквы в обратном порядке. типо ввожу &quot;первое предложение&quot;, а...

9
391 / 259 / 194
Регистрация: 02.05.2017
Сообщений: 1,003
30.08.2018, 15:01 2

Не по теме:

std::reverse


Ну или начинай цикл не с нуля, а с последнего символа (n-1) и до тех пор,пока i >= 0 спускайся на один символ (--i) и печатай его.
0
652 / 456 / 212
Регистрация: 06.09.2013
Сообщений: 1,264
30.08.2018, 15:05 3
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
#include <string>
 
int main() {
    std::string line;
    std::getline(std::cin, line);
    for(auto it = line.rbegin(); it != line.rend(); ++it) 
        std::cout << *it;        
}
0
1 / 0 / 1
Регистрация: 01.10.2015
Сообщений: 58
30.08.2018, 15:11 4
Под рукой нет компилятора.
Но я думаю надо
C++
1
cin
надо использовать внутри массива, для его заполнения - считать его. А далее надо развернуть массив в условии, т.е. в скобках
C++
1
for(i=n; i > 0; i--)
в обратную сторону и использовать
C++
1
cout
.
0
7421 / 5016 / 2890
Регистрация: 18.12.2017
Сообщений: 15,694
30.08.2018, 16:50 5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream> 
#include <string>
using namespace std;
 
int main()
{
    string s;
    cout << "String:\n";
    getline(cin, s);    
    int m=s.size();    
    for (int i=m-1; i>=0; i--)
    cout <<s[i];
    cout <<endl;
system("pause");
return 0;
}
0
2 / 2 / 0
Регистрация: 29.10.2015
Сообщений: 46
31.08.2018, 15:37 6
woldemas, мне кажется, что если человек задает вопросы по такой задаче - то итератор ему не знаком
0
375 / 202 / 122
Регистрация: 21.02.2011
Сообщений: 4,327
31.08.2018, 15:55 7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
#include <algorithm>
 
int main()
{
   std::string str = "string";
   
   std::reverse(str.begin(), str.end());
   
   std::cout << str << std::endl;
 
   return 0;
}
вообще, учитесь юзать поиск форума: Перевернуть строку
0
woldemas
31.08.2018, 15:58
  #8

Не по теме:

Цитата Сообщение от Kverza Посмотреть сообщение
woldemas, мне кажется, что если человек задает вопросы по такой задаче - то итератор ему не знаком
Вот и познакомятся.

0
2756 / 1910 / 569
Регистрация: 05.06.2014
Сообщений: 5,560
31.08.2018, 18:16 9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void reverse()
{
    char c=std::cin.get();
    if(c!='\n')
    {
        reverse();
        std::cout.put(c);
    }
}
 
int main()
{
    reverse();
    return 0;
}
0
2 / 2 / 2
Регистрация: 31.10.2017
Сообщений: 19
01.09.2018, 10:54 10
Может использовать не string, массив char?
Тогда можно найти \0 и печатать при помощи цикла в обратном порядке.
Код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include<iostream>
#include<conio.h>
#include<Windows.h>
#include<cstring>
 
using namespace std;
 
int main()
{
    SetConsoleOutputCP(1251);
    SetConsoleCP(1251);
 
    char str[100];
    char x = '\0';
    int Oppa;
 
    cout << "Введите вашу строку : ";
    cin.getline(str, 100);
 
    //cout << str;
 
    for (int y = 0; y < 100; y++)
    {
        if (str[y] == x)
        {
            Oppa = y;
            break;
        }
        else
        {
            continue;
        }
 
    }
 
    system("cls");
 
    //cout << Oppa;
 
    cout << "Ваша срока с конца : \n \t";
 
    for (int z = Oppa; z >= 0; z--)
    {
        cout << str[z];
    }
 
    _getch();
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.09.2018, 10:54
Помогаю со студенческими работами здесь

Перевернуть строку
Написал программу которая переворачивает строку #include&lt;iostream&gt; #include&lt;cstring&gt; using...

Перевернуть строку
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; int main() { setlocale(LC_ALL,...

Перевернуть строку
Написать функцию, которая переставляет символы строки по принципу обмена первого и последнего,...

Написать программу, которая вводит с клавиатуры строку не более 100 символов, еще одну строку не более 50 символов и выводит на экран позиции вхождени
Задание: Написать программу, которая вводит с клавиатуры строку не более 100 символов, еще одну...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru