Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка целого числа на "зеркальность" 
:(
    Опции темы
paSha_X
Дата 14.12.2006, 04:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 80
Регистрация: 5.12.2006
Где: Беларусь, Минск

Репутация: 1
Всего: 2



Скажите пжалста, допустим мне дано 
int a=121;
Как проверяются целые числа на "зеркальность", т.е. справа-налево и слева-направо читаются одинаково?
PM MAIL WWW IM ICQ AOL YIM MSN   Вверх
Earnest
Дата 14.12.2006, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 53
Всего: 183



Преобразовать в строку и сравнивать посимвольно спереди и сзаду, пока не найдешь разницу или не сойдешься.




--------------------
...
PM   Вверх
Voldemar2004
Дата 14.12.2006, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1650
Регистрация: 25.12.2004

Репутация: нет
Всего: 23



Код
#include <iostream>

#include <string>

//---------------------------------------------------------------------------
int main()
{

std::string my, buf;

my = "651156"; buf = my;

!strcmp( strrev( (char*)my.c_str()) , (char*)buf.c_str()  ) ? std::cout << buf : std::cout << "No";

return 0;
}
//---------------------------------------------------------------------------



--------------------
i_i 
(';') 
(V)

user posted image
PM MAIL   Вверх
zabivator
Дата 14.12.2006, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 7.6.2006
Где: нск

Репутация: 1
Всего: 2



Voldemar2004, тогда уж так:
Код

#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
bool mirror( int number )
{
   std::ostringstream s;
   s<<number;
   return s.str().reverse() == s.str();
}
//---------------------------------------------------------------------------
int main()
{
std::cout<< mirror(651156)  ? 651156 : "no";
return 0;
}

--------------------
#include <zabivator>int main( int, char * [] ){   while( Zabivator::жив() ) Zabivator::моск()++;   return 0;}
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0854 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.