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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.84
KIBERasya
0 / 0 / 0
Регистрация: 24.01.2011
Сообщений: 9
#1

симметричное число - C++

24.01.2011, 13:53. Просмотров 2668. Ответов 5
Метки нет (Все метки)

пытаюсь определить, является ли 4-х значное число палиндромом. что я здесь не так делаю?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
 
int main()
{
    int a;
    cin>>a;
    int rev = 0;
    rev += rev*10 + a%10;
    
    cout<<(a==rev ? "yes" : "no");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.01.2011, 13:53     симметричное число
Посмотрите здесь:

C++ Найти во введённом тексте самое длинное симметричное слово
Написать функцию, находящую в строке символов симметричное слово. C++
Симметричное слово C++
C++ Написать функцию, находящую в строке символов симметричное слово.
C++ Найти все десятизначные числа с неповторяющимися цифрами, при делении которых на 9 получается симметричное частное
C++ Симметричное число
C++ Симметричное число
C++ Во введенном тексте найти самое длинное симметричное слово
C++ В массиве найти самое большое симметричное число
C++ В строке найти самое длинное симметричное слово
C++ Найти самое длинное симметричное слово в строке
C++ Найти количество столбцов матрицы, где есть хоть одно симметричное число

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
24.01.2011, 13:55     симметричное число #2
Цитата Сообщение от KIBERasya Посмотреть сообщение
rev*10
=0. Ты только что обнулил rev.
KIBERasya
0 / 0 / 0
Регистрация: 24.01.2011
Сообщений: 9
24.01.2011, 13:56  [ТС]     симметричное число #3
а может так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
 
int main()
{
    int a;
    cin>>a;
    int rev = 0;
    rev += a%10;
    a /=10;
    cout<<(a==rev ? "1" : "37");
    return 0;
}
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
24.01.2011, 14:03     симметричное число #4
a=1221. На строке № 9 rev =1, а надо 12. На строке 10 a=122, а надо 12.
a=1223. На строке № 9 rev =3, а надо 32. На строке 10 a=122, а надо 12.

Добавлено через 4 минуты
То есть тебе нужны двузначные числа. a/100 и (a%100), причём, в одном из них перед сравнением надо переставить знаки местами. То есть rev=(a%10)*10+(a/10)%10.
easybudda
Эксперт С++
9455 / 5468 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
24.01.2011, 14:08     симметричное число #5
Цитата Сообщение от KIBERasya Посмотреть сообщение
а может так?
ага, только это нужно в цикле делать
C++
1
2
3
4
5
6
7
...
int a, b, c;
cin >> a;
for ( b = a, c = 0; b; b /= 10 )
  c += c * 10 + b % 10;
cout << "Is " << ( c == a ? "" : "NOT " ) << "a palindrom" << endl;
...
murod
-2 / 7 / 2
Регистрация: 04.11.2010
Сообщений: 163
24.01.2011, 14:14     симметричное число #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<iostream>
 
using namespace std;
 
int main()
{
    int n, a, b, c, d;
    cin >> n;
        a = n / 1000;
        b = (n / 100) % 10;
        c = (n / 10) % 10;
        d = (n % 10);
       if (a == d && b == c)
        cout << "YES";
        else
        cout <<"NO";
        return 0;
}
Yandex
Объявления
24.01.2011, 14:14     симметричное число
Ответ Создать тему
Опции темы

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