Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Răspuns: 000 Algoritmul lui Euclid  (Citit de 10548 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
stef2n
Nu mai tace
*****

Karma: 218
Deconectat Deconectat

Mesaje: 641



Vezi Profilul
« : Februarie 20, 2009, 02:06:17 »

Comentarii la articolul Algoritmul lui Euclid
Memorat

Exista 10 categorii de oameni: cei care inteleg sistemul binar si cei care nu il inteleg.
soriyn
Vorbaret
****

Karma: 24
Deconectat Deconectat

Mesaje: 150



Vezi Profilul
« Răspunde #1 : Iulie 04, 2010, 16:24:17 »

Ce face functia assert ?


Cod:
assert( -1000000000 <= A && A <= 1000000000 );
Memorat
Mishu91
Nu mai tace
*****

Karma: 169
Deconectat Deconectat

Mesaje: 751



Vezi Profilul
« Răspunde #2 : Iulie 04, 2010, 16:47:11 »

Dacă acea condiție din paranteză nu este îndeplinită execuția programului este întreruptă și dă un mesaj de eroare. Acea funcție este folosită de cei care adaugă problemele pentru a se asigura că sunt respectate toate restricțiile.
Memorat
ucc_5
Client obisnuit
**

Karma: -11
Deconectat Deconectat

Mesaje: 82



Vezi Profilul
« Răspunde #3 : Iulie 09, 2010, 10:54:34 »

Nu trebuia sa scrie aici " Daca b = 0, atunci a * 1 + b * 0....."  y=0 in loc de b=0?
Memorat
ionutz32
Strain


Karma: 16
Deconectat Deconectat

Mesaje: 18



Vezi Profilul
« Răspunde #4 : Iulie 09, 2010, 12:56:10 »

Nu, pentru ca acolo spune de capatul recurentei, unde b=0 si cmmdc=a, iar o solutie pentru a*x+b*y=d <=> a*x+0*y=a, e cand x=1 si y=0, pentru ca a*1+0*0=a.
Memorat
alex_unix
Strain
*

Karma: 22
Deconectat Deconectat

Mesaje: 46



Vezi Profilul
« Răspunde #5 : Aprilie 10, 2012, 11:42:08 »

Ce complexitate are Euclid extins ? Embarassed
Memorat
blasterz
Nu mai tace
*****

Karma: 92
Deconectat Deconectat

Mesaje: 255



Vezi Profilul
« Răspunde #6 : Aprilie 10, 2012, 12:08:52 »

Ce complexitate are Euclid extins ? Embarassed

O(logn)
Memorat
alex_unix
Strain
*

Karma: 22
Deconectat Deconectat

Mesaje: 46



Vezi Profilul
« Răspunde #7 : Aprilie 10, 2012, 19:00:01 »

Mersi Very Happy
Memorat
witsel
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 15



Vezi Profilul
« Răspunde #8 : Iulie 25, 2014, 11:03:37 »

de ce a%b=a-b*c?? a-b*c nu este 0??
Memorat
SebiSebi
Nu mai tace
*****

Karma: 76
Deconectat Deconectat

Mesaje: 306



Vezi Profilul
« Răspunde #9 : Iulie 25, 2014, 15:31:35 »

Nu, nu este 0. a%b = a - b*[a/b] unde [ x ] reprezinta partea intreaga a numarului x. In C++ se executa operatiile pe int(default) dacă nu faci type casting. Daca scriai (double) a - b*(1.00*a/b) atunci asta era 0 mereu.
« Ultima modificare: Iulie 26, 2014, 09:58:22 de către Pirtoaca George Sebastian » Memorat
witsel
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 15



Vezi Profilul
« Răspunde #10 : Iulie 26, 2014, 08:16:36 »

aha, merci. poti sa-mi spui te rog de ce atunci cand ajungi la apelul lui euclid , de ce programul calculeaza si *x = y0;
*y = x0 - (a / b) * y0;. nu ar trebui sa apeleze din nou functia pana cand b==0, nemaitrecand la cele doua ecuatii care sunt dupa apel?
 euclid(b, a % b, d, &x0, &y0);
*x = y0;
*y = x0 - (a / b) * y0;
Memorat
SebiSebi
Nu mai tace
*****

Karma: 76
Deconectat Deconectat

Mesaje: 306



Vezi Profilul
« Răspunde #11 : Iulie 26, 2014, 10:00:09 »

Nu înțeleg ce nelămurire ai. Mai explică odată te rog.
Memorat
witsel
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 15



Vezi Profilul
« Răspunde #12 : Iulie 26, 2014, 11:28:45 »

nu inteleg cum ajunge programul sa rezolve ecuatiile "*x = y0; *y = x0 - (a / b) * y0;" , avand in vedere ca "euclid(b, a % b, d, &x0, &y0);" apeleaza functia inainte ca programul sa rezolve cele 2 ecuatii. Nu pot sa explic mai bine.. Daca nu ai inteles ce vreau... poti sa-mi explici cum "ruleaza" programul pas cu pas? ce face fiecare instructiune in parte?
Memorat
SebiSebi
Nu mai tace
*****

Karma: 76
Deconectat Deconectat

Mesaje: 306



Vezi Profilul
« Răspunde #13 : Iulie 26, 2014, 11:50:33 »

Programul nu rezolvă cele două ecuații ci ecuația A * X + B * Y = D. Cele două atribuiri de care vorbești sunt explicate chiar în articol. Parametrii sunt pointeri tocmai pentru a putea folosi informațiile obținute din rezolvarea ecuației b * x0 + (a % b) * y0 = d;
Deci tu știi x0 și y0 și vrei să afli X si Y. Sunt o infinitate de posibilitati, una dintre ele este urmatoarea x = y0; y = x0 - (a / b) * y0.
Memorat
witsel
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 15



Vezi Profilul
« Răspunde #14 : Iulie 26, 2014, 12:30:14 »

Deci.. am inteles in mare partea matematica. Nu am inteles totusi un lucru. Cat sunt X0 si Y0. Daca cu 1 respectiv 0, de ce ? pentru ca asta se intampla abia cand b=0, deci X o sa devina 0, iar Y 1, ceea ce nu e corect...
Memorat
kosas
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #15 : Iulie 23, 2015, 23:37:29 »

exact...nici eu nu inteleg de ce la sfarsitul recurentei y=0.
Iar ,cand b=0,ecuatia a * x + b * y = d(cmmdc) devine a*1+0*y=a ceea ce e adevarat; deci y nu e musai 0.  Very Happy
« Ultima modificare: Iulie 23, 2015, 23:44:23 de către Dimitrie » Memorat
Mircea_Donciu
Strain


Karma: -2
Deconectat Deconectat

Mesaje: 16



Vezi Profilul
« Răspunde #16 : Martie 01, 2016, 12:13:45 »

Prostiii.  Angry  Angry  Angry  Angry  Mad
Memorat
AdiMuntean
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #17 : August 18, 2018, 16:44:51 »

De ce, pentru Euclid extins, trei din cinci parametrii sunt pointeri? Cum influenteaza modul in care functioneaza algoritmul?
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines