infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: Catalin din Februarie 12, 2014, 17:21:03



Titlul: CMMDC recursiv
Scris de: Catalin din Februarie 12, 2014, 17:21:03
Salut. In programul urmator, cine este p? Si explicati-mi putin cum functioneaza. Multumesc.

Cod:
#include<iostream>
using namespace std;
int cmmdc(int a[20], int p, int n)
{ if(p==n) return a[p];
  else
  { int x,y;
    x=cmmdc(a,p,(p+n)/2);
    y=cmmdc(a,(p+n)/2+1,n);
    while(x!=y)
       if(x>y)
   x=x-y;
       else y=y-x;
    return x;   
  }   
}
int main()
{
int a[20],n,i;
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i];
cout<<"cmmdc este: "<<cmmdc(a,1,n);
}


Titlul: Răspuns: CMMDC recursiv
Scris de: Cosmin Rusu din Februarie 12, 2014, 18:41:37
P nu este "cineva", e o variabila...


Titlul: Răspuns: CMMDC recursiv
Scris de: Catalin din Februarie 12, 2014, 21:43:58
La ce ajuta? Explica-mi putin te rog daca vrei.


Titlul: Răspuns: CMMDC recursiv
Scris de: Pirtoaca George Sebastian din Februarie 12, 2014, 23:25:37
Tu afli cmmdc în vectorul a intre pozițiile p și n.