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

Programa fração


pautilho

Pergunta

Olá boa tarde, estou precisando criar uma estrutura typedef fracao com um int numerador e int denominador, as funções de fracao multplicação(fracao a, fracao b ), soma,subtração e divisão, identicos a mult. A função deve retornar a multiplicação(soma, divisão e subtr) no final após o usuário digitar os dados.Acontece é que não estou conseguindo ligar as funções a estrutura.

ficou mais ou menos assim, usando somente a multiplicação(tem q desenvolver a soma, div, subt ainda!):

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

typedef struct fraction{
           int numerador;
           int denominador;
           }Fraction;

main()
{
   Fraction n1;
   Fraction n2;
      
    printf("Calculos Fracionários\n\n");
    printf("Entre com o numerador da primeira fracao<diferente de 0>:");
    scanf("%d", &n1.numerador);
    printf("Entre com o denominador da primeira fracao<diferente de 0>:");
    scanf("%d", &n1.denominador);
    printf("Entre com o numerador da segunda fracao<diferente de 0>:");
    scanf("%d", &n2.numerador);
    printf("Entre com o denominador da segunda fracao<diferente de 0>:");
    scanf("%d", &n2.denominador);  
    printf("Os Calculos foram\n");
    
    print("Multiplicacao: %d\%d", mult);\\ não sei como chamara a função!
    
   system("pause");
}   
    
struct Fraction mult(Fraction a; Fraction b )\\tentei de varias formas fazer o caculo, é só eu pensar mais um pouco...!!
   {
     
     int num1;
     int den1;
     int num2;
     int den2;
     int mn;
     int md;
     mult.a.numerador = num1;
     a.denominador = den1;
     b.numerador = num2;
     b.denominador = den2;
     mn=a.numerador*b.numerador;
     md=a.denominador*b.denominador;
     };

Alguém pode dar uma dica...

Editado por KaKarotto
Utilize as tags Code para facilitar a vizualização. KaKarotto.
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Para chamar a função mult basta fornecer os parâmetros que ela exige assim como você chama a função printf.

Porém esta função retorna um Fraction também então você não pode passar diretamente para o printf.

Assim o retorno deve ser salvo em um Fraction e depois chamar o printf:

res = mult(n1, n2);
  printf("Multiplicacao: %d\%d", res.numerador, res.denominador);
Já quanto à sua função, você teria que fazer o cálculo, carregar o resultado em um Fraction e então retorná-lo. Na declaração de sua função os argumentos devem ser separados por vírgula e não ponto-vírgula:
Fraction mult(Fraction a, Fraction b)

Editado por Marcelo Utikawa da Fonseca
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...