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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
klimentij
0 / 0 / 0
Регистрация: 06.10.2012
Сообщений: 10
#1

Проверить число на палиндром! - C++

13.10.2012, 13:32. Просмотров 1377. Ответов 2
Метки нет (Все метки)

Добрый день! Есть программа но нужно исправить одну проблему, программа проверяет число на палиндром!


Проверить число на палиндром!

Проверяет правильно когда число не длинное!


Проверить число на палиндром!

Если ввести длинное тогда выдаёт неправильный ответ!


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
#include <iostream>
using namespace std;
 
bool palindroms( int val ) {
   int tmp1 = 0,
       tmp2 = val;
 
   while ( val ) {
      tmp1 = tmp1 * 10 + val % 10;
      val /= 10;
   }
   
   return ( tmp1 == tmp2 );
}
 
int main() {
    
   int cislo; 
   
   cout << "\t Programma proverajet cislo na palindrom!\n\n";
   cout << "Vvedite cislo: "; 
   cin >> cislo;
 
   if ( palindroms( cislo ))
      cout << "\n cislo palindrom!\n" <<endl;
   else
      cout << "\n cislo ne palindrom!\n" <<endl;
   system("pause");
   return 0;
 
}

Нужно сделать чтобы проверял любой длинны числа!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.10.2012, 13:32     Проверить число на палиндром!
Посмотрите здесь:

C++ Палиндром и автоморфное число
Найти отрезок массива-палиндром, в котором первое число равно последнему, второе предпоследнему и т.д. C++
Число-палиндром C++
C++ Число палиндром
Дано натуральное число N. Определить, является ли оно палиндромом. Число-палиндром можно читать справа налево и слева направо одинаково. Например, C++
Написать программу которая по заданному n проверяет число на палиндром C++
Дано целое положительное число. Проверить истинность высказывания: «Данное число является четным двузначным» C++
Функции. Проверить, простое число или нет. Увеличить его значение на натуральное число M. Проверить, осталось ли оно простым C++
Если число - не палиндром, перевернуть и сложить с изначальным. Повторять, пока оно не станет палиндромом C++
C++ Найти число-палиндром, больший введенного числа
Пользователь вводит с клавиатуры две границы диапазона и число. Проверить, попадает ли число в диапазон C++
Число с нулем в начале как палиндром (0440) C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
Форумчанин
Эксперт С++
4470 / 2832 / 224
Регистрация: 12.12.2009
Сообщений: 7,202
Записей в блоге: 1
Завершенные тесты: 1
13.10.2012, 13:36     Проверить число на палиндром! #2
Сделай через строки. Читаешь число в строку как последовательность символов и потом просто при помощи строковых функций проверяешь является ли это число полиндромом. Еще можно добавить функцию, которая будет проверять, что срока содержит только цифры.
John Prick
765 / 698 / 127
Регистрация: 27.07.2012
Сообщений: 2,000
Завершенные тесты: 3
13.10.2012, 13:38     Проверить число на палиндром! #3
C++
1
int cislo;
тип int у нас в большинстве случаев кодируется 4 байтами. Значит максимальное число, которое в него можно записать: 2147483646, а в случае unsigned int: 4294967294.
Yandex
Объявления
13.10.2012, 13:38     Проверить число на палиндром!
Ответ Создать тему
Опции темы

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