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

comando de divisão esta errado


Rafablum

Pergunta

Ola, Pessoal,

Desculpa se estou me expressando errado nos comando, é que sou novo em C, e queria a ajuda de vocês.

Tenho um trabalho que tenho que colocar 2 numero e mostrar o resultado deles nas quatro operações, mas na divisão não esta saindo certo. Tipo:

7/2 o resultado seria 3.5, mas esta dando 3

Me ajudem e obrigado!

#include<stdlib.h>

#include<stdio.h>

int main(){

int numero1, numero2, soma, subtracao, multiplicacao, divisao;

printf("informe o primeiro numero: \n");

scanf("%d", &numero1);

printf("informe o segundo numero: \n");

scanf("%d", &numero2);

soma = numero1+numero2;

subtracao = numero1-numero2;

multiplicacao = numero1*numero2;

divisao = numero1/numero2;

printf ("valor da soma é: %d \n", soma);

printf ("valor da subtracao é: %d \n", subtracao);

printf ("valor da multiplicacao é: %d \n", multiplicacao);

printf ("valor da divisao é: %d \n", divisao);

system("pause");

}

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
Isso acontece porque você declarou a variável do tipo int / inteiro. Logo, o resultado não terá a parte fracionária

Use o tipo float e %f no printf

Funcionou mesmo, só que agora as outras operações de soma, subt e multipli, deram zero.

Coloquei float no lugar de int e %f

como ficaria?

Link para o comentário
Compartilhar em outros sites

  • 0
Isso acontece porque você declarou a variável do tipo int / inteiro. Logo, o resultado não terá a parte fracionária

Use o tipo float e %f no printf

Funcionou mesmo, só que agora as outras operações de soma, subt e multipli, deram zero.

Coloquei float no lugar de int e %f

como ficaria?

As outras operações você pode deixar como int e %d.

E na atribuição da divisao, use um cast para forçar a divisão do tipo float no primeiro numero,

divisao = (float)numero1 / numero2;

Link para o comentário
Compartilhar em outros sites

  • 0
Isso acontece porque você declarou a variável do tipo int / inteiro. Logo, o resultado não terá a parte fracionária

Use o tipo float e %f no printf

Funcionou mesmo, só que agora as outras operações de soma, subt e multipli, deram zero.

Coloquei float no lugar de int e %f

como ficaria?

As outras operações você pode deixar como int e %d.

E na atribuição da divisao, use um cast para forçar a divisão do tipo float no primeiro numero,

divisao = (float)numero1 / numero2;

Hum... Mas Vega, me desculpa minha falta de pratica em C, estou no inicio do aprendizado e não sei o que seria cast e como deixar em int / %d, se troquei para float?

Poderia arrumar para mim, ver como ficaria?

#include<stdlib.h>

#include<stdio.h>

int main(){

float numero1, numero2, soma, subtracao, multiplicacao, divisao;

printf("informe o primeiro numero: \n");

scanf("%d", &numero1);

printf("informe o segundo numero: \n");

scanf("%d", &numero2);

soma = numero1+numero2;

subtracao = numero1-numero2;

multiplicacao = numero1*numero2;

divisao = (float)numero1/numero2;

printf ("valor da soma é: %d \n", soma);

printf ("valor da subtracao é: %d \n", subtracao);

printf ("valor da multiplicacao é: %lf \n", multiplicacao);

printf ("valor da divisao é: %.2f \n", divisao);

system("pause");

}

Link para o comentário
Compartilhar em outros sites

  • 0
Isso acontece porque você declarou a variável do tipo int / inteiro. Logo, o resultado não terá a parte fracionária

Use o tipo float e %f no printf

Funcionou mesmo, só que agora as outras operações de soma, subt e multipli, deram zero.

Coloquei float no lugar de int e %f

como ficaria?

As outras operações você pode deixar como int e %d.

E na atribuição da divisao, use um cast para forçar a divisão do tipo float no primeiro numero,

divisao = (float)numero1 / numero2;

Hum... Mas Vega, me desculpa minha falta de pratica em C, estou no inicio do aprendizado e não sei o que seria cast e como deixar em int / %d, se troquei para float?

Poderia arrumar para mim, ver como ficaria?

#include<stdlib.h>

#include<stdio.h>

int main(){

float numero1, numero2, soma, subtracao, multiplicacao, divisao;

printf("informe o primeiro numero: \n");

scanf("%d", &numero1);

printf("informe o segundo numero: \n");

scanf("%d", &numero2);

soma = numero1+numero2;

subtracao = numero1-numero2;

multiplicacao = numero1*numero2;

divisao = (float)numero1/numero2;

printf ("valor da soma é: %d \n", soma);

printf ("valor da subtracao é: %d \n", subtracao);

printf ("valor da multiplicacao é: %lf \n", multiplicacao);

printf ("valor da divisao é: %.2f \n", divisao);

system("pause");

}

Ola, Vega!

Consegui! Agora sim intendi o que estava falando!

Fica assim né:

int numero1, numero2, soma, subtracacao, multiplicacao;

float divisao;

E depois força lá em:

divisao = (float) numero1/numero2;

Muito obrigado e ai fica a dica para o pessoa que esta começando como eu. :rolleyes:

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,3k
    • Posts
      652,4k
×
×
  • Criar Novo...