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

Manipulação de Números Inteiros


NoBe

Pergunta

Preciso de um código que pega um número inteiro de 4 posições, como exemplo o ano 2008, e coloque em outras 2 variáveis inteiras também, na 1ª ficaria "20" e na 2ª "08", em todo o momento eu preciso que esses valores se mantenham como inteiros para manipulação dos mesmos.

Consegui fazer com string, mas para isso o número se torna uma string, sendo do tipo char.

Alguma sugestão?

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

#include <stdlib.h>

int quebraInt(char *szNumero, int iReturnID) {
    int iNum;
    char szTemp[2];

    szTemp[0] = szNumero[0+iReturnID*2];
    szTemp[1] = szNumero[1+iReturnID*2];
    iNum = atoi(szTemp);

    return iNum;
}

Arrumado, testei e está funcionando.

iReturnID = 0 retorna os dois primeiros números;

iReturnID = 1 retorna os dois últimos números.

Abraços.

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

  • 0

Obrigado pela dica, mas nem cheguei a testar e como preciso de uma solução em C eu fiz da seguinte maneira:

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

main() {
       int a, b, valor;

       printf("Digite um valor:\n");
       scanf("%d", &valor);
       
       a = (valor / 100);
       b = (valor - (a * 100));
       
       printf("\na = %d, b = %d\n\n", a, b);
       system("pause");
}

Como quero apresentar os valores do mesmo jeito como são digitados, no meu exemplo usando o ano de 2008 ele apresenta "a" como 20 e o "b" apenas o 8, tem como o "b" apresentar o 08, mesmo sendo inteiro?

Link para o comentário
Compartilhar em outros sites

  • 0
no meu exemplo usando o ano de 2008 ele apresenta "a" como 20 e o "b" apenas o 8, tem como o "b" apresentar o 08, mesmo sendo inteiro?

NoBe, experimente:

printf("\na = %02d, b = %02d\n\n", a, b);

O 2 indica o tamanho (mínimo) de casas com que o número será formatado, enquanto o 0 indica que este será o caracter a ser utilizado no preenchimento (à esquerda) quando for necessário completar o tamanho especificado (do contrário, seria espaço).

você encontra esta informação no help se teclar F1 em printf, mas pode também dar uma olhada neste link.

Abraços

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...