Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Verificação de tipos


JesusVS

Pergunta

então, eu n sou esse cara que criou o tópico, porem vou utilizar ele caso n haja problemas...

alguém pode me dizer como eu posso provar que o numero digitado é inteiro???

n me lembro qual comando retorna o resto da divisao para fazer isso =/

Editado por JesusVS
Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

ta, mais e se eu pedir um numero inteiro, e o usuário digitar 1,3 intendeu?

mesmo que eu declare a variavel como float, eu presiso fazer um else if(aqui que vou testar o numero digitado para ver se ele é ou n inteiro)...

se n me engano é o DIV que retorna o resto da divisao.....

o programa roda certo e tudu +, porem eu presiso que o programa só saia do laço for se o usuario digita um numero inteiro,ta ae ele:

float calculo (int n)
{
      float s;
      s=n+1;
      return (s);
      }

main()
{
      float n,result;
      int x;
      x=0;
      while(x!=1)
      {
                    printf("Digite um valor inteiro e positivo para n:");
                    scanf("%f",&n);
                    if (n<0)
                    {
                            printf("\nEu falei positivo...");
                            }
                            else if(AQUI TA O PROBLEMA,tentei algumas coisas, porem n consegui ainda)
                            {
                                 printf("\nEu falei inteiro...");
                                 }
                                 else
                                 {
                                     x++;
                                     }
                                     }
                                     result=calculo(n);
                                     printf("O resultado é:%f",result);
                            
                    
                    getch();
                    }

Editado por JesusVS
Link para o comentário
Compartilhar em outros sites

  • 0

já declarei a variavel como int antes, porem o programa roda, e o numero n sai correto, é um exercicio que tenho que fazer para a prova, e é obrigado que o usuario digite numero inteiro, caso digite numeros quebrados (1,2 etc..) o programa deve fazer com que o usuario digite o numero novamente ate que digite um numero inteiro.

como utilizo o modificador unsigned???

Link para o comentário
Compartilhar em outros sites

  • 0

Agora entendi...

Para utilizar o unsigned é assim:

unsigned int variavel;
E o seu código pode ficar assim:
#include <stdio.h>
int main(){
    unsigned int x=0; //esse é nosso inteiro
    float y=0.0; //essa variável só irá fazer os testes
    do{
        printf("Digite um inteiro positivo: ");
        scanf("%f",&y);
        x=y;
    }while(x!=y);
    printf("Numero final: %d",x);
}

O que ocorre é o seguinte: utilizei uma variávei auxiliar para guardar os valores como float e depois copiei esse valor para x, que é unsigned int.

Se x for diferente de y, ocorreu algum problema ao fazer o casting e devemos continuar, já que y não é um inteiro positivo. Caso contrário (x=y), o número é válido.

Link para o comentário
Compartilhar em outros sites

  • 0

consegui, vlw mesmo pela ajuda cara =D

o modificador unsigned é apenas para testar numero positivos?este exercicio já fiz

tenho duvida em outro agora^^

como faco para descobrir raiz quadrada? e como elevaria um numero ao quadrado em c++?

eu tenho no meu caderno que é sqrt, porem esta errado, pode me dizer como é???

s=(SQRT(x2-x1)+(y2-y1));

outra pergunta, tenho que executar esta soma S = 1 + ½ + 1/3 + ¼ + 1/5 + 1/N pode me ajudar?

Editado por JesusVS
Link para o comentário
Compartilhar em outros sites

  • 0

Para raiz quadrada use a função sqrt da math.h.

Exemplo:

printf("Raiz de 2: %f",sqrt(2.0));
Para potência utilize a função pow, também contida na mesma biblioteca. Exemplo:
printf("Quadrado de 2: %f",pow(2,2));
Supondo que queria obter outras raízes ainda pode fazer assim:
printf("\n\nRaiz quinta de 243: %f",pow(243.0,(float)1/5));

Obs.:

Separei seus posts do tópico principal já que a discursão estava tomando outro rumo.

O tópico pode ser marcado como Resolvido ?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...