Salut! Imi puteti spune unde am gresit la urmatoarea problema: Subprogramul produs are doi parametri, în această ordine:
a, prin care primește un număr natural (a∈[1,106]);
k, prin care furnizează cea mai mare valoare naturală impară cu proprietatea că produsul tuturor numerelor impare din intervalul [1,k] este mai mic sau egal cu a.
Scrieți definiția completă a subprogramului.
}while(ok==0);
return k;
}
explicatie: pentru fiecare i=1 pana la k daca i impar atunci p=p*i in final dupa executarea "for-ului" p-ul va lua valoare produsului primelor k numere impare unde k este initializat 1
------------
copiez valoarea lui k in j (j=k;)
k ia valoarea produsului (k=p;)
compar : daca p depaseste pe a atunci inseamna ca numarul k care respecta cerintele problemei va fi cu 2 unitati in urma k=valoarea salvata (j) - 2 OK=1 adica m-am oprit
else : valoarea lui k redevine valoarea salvat + 2 unitati (k merge din impar in impar in ordine crescatoare)
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.