Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Já que o Kandrade não dá as caras...
Um inteiro positivo é dito palíndromo se sua representação no sistema decimal é a mesma quando lida da esquerda p/ a direita e da direita p/ a esquerda. Para um dado inteiro positivo K com não mais do que 1000000 dígitos, escreva o valor do menor palíndromo maior que K. Os números são sempre impressos sem o zero à esquerda.
Entrada:
A primeira linha contém o inteiro t, o número de casos de teste. Inteiros K são dados nas t linhas seguintes.
Saída:
Para cada K, mostre o menor palíndromo maior do que K.
Alfa-numérico é um conjunto de letras, símbolos de pontuação e números.
E o exercício não menciona em parte alguma conversão entre bases. Não faça o que não existe.
Outra pergunta.
com os numeros :
1.) 123321
2.)01566510
Quais seriam os palíndromos deles?
1.) = 2332, 123321
2.) = 5665, 156651
~
?
Cara, o que você não entendeu da questão?
Não é p/ ficar procurando palíndromos dentro de um inteiro.
Input:
2
808
2133
Output:
818
2222
isto esclareceu minha pergunta.
Mas caro amigo, passar bem.
#!/usr/bin/python
casos_de_teste = input()
limite_inferior = []
for i in range(0, casos_de_teste):
limite_inferior.append(input())
print "\n"
for i in limite_inferior:
j = i+1
while True:
reverso = list(str(j))
reverso.reverse()
if reverso == list(str(j)):
print j
break
j+=1
#include <stdio.h>
#include <math.h>
#include <string.h>
typedef unsigned long tipo_numero;
tipo_numero palindromo(tipo_numero inicio) {
double digitos;
tipo_numero proximo = inicio+1;
tipo_numero dividendo, quociente; dividendo = proximo;
digitos = log10(dividendo);
if (ceil(digitos) != floor(digitos))
digitos = ceil(digitos);
if (digitos == 1)
return dividendo;
while(1) {
quociente = dividendo/(tipo_numero)pow(10,digitos-1);
if (dividendo % 10 == quociente) {
dividendo = (dividendo % (tipo_numero)pow(10,digitos-1)) / 10;
digitos-=2;
if (!digitos || digitos == 1)
return proximo;
} else {
proximo++;
break;
}
};
};
}
int main() {
int casos_de_teste;
do {
scanf("%d", &casos_de_teste);
} while (casos_de_teste < 1);
tipo_numero limite_inferior[casos_de_teste];
int loop;
memset(limite_inferior,0,casos_de_teste*sizeof(tipo_numero));
for(loop = 0; loop < casos_de_teste; loop++)
scanf("%u", &limite_inferior[loop]);
for(loop = 0; loop < casos_de_teste; loop++)
printf("%u\n", palindromo(limite_inferior[loop]));
return 0;
}
(Ainda com limitações de intervalo)
Não entendi bem o exercício mas se for só para saber quem é palíndormo fiz uma solução em php, se for útil para alguém:
<?php
$string="NATAN";
$total=strlen($string);
for ($i=0;$i<=$total;$i++){ $A=$A.$string[$i]; }
for($j=$total;$j>=0;$j--){ $B=$B.$string[$j]; }
echo $A." = ".$B." ?";
echo "<br />";
if ($A==$B){ echo "sao Palíndromos :)";} else{ echo "não são Palíndromos :(";}
?>Eu sei que eu não devia estar fazendo isso, o(a) Isis que me perdoe (duas vezes até), mas é pra você Daniel.
/applications/core/interface/imageproxy/imageproxy.php?img=http://3.bp.blogspot.com/_KwB8ZA2767w/TNRzcoVeS3I/AAAAAAAAAHg/DpnPD5CvfWQ/s400/Carta%2BM%25C3%25A1gica%2BO%2Bt%25C3%25B3pico%2Bque%2BRenasce.JPG&key=43d9cb61845e5703bd517cebd359ff0fe629237bfb2f1e968c8c182fd19e3401" alt="Carta+M%C3%A1gica+O+t%C3%B3pico+que+Renasce.JPG" />
Viu como o tópico é antigo?
Eu vi sim que o tópico é antigo, mas esse tópico não é de ajuda e sim um desafio, que não depende da idade.
Dúvida:
Dado o número Binário
101
Sendo inteiro
Sendo positivo
Sendo idêntido tanto da direita para esquerda quanto esquerda para direita
pode ser dito como um palíndromo ?
Ou estes atributos de inteiro, postivo etc; Devem ser tomados somente após o Numero Binário ser convertido para alfa-numérico ?