Chcę uprościć ułamek w mojej aplikacji. Frakcja jest podobna, x/y gdzie x i y są liczbami całkowitymi. Chcę uprościć ułamek do jego najprostszej postaci. Czy ktoś może dać mi wskazówki, jak to zrobić. Z góry dzięki.Jak uprościć ułamek
5
A
Odpowiedz
21
- Compute największy wspólny dzielnik dla xiy
- Divide oboje przez GCD
Euclid's algorithm to łatwy sposób obliczyć GCD.
14
Divide zarówno przez gcd(x,y)
Binary GCD algorithm to szybki sposób obliczyć GCD na komputerze.
-4
#include<iostream>
using namespace std;
struct fraction
{
int n1, d1, n2, d2, s1, s2;
};
void simplification(int a,int b)
{
bool e = true;
int t; int z;
for (int i = (a*b); i > 1;i--)
{ if ((a%i==0)&&(b%i==0))
{
t = a/i;
z = b/i;
}
else
{
e = false;
}
}
cout << "simplest form=" << t << "/" << z << endl;
}
void sum(int num1, int deno1, int num2, int deno2)
{
int k,y;
k = num1* deno2 + num2*deno1;
y = deno2*deno1;
cout << "addition of given fraction = " << k << "/" << y << endl;
simplification(k, y);
}
void sub(int num1, int deno1, int num2, int deno2)
{
int k, y;
k = num1*deno2 - num2*deno1;
y = deno1*deno2;
cout << "Substraction of given fraction = " << k << "/" << y << endl;
}
void mul(int num1, int deno1, int num2, int deno2)
{
int k, y;
k = num1*num2;
y = deno1*deno2;
cout << "multiplication of given fration= " << k<< "/" <<y; cout<< endl;
simplification(k, y);
}
void div(int num1, int deno1, int num2, int deno2)
{
int k, y;
;
k = num1*deno1;
y = deno1*num2;
cout << "division of given fraction" << k << "/" << y << endl;
simplification(k, y);
}
int main()
{ fraction a;
cout << "enter numirator of f1=";cin >> a.n1;
cout << "enter denominator of f1=";cin >> a.d1;
cout << "enter numirator of f2=";cin >> a.n2;
cout << "enter denominator of f2=";cin >> a.d2;
cout << "f1= " << a.n1 << "/" << a.d1 << endl;
cout << "f2= " << a.n2 << "/" << a.d2 << endl;
mul(a.n1, a.d1, a.n2, a.d2);
div(a.n1, a.d1, a.n2, a.d2);
sub(a.n1, a.d1, a.n2, a.d2);
sum(a.n1, a.d1, a.n2, a.d2);
system("pause");
}
Powiązane problemy
- 1. Jak uprościć PDO?
- 2. Jak uprościć Apache Avro?
- 3. Python ułamek sekund
- 4. Nauka Haskell - jak uprościć wyrażenia?
- 5. Jak uprościć zagnieżdżone wywołania map?
- 6. Jak uprościć kod Groovy pętli
- 7. jak przekonwertować ułamek na pływający w rubinie
- 8. Python Konwersja ułamek na dziesiętne
- 9. Jak uprościć "render_to_string" w Rails 3?
- 10. Jak uprościć zarządzanie aplikacjami w ustawieniach aplikacji?
- 11. jak uprościć mój kod za pomocą jquery?
- 12. Jak uprościć listę słowników według stanu?
- 13. Jak uprościć "kopiowanie i wklejanie" w Vimie?
- 14. Jak uprościć metody Pythona bez makiety
- 15. Jak uprościć akcję dodatnią w wariancie doładowania?
- 16. Przedefiniować IO, aby uprościć debugowanie?
- 17. Jak przeanalizować ułamek dziesiętny w produkcie Rational w języku Haskell?
- 18. ASp.NET MVC - Czy można uprościć moją architekturę?
- 19. Jak mogę uprościć/poprawić wydajność tego zapytania MySQL?
- 20. Jak mogę uprościć wywołanie metody rozszerzenia Linq za pomocą odbicia?
- 21. Jak uprościć zagnieżdżanie - jeśli używasz, aby zwrócić wartość w Haskell
- 22. Jak uprościć niemal równe rozszerzeń enum w Swift
- 23. uprościć prostego kodu C++ - coś jak pyton dowolny
- 24. Jak uprościć statyczne metody z sinonem w ES6?
- 25. Konwertuj ułamek dnia na czas POSIX w R
- 26. Pamięć podręczna z iskrami zachowuje tylko ułamek RDD
- 27. Wyjaśnić x => x.ToString() // uprościć tak wiele połączeń
- 28. Jak przekonwertować frakturę sformatowaną na ułamek dziesiętny lub zmiennoprzecinkowy w języku Java?
- 29. Pomóż uprościć plik Makefile dla wielu plików wykonywalnych
- 30. Czy mogę uprościć kliknięcie klawisza Enter w AngularJS?
Witamy w SO. Proszę podać jakiś kontekst do odpowiedzi, ponieważ odpowiedzi tylko kodu nie spełniają standardów SO. I ponownie sformatuj swój kod. Zobacz http://stackoverflow.com/help/how-to-answer –