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

Вывести строку задом наперед - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
MasterYo
 Аватар для MasterYo
1 / 1 / 0
Регистрация: 07.07.2013
Сообщений: 39
17.07.2013, 15:15     Вывести строку задом наперед #1
1)Пользователь вводит строку данных программа выводит из нее только цифры.
2)Вывести строку задам на перед.

C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <conio.h>
using namespace std;
 
int main
{
char name[10];
cout<<"Insert 10 symbols with numbers please: ";
cin>>name;
...... // что дальше делать? заранее спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Мимино
 Аватар для Мимино
180 / 151 / 5
Регистрация: 22.05.2013
Сообщений: 435
Записей в блоге: 1
17.07.2013, 15:18     Вывести строку задом наперед #2
Есть функция в ctype.h
isdigit(ch) возвращает ненулевое значение, если аргумент ch является цифрой от 0 до 9, в противном случае возвращается 0.
Belfegor
Ghost
 Аватар для Belfegor
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 524
17.07.2013, 15:21     Вывести строку задом наперед #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
 
using namespace std;
 
int main() {
    char s[10];
    cin >> s;
    for (int i = 0; i < 10; i++) {
        if (s[i] >= '0' && s[i] <= '9')cout << s[i] << endl;
    }
    return 0;
}
MasterYo
 Аватар для MasterYo
1 / 1 / 0
Регистрация: 07.07.2013
Сообщений: 39
17.07.2013, 15:22  [ТС]     Вывести строку задом наперед #4
Мимино, спасибо вам, но я об этом знал, а нельзя сделать по другому?
Belfegor
Ghost
 Аватар для Belfegor
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 524
17.07.2013, 15:23     Вывести строку задом наперед #5
Цитата Сообщение от MasterYo Посмотреть сообщение
2)Вывести строку задам на перед.
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <algorithm>
using namespace std;
 
int main() {
    string s;
    cin >> s;
    reverse(s.begin(), s.end());
    cout << s << endl;
    return 0;
}

Не по теме:

задОм

MasterYo
 Аватар для MasterYo
1 / 1 / 0
Регистрация: 07.07.2013
Сообщений: 39
17.07.2013, 15:24  [ТС]     Вывести строку задом наперед #6
Belfegor, спасибо вам!

Добавлено через 37 секунд
Цитата Сообщение от Belfegor Посмотреть сообщение
Не по теме:
задОм
спешил сори
MasterYo
 Аватар для MasterYo
1 / 1 / 0
Регистрация: 07.07.2013
Сообщений: 39
17.07.2013, 15:32  [ТС]     Вывести строку задом наперед #7
Цитата Сообщение от Belfegor Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <algorithm>
using namespace std;
 
int main() {
    string s;
    cin >> s;
    reverse(s.begin(), s.end());
    cout << s << endl;
    return 0;
}

Не по теме:

задОм

А можно как нибудь без подключение алгоритма сделать?
Belfegor
Ghost
 Аватар для Belfegor
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 524
17.07.2013, 15:39     Вывести строку задом наперед #8
Цитата Сообщение от MasterYo Посмотреть сообщение
без
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <string>
using namespace std;
 
int main() {
    string s;
    cin >> s;
    for (int i = s.length() - 1; i >= 0; i--) {
        cout << s[i];
    }
    cout << endl;
    return 0;
}
EnRJ
1 / 1 / 0
Регистрация: 17.07.2013
Сообщений: 9
17.07.2013, 15:42     Вывести строку задом наперед #9
Цитата Сообщение от MasterYo Посмотреть сообщение
А можно как нибудь без подключение алгоритма сделать?
Можно (зная количество символов, так как у вас в проге char name[10]) просто с помощью вспомогательного массива явно поменять местами елементы..
C++
1
2
3
4
5
6
7
char temp[10];
k = 9;
for(int i=0;i<10;i++)
{
   temp[k] = name[i];
   k--;
}
MasterYo
 Аватар для MasterYo
1 / 1 / 0
Регистрация: 07.07.2013
Сообщений: 39
17.07.2013, 15:44  [ТС]     Вывести строку задом наперед #10
Цитата Сообщение от Belfegor Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <string>
using namespace std;
 
int main() {
    string s;
    cin >> s;
    for (int i = s.length() - 1; i >= 0; i--) {
        cout << s[i];
    }
    cout << endl;
    return 0;
}


Добавлено через 1 минуту
Цитата Сообщение от EnRJ Посмотреть сообщение
Можно (зная количество символов, так как у вас в проге char name[10]) просто с помощью вспомогательного массива явно поменять местами елементы..
C++
1
2
3
4
5
6
7
char temp[10];
k = 9;
for(int i=0;i<10;i++)
{
   temp[k] = name[i];
   k--;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.07.2013, 17:52     Вывести строку задом наперед
Еще ссылки по теме:

Вывести вписанное пользователем слово задом наперед C++
Вывести предложение, в котором каждое слово будет задом наперед C++
Вывести буквы в словах строки задом-наперед C++

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

Или воспользуйтесь поиском по форуму:
jurok_85
226 / 209 / 70
Регистрация: 21.02.2013
Сообщений: 494
17.07.2013, 17:52     Вывести строку задом наперед #11
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <string>
#include <cctype>
#include <algorithm>
 
using namespace std;
 
int main()
{
   string str;
 
   getline(cin, str);
    cout<< "ciframi javljajutsa: " << endl;
   for(string::iterator it = str.begin();it != str.end(); it++)
   if (isdigit(*it))
   cout <<  *it;
 
   cout<< "\nzadom napered : " << endl;
   reverse(str.begin(), str.end());
   cout << str;
 
    return 0;
}
Yandex
Объявления
17.07.2013, 17:52     Вывести строку задом наперед
Ответ Создать тему
Опции темы

Текущее время: 02:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru