Número perfeito e capicúa ?

Publicado por Thiago 30/09/2005

[ Hits: 13.043 ]

Download NumQpCapicua.exe




Nesse fonte verifico se uma quantidade pré-definida de números possui a propriedade de ser quadrado perfeito e capicúa ao mesmo tempo, ou se ele possui uma das propriedades.
Na verificação uso funções.
Este é um fonte editado por mim que teve sua origem a partir de um algoritmo acadêmico.
Qualquer sugestão me enviem um e-mail.

  



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

exercicio basico de aula

Inverte uma frase

Mudar nome do processo

Calcular tempo de download

Função switch q armazena sequencias


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts