• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

ordepavr

Capicua

4 mensagens neste tópico

Boas, eu penso que esta dúvida ainda não foi exposta e peço desde ja descullpa se ja foi.

Eu tenho que fazer um programa em que insiro um conjunto de números e o programa tem que me dizer se este é uma capicua ou não.

tenho isto para saber kual é cada numero (função para inverter numeros)

int inverte(int x)
{  
   int inv=0;
   do{
      inv=inv*10+(x%10);
      x=x/10;
      }while(x>0);
      return (inv);
}

agora tenho que o alterar de forma a fazer do tipo:

insiro 343 e ele diz capicua

insiro 433 e ele diz nao capicua

alguem me pode ajudar?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

já reparaste que inverte(343) == 343 e que invert(433) != 433?

a única coisa que precisas é

if (inverte(x) == x) { /* capicua */ } else { /* não capicua */ }

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Capicua em linguagem C:

#include <stdio.h>
#include <stdlib.h>

int inverte(int x)
{  
   int inv=0;
   do{
      inv=inv*10+(x%10);
      x=x/10;
      }while(x>0);
      return (inv);
}

main()
{
            int x;
            printf("Introduza o numero a verificar:\n");
            scanf("%d",&x);
            if(inverte(x)==x){
                   printf("Capicua!\n");
            }else
                    printf("Nao e capicua\n"); 
                    system("pause");
}

                                                   

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora