Informatică, întrebare adresată de Johnny911, 9 ani în urmă

Se da o fractie a/b,sa se afiseze fractia ireductibilă,scrieți algoritmul de rezolvare cu ajutorul instructiunii "cat timp"

Răspunsuri la întrebare

Răspuns de blindseeker90
9
citeste a,b
a0=a
b0=b
cat timp a diferit de b
daca a>b atunci a=a-b
                altfel   b=b-a
sfarsit cat timp
a0=a0/a;
b0=b0/b;
scrie "Fractia ireductibila este a0/b0

Exemplu: a0=264 si b0=32
264>32? Da a=264-32=232
232>32? Da a=232-32=200
200>32? Da a=200-32=168
168>32? Da a=168-32=136
136>32? Da a=126-32=104
104>32? Da a=104-32=72
72>32? Da a=72-32=40
40>32? Da  a=40-32=8
8>32? Nu b=32-8=24
8>24? Nu b=24-8=16
8>16? Nu b=16-8=8
8=8? Da se sfarseste cat timpul

a0=264/8=33
b0=32/8=4
Fractia ireductibila: 33/4


Johnny911: intebare: carece faza cu 0? a0,b0...
Johnny911: este a initial?
blindseeker90: Da. Atunci cand aplici algoritmul, observi ca pierzi valorile initiale pentru a si b. Si atunci nu ai aveam cum sa mai reduci fractia initiala. De aceea le salvez in niste variabile intermediare. La sfarsit impart la a si b pentru ca la acel moment a=b=cel mai mare divizor comun, descoperit cu algoritmul
Johnny911: Mulțumesc
Alte întrebări interesante