0 / 0 / 0
Регистрация: 30.04.2014
Сообщений: 77
1

Проверка числа на симметричность цифр

29.06.2014, 14:33. Показов 10093. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Определить, является ли n>0 симметричным в десятичной записи. Например число 4664 симметрично
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.06.2014, 14:33
Ответы с готовыми решениями:

Сравнение 1 и 2 цифр числа и проверка числа на наличие одинаковых цифр
нужно создать заголовочный файл, в котором будет функция сравнивающая первую и вторую цифру числа,...

Проверка на симметричность слова
void main() { char line; printf("vvedite stroku\n"); scanf("%s",line); for (int...

Проверка матрицы на симметричность
Помогите с лабой. Двумерный динамический массив нужно заполнить случайными числами и вывести...

проверка на симметричность матрицы
uses crt; const n=10; var a: array of integer; i,j,s,s1:integer; procedure zapoln; begin...

10
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
29.06.2014, 14:45 2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
unsigned u;
scanf("%u", &u);
char s[10];
sprintf(s, "%u", u);
size_t l = strlen(s);
for (size_t i=0; i < l/2; ++i) {
    if (s[i] != s[l-1-i]) {
       printf("false");
       return 0;
    }
}
printf("true");
return 0;
0
0 / 0 / 0
Регистрация: 30.04.2014
Сообщений: 77
29.06.2014, 14:47  [ТС] 3
а что значит
Цитата Сообщение от Jewbacabra Посмотреть сообщение
sprintf
,
Цитата Сообщение от Jewbacabra Посмотреть сообщение
size_t l = strlen(s);
и зачем нужен массив символов? мне же просто число одно дается
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
29.06.2014, 14:49 4
Цитата Сообщение от Bestear Посмотреть сообщение
а что значит sprintf
в этом примере использую для преобразование числа в строку
Цитата Сообщение от Bestear Посмотреть сообщение
и зачем нужен массив символов? мне же просто число одно дается
представить число в виде строки и сравнивать 1 символ с последним, 2 с предпоследним и т.д
0
0 / 0 / 0
Регистрация: 30.04.2014
Сообщений: 77
29.06.2014, 14:51  [ТС] 5
а без массива никак нельзя?=)
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
29.06.2014, 15:04 6
Bestear, можно и без массива
вот функция считает количество цифр в числе
C
1
2
3
4
5
6
7
8
9
unsigned getDigitNum(unsigned n) {
         if (!n) return 1;
         unsigned i=0;
         while (n) {
               ++i;
               n /= 10;
         }
         return i;
}
вот получает цифру p числа n. p начинается с 0 и считается с конца числа
C
1
2
3
4
5
unsigned getDigit(unsigned n, unsigned p) {
         unsigned d = 1;
         for (int i=0; i < p; ++i, d*=10);
         return (n/d)%10;
}
0
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,512
29.06.2014, 15:09 7
Bestear,
у вас эпидемия?
на днях тема была
Нахождение всех симметричных чисел в 4-х значном числе
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12454 / 7479 / 1752
Регистрация: 25.07.2009
Сообщений: 13,749
29.06.2014, 20:08 8
Цитата Сообщение от ValeryS Посмотреть сообщение
на днях тема была
Тут эта "тема" в зависимости от сезона от раза в неделю до трёх раз в день появляется - кнопку "поиск" не видно, даже если её строго по центру экрана повесить...
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
 
unsigned reversed(unsigned n) {
    unsigned r = 0;
    
    for ( ; n; n /= 10 )
        r = r * 10 + n % 10;
    
    return r;
}
 
int main(void) {
    unsigned n;
    
    while ( printf("Number: ") && scanf("%u", &n) == 1 )
        printf("%s\n", ( n == reversed(n) ) ? "YES" : "NO");
    
    return 0;
}
0
ValeryS
29.06.2014, 20:22
  #9

Не по теме:

Цитата Сообщение от easybudda Посмотреть сообщение
кнопку "поиск" не видно, даже если её строго по центру экрана повесить...
:D
Цитата Сообщение от easybudda Посмотреть сообщение
Тут эта "тема" в зависимости от сезона от раза в неделю до трёх раз в день появляется
интересно:scratch:
а это люди из одного учебного заведения?
или на просторах бывшего СССР одно задание дают?

0
430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
30.06.2014, 16:07 10
Если речь идет только о четырехзначных числах:

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
32
33
34
35
36
37
38
#include "greatest.h"
 
// tested code begins
 
#include <stdbool.h>
 
bool is_mirror(int x)
{
    return x / 100 == ((x % 100) / 10) + ((x % 10) * 10);
}
 
// tested code ends
 
TEST number_4664_is_mirror()
{
    ASSERT(is_mirror(4664));
    PASS();
}
 
TEST number_4665_isnt_mirror()
{
    ASSERT_FALSE(is_mirror(4665));
    PASS();
}
 
SUITE(the_suite)
{
    RUN_TEST(number_4664_is_mirror);
    RUN_TEST(number_4665_isnt_mirror);
}
 
GREATEST_MAIN_DEFS();
 
int main(int argc, char **argv) {
    GREATEST_MAIN_BEGIN();      /* command-line arguments, initialization. */
    RUN_SUITE(the_suite);
    GREATEST_MAIN_END();        /* display results */
}
0
1642 / 1091 / 487
Регистрация: 17.07.2012
Сообщений: 5,345
30.06.2014, 19:04 11
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <conio.h>
main()
{
      long n,a,b=0;
      printf("Введите число:");
      scanf("%d",&n);
      a=n;
      while (a!=0)
      {
            b=b*10+a%10;
            a/=10;
      }
      printf((n==b) ? "Число симметричное." : "Число не симметричное.");
      getch();
}
Добавлено через 1 минуту
Без массива, без функций. Проще некуда.
0
30.06.2014, 19:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.06.2014, 19:04
Помогаю со студенческими работами здесь

Проверка на симметричность через стек
Дана строка чётной длины. Через стек проверить симметрична она или нет. Вот, написал. #include...

Проверка последовательности символов на симметричность
Уважаемые пользователи, помогите пожалуйста. Необходимо реализовать структуру проверки...

Проверка строки матрицы на симметричность
Как проверить строку матрицы на симметричность, если строка симметрична то в вектор b занести 1...

Рекурсия: проверка массива на симметричность
вобщем задание я думаю понятно из названия темы.. нужно проверить одномерный массив на...

Не работает проверка слова на симметричность
Задача такова: Дана непустая последовательность слов (не более 50). в каждом слове не более 8...

Проверка квадратной матрицы на симметричность
Помогите сделать программу, вот мой код: #include &quot;stdafx.h&quot; #include &quot;stdio.h&quot; #include...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru