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

Слова-палиндромы - C++

Восстановить пароль Регистрация
 
Chuba
0 / 0 / 0
Регистрация: 28.11.2012
Сообщений: 11
17.04.2013, 23:25     Слова-палиндромы #1
Эта прога должна выводить все слова-палиндромы (которые читаются одинаково задом наперед так же, как и в нормальном вигляде) в рядке, который я ввожу. Вместо COUT<<MAS в условии знизу должно выводить все слова-палиндромы. У меня программа почему-то не хочет работать...Может вы поможете??? Заодно и вывидите мне все слова...



#include<iostream>
using namespace std;

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int main(){
    char mas[50];
    gets(mas);
    int j=0;
    for(int i=0; i<50; i++){
        int p=0;
        if(int(mas[i])==32 || mas[i]=='\0'){              //если ПРОБЕЛ (код пробела 32) или КОНЕЦ записи
            for(; j<i; j++){
                if(mas[j]==mas[i-1-j]) p=1;
                else p=0;
            }
            j=i+1;
        }   
        if(p==1 && (int(mas[i])==32 || mas[i]=='\0'))
                //COUT<<MAS;
        if(mas[i]=='\0') break;
    }
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2013, 23:25     Слова-палиндромы
Посмотрите здесь:

C++ Приложение распознающее слова палиндромы
C++ Приложение распознающее слова палиндромы
C++ Написать программу, которая выделяет любим способом в тексте слова палиндромы (слова, которые читаются одинаково справа налево и слева направо)
Слова-палиндромы в тексте C++
слова-палиндромы C++
Даны три слова. Определить палиндромы C++
Дана строка, содержащая разделенные пробелами слова, вывести все слова-палиндромы C++
C++ Найти в файле слова-палиндромы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Людвиг Бодмер
 Аватар для Людвиг Бодмер
212 / 209 / 70
Регистрация: 29.03.2013
Сообщений: 555
Завершенные тесты: 2
18.04.2013, 10:06     Слова-палиндромы #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <string>
#include <algorithm>
#include <iostream>
int main()
{
    std::string s;
    std::cin >> s;
    if( equal(s.begin(), s.begin() + s.size()/2, s.rbegin()) )
        std::cout << "is a palindrome.\n";
    else
        std::cout << "is NOT a palindrome.\n";
}
еще вариант:
C++
1
2
3
4
5
6
7
8
string input;
 
cout << "Please enter a string: ";
cin >> input;
 
if (input == string(input.rbegin(), input.rend())) {
    cout << input << " is a palindrome";
}
Yandex
Объявления
18.04.2013, 10:06     Слова-палиндромы
Ответ Создать тему
Опции темы

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