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

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

Восстановить пароль Регистрация
 
elephunt
5 / 2 / 1
Регистрация: 24.11.2011
Сообщений: 12
25.11.2011, 04:35     Самый длинный палиндром #1
Помогите написать но только в stdio.h
Самый длинный палиндром
Палдиндром это число которое читается и налево одинаково и на право к примеру 1221 и 1234321 да полидндром но 5678 нет.допустите что цифра это тоже полиндром.
Надо взять х который положительный и целый и вытащить из него самый большой палиндром
Пример1: 5665 он длинный в 4 цифры
он должен написать The longest polindrome found is;5665
Пример2: 12344359 בсамый длинный полиндром он 3443 так что надо чтоб написало The longest polindrome found is 3443
Очень важно и очень по зарез нужно так что если кто то может то пожалйста буду очень ну очень благодарен
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2011, 04:35     Самый длинный палиндром
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Aneron
 Аватар для Aneron
157 / 156 / 12
Регистрация: 20.04.2010
Сообщений: 570
25.11.2011, 09:17     Самый длинный палиндром #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
char _itoa(int x)
{
switch(x):
{
case 0:
return '0';
case 0:
return '0';
case 0:
return '0';
case 0:
return '0';
case 0:
return '0';
}
}
void polidrom(int x)
{
int x; //Your number
char buff[256];// Buffer that contains the string representation of this number.
}
Добавлено через 19 минут
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
int _strlen(char *buff)
{
   int i = 0;
   while(buff[i++]!='\0');
   return i;
}
void _itoa(int n, char s[])
{
   int i, sign;
 
   if ((sign = n) < 0)  /* записываем знак */
      n = -n;          /* делаем n положительным числом */
   i = 0;
   do {       /* генерируем цифры в обратном порядке */
      s[i++] = n % 10 + '0';   /* берем следующую цифру */
   } while ((n /= 10) > 0);     /* удаляем */
   if (sign < 0)
      s[i++] = '-';
   s[i] = '\0';
   reverse(s);
}
void reverse(char s[])
{
   int i, j;
   char c;
 
   for (i = 0, j = _strlen(s)-1; i<j; i++, j--) {
      c = s[i];
      s[i] = s[j];
      s[j] = c;
   }
}
char * polidrom(int x)
{
   int x; //Your number
   char buff[256];// Buffer that contains the string representation of this number.
   int i,j,z;
   _itoa(x,buff);
   char buff_2[256]={0};
   char c = '\0';
   for(i = 0;i < _strlen(buff);++i)
   {
      for(j = i; j < _strlen(buff);++j)
      {
         if(buff[i] == buff[j])
         {
            for(z =0; z < strlen(buff_2);++z)
               if(buff[i] == buff_2[z])
               {
                  c == buff[i];
                  break;
               }
            if(z == strlen(buff_2))
               buff_2(strlen(buff_2)) = buff[i];
         }
      }
   }
   char result[256];
   int shift = c=='\0'?=0:1;
   for(i = 0; i < strlen(buff_2))
   {
      result[i] = buff_2[i];
      result[2*strlen(buff_2)-1+shift] = buff_2[i];
   }
   return result;
}
первый вариант-косяк. случайно отправил.
Yandex
Объявления
25.11.2011, 09:17     Самый длинный палиндром
Ответ Создать тему
Опции темы

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