Salt la conținut

SUBIECTE NOI
« 1 / 5 »
RSS
Cheder deteriorat , zgariat, cum ...

Laptop HP 15-AF001NQ, AMD E1-6015...

Blat de bucatarie lungime 4,60 m

Termostat incalzire si racire
 Configurare retea cu modem Vodafo...

Curtea Penala Internationala soli...

Sunt obligate bancile sa opteze p...

Pensie anticipata partiala cu cer...
 Subscriptii

Cat ar costa acest poster, se poa...

Cum sa scapam de sobolani?

Alser Forest SA a dat teapa de 1,...
 COD Eroare ABS ( Ford Mondeo MK5 )

Implanturi dentare clinici Consta...

Viata cu butelie versus retea de ...

Nelamurire succesiune
 

ceva bug la o problema care calculeaza numarul factorilor primi ai unui nr

- - - - -
  • Vă rugăm să vă autentificați pentru a răspunde
1 răspuns la acest subiect

#1
Howzit_90

Howzit_90

    Member

  • Grup: Members
  • Mesaje: 265
  • Înscris: 10.06.2005
"
#include <iostream.h>
#include <conio.h>
int s;
int factor(int n, int f, int p)
{
if(n>1)
if(n%f==0)
   factor(n/f,f,p+1);
        else
         {if(p!=0)
               s++;
               factor(n,f+1,0);}
   else return s;

}

void main()
{clrscr();
int n,i,v[50],w[50];

cout<<"introduceti numarul valorilor ";
cin>>n;

for(i=0;i<n;i++)
{cout<<"v["<<(i+1)<<"]=";
cin>>v[i];}

for(i=0;i<n;i++)
   {s=0;
w[i]=factor(v[i],2,0);}

for(i=0;i<n;i++)
  cout<<v[i]<<" are "<<w[i]<<" factori primi"<<endl;;

getch();
}

"
acesta ar fi algoritmul... de fiecare data cand incerc sa calculez, imi returneaza pentru orice numar valoarea numarului divizorilor primi egala cu 1...
pls help
mersi anticipat
:peacefingers:

#2
dixy

dixy

    Senior Member

  • Grup: Banned
  • Mesaje: 3.910
  • Înscris: 06.09.2004
NU e vorba de amănunt, programul e o mizerie... Rescrie-l fără să mai faci brambureala cu variabila globală s şi ţinând cont de faptul că un număr chiar dacă e nedivizibil cu doi nu e automat un număr prim. În rest, ce să-ţi spun... Ideea de recursivitate e bună. Îţi ajung totuşi doi parametri la funcţie, n-ai nevoie de trei.

Anunturi

Chirurgia cranio-cerebrală minim invazivă Chirurgia cranio-cerebrală minim invazivă

Tehnicile minim invazive impun utilizarea unei tehnologii ultramoderne.

Endoscoapele operatorii de diverse tipuri, microscopul operator dedicat, neuronavigația, neuroelectrofiziologia, tehnicile avansate de anestezie, chirurgia cu pacientul treaz reprezintă armamentarium fără de care neurochirurgia prin "gaura cheii" nu ar fi posibilă. Folosind tehnicile de mai sus, tratăm un spectru larg de patologii cranio-cerebrale.

www.neurohope.ro

Utilizatori activi: 1

0 membri, 1 vizitatori, 0 utilizatori anonimi

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate