Número Quadrado perfeito e capicúa

Publicado por Thiago 29/10/2005

[ Hits: 21.971 ]

Download NumQpCapicua.c




O título é o suficiente.

  



Esconder código-fonte

/* Autor: thiagoamm
   Data: 29/09/2005 */

// Headers (cabeçalhos)
#include<stdio.h>
#include<math.h>

// Início mp
int main()
{
    // Função do número quadrado perfeito.
    int qp(int n)
    {
        int y;
        y = sqrt(n);
        
        if(pow(y,2) == n)
          return(1); // V
        else
          return(0); // F
    }
    
    // Função do número capicúa.
    int capicua(int n)
    {
        int aux,soma;
        aux = n;
        soma = 0;
        
        while(aux != 0)
        {
             soma = soma * 10 + (aux % 10);
             aux = aux / 10;
        }
        if(soma == n)
          return(1); // V
        else
          return(0); // F
    }
    
    int num,option;
    
    printf("\n #########################################################################");    
    printf("\n Opcoes: \n");
    printf("\n 1 --> Verificar se um numero e quadrado perfeito e capicua ao mesmo tempo. \n");
    printf("\n 2 --> Verificar se e quadrado perfeito. \n");
    printf("\n 3 --> Verificar se e capicua. \n");
    printf("\n ----> Informe a opcao: ");
    scanf("%d",&option);
    printf("\n #########################################################################");

    for(num = 1; num <= 300; num++)
    {
       switch(option)
       {
            case 1:
                  if(qp(num) && capicua(num))       
                   printf("\n %d e qp e capicua \n",num);          
                  break;
            case 2:
                  if(qp(num))
                   printf("\n %d e qp \n",num);
                  break;
            case 3:
                 if(capicua(num))
                  printf("\n %d e capicua \n",num);
                 break;
       }     
    }
    printf("\n #########################################################################");
    printf("\n");
}// Fim mp

Scripts recomendados

Validador de CPF

Jogo da Velha (corrigido)

Conversão do número de dias em anos (meu segundo programa em C)

Administração de um Teatro

Intercalador de vetores em NCURSES com memória dinâmica


  

Comentários
[1] Comentário enviado por removido em 29/10/2005 - 20:29h

Pelamordedeus:

a) o que é quadrado perfeito???

b) o que é capicúa ?????


;-))

[2] Comentário enviado por instantware em 30/10/2005 - 17:43h

Número capícua é um número que não se altera quando lido de frente para trás ou de trás para frente, tipo 11, 434, 2882, 12321.


[3] Comentário enviado por fdavid em 09/06/2006 - 07:20h

Autor,

No seu exemplo para encontrar o Quadrado Perfeito voce tira a raiz quadrada e quadra o resultado, porem raiz quadrada e exponenciação são operações inversas, desta forma o resultado da raiz de um numero ao quadrado é igual a ele mesmo.

Até onde pesquisei o que encontrei mais coerente foi que, todo numero QP é positivo e inteiro.

Quando aos numeros capícuos achei estranho o processo mas não depurei atentamente ainda, depois dou minha opção sobre o mesmo.

[4] Comentário enviado por anacatarina em 24/11/2010 - 12:27h

Olá , precisava de uma pequena ajuda de matemática por favor . sera que me podiam ajudar??

Eu preciso de descobrir um número que tem 7 algrismos e começa por 5, é um quadrado perfeito (isto é ;se se multiplicar por si proprio obtem-se um quadrado perfeito) e .. é um capicua. por favor agradecia muito a vossa ajuda , Cumprimentos.


Contribuir com comentário