Número perfeito e capicúa ?

Publicado por Thiago 30/09/2005

[ Hits: 13.089 ]

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

funcsoma.c - Soma 2 números

Aula basica de C

Simples uso da função rand()

Par ou ímpar

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


  

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