Bom, sou novo aqui e ainda estou me familiarizando com o fórum. Também comecei a estudar programação há pouco tempo, então não tenho muitos conhecimentos.
Ao ponto: Meu professor requisitou um algoritmo que fizesse a soma de diversas frações, e que simplificasse o resultado. Eu fiz e testei, revisei o código inteiro, mas não encontrei o erro...
Compila normalmente, mas depois de ler as frações, ele dá erro, diz que o programa parou de funcionar. Abaixo está o código, agradeço se alguém puder ajudar!
#include<iostream>
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
using namespace std;
//CRIAÇÃO DA ESTRUTURA FUNCAO (TIPO FRACAO)
typedef struct {
int num;
int den;
} fracao;
//CRIACAO DA FUNCAO NUMERADOR FINAL
int soma_num(int a, int b, int c, int d){
return (a*d+b*c);
}
//CRIACAO DA FUNCAO DENOMINADOR FINAL
int soma_den(int j, int k){
return(j*k);
}
//CRIACAO DA FUNCAO QUE LE AS FRACOES
fracao a[10];
int i;
int f;
void leitura(){
do{
system("CLS");
cout << "Informe a quantidade de fracoes que deseja multiplicar: ";
Pergunta
MarkieD
Boa noite!
Bom, sou novo aqui e ainda estou me familiarizando com o fórum. Também comecei a estudar programação há pouco tempo, então não tenho muitos conhecimentos.
Ao ponto: Meu professor requisitou um algoritmo que fizesse a soma de diversas frações, e que simplificasse o resultado. Eu fiz e testei, revisei o código inteiro, mas não encontrei o erro...
Compila normalmente, mas depois de ler as frações, ele dá erro, diz que o programa parou de funcionar. Abaixo está o código, agradeço se alguém puder ajudar!
#include<iostream>
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
using namespace std;
//CRIAÇÃO DA ESTRUTURA FUNCAO (TIPO FRACAO)
typedef struct {
int num;
int den;
} fracao;
//CRIACAO DA FUNCAO NUMERADOR FINAL
int soma_num(int a, int b, int c, int d){
return (a*d+b*c);
}
//CRIACAO DA FUNCAO DENOMINADOR FINAL
int soma_den(int j, int k){
return(j*k);
}
//CRIACAO DA FUNCAO QUE LE AS FRACOES
fracao a[10];
int i;
int f;
void leitura(){
do{
system("CLS");
cout << "Informe a quantidade de fracoes que deseja multiplicar: ";
cin >> f;}while(f>10||f<1);
for (i=0; i < f; i++){
cout << "Informe o numerador : ";
cin >> a.num;
cout << "Escreva o denominador : ";
cin >> a.den;
}
}
int r=0;
int x=0;
int auxiliar1,auxiliar2;
int y=0;
int main()
{
leitura();
for (i=0; i < f; i++){
a[0].num=soma_num(a[0].num, a[0].den, a[i+1].num, a[i+1].den);
a[0].den=soma_den(a[0].den, a[i+1].den);
}
x=a[0].num;
y=a[0].den;
if (y > x) {
r=x;
x=y;
y=r;
}
while (y>0){
r= x%y;
x=y;
y=r;
}
printf("A soma das fracoes é: %d/%d",(a[0].num/x),(a[0].den/x));
getch();
}
Editado por MarkieDLink para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.