[C++]числа палендромы - Форум
Пятница, 09.12.2016, 06:50
Задачи по информатике
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: ignorer, KOT_B_MEIIIKE, PASCAL26, atvrider 
Форум » Решение задач по информатике » Задачи по программированию + блок-схемы » [C++]числа палендромы (ПАЛЕНДРОМЫ)
[C++]числа палендромы
SnowmanДата: Суббота, 07.05.2011, 18:59 | Сообщение # 1
Подполковник
Группа: Новичок
Сообщений: 21
[ 0 ]
Статус: Offline
Пожалуйста помогите мне решить всего одну задачу.Она мне не даётся:
Даны два натуральных числа. Выяснить, является ли хоть одно из них палиндромом ("перевертышем"), т. е. таким числом, десятичная запись которого читается одинаково слева направо и справа налево. (Определить функцию, позволяющую распознавать числа-палиндромы.)
Заранее огромное спасибо.
 
Developer1Дата: Воскресенье, 08.05.2011, 02:48 | Сообщение # 2
Подполковник
Группа: Заблокированные
Сообщений: 24
[ 0 ]
Статус: Offline
Могу сделать
icq: 588002847
email: flash_1989@ukr.net
skype: rfhfcerf
 
roguДата: Понедельник, 09.05.2011, 18:22 | Сообщение # 3
Генерал-лейтенант
Группа: Новичок
Сообщений: 52
[ 1 ]
Статус: Offline
Идея в том чтобы сравнить цифры из числа, для этого надо получить эти цифры , делаем это так
Если число 44344 и нам надо определить цифру посредине(например)-у нее третий порядковый номер
Тогда находим остаток от деления числа на 10^3-(тройка порядковый номер цифры) получим число 344, потом целочисленно делим его 100 или 10^(3-1) и получаем в результате -3 . Бинго
Code
#include "stdafx.h"
#include <iostream>
#include<conio.h>
#include<math.h>
int _tmain(int argc, _TCHAR* argv[])
{
   
  int a =5343; int r6=1;float e=1;int D,p,m,t;bool b=true;
   int N=0;int k=0;int A,B;
   std::cout<<"Enter integer\n";  
   std::cin>>a;
   while(a/r6>0)
  {
   //e=pow((float)10,k);
   r6=(int) pow((float)10,k)  ;
   k++;  N++;
  }
   
  std::cout<<N-1<<"  Length integer\n";;
  N--;
int n =N/2;
for(int i=1;i<=n;i++)
{
if(i==1)
{
A=a%10;
B=a/(int)pow((float)10,N-1);
}
else
{
p=(int)pow((float)10,i);   t=(int)pow((float)10 ,i-1);
A=(a%p)/t;
D=(int)pow((float)10,N-i+1);
m=(int)pow((float)10,N-i);
B=(a%D)/m;
}
if(A!=B)  
{
std::cout<<"No palindrom\n";
b=false;
break;
}
}
if (b)
std::cout<<"palindrom\n";
  getch();
  return 0;
}
 
Форум » Решение задач по информатике » Задачи по программированию + блок-схемы » [C++]числа палендромы (ПАЛЕНДРОМЫ)
Страница 1 из 11
Поиск:

Copyright MyCorp © 2016