Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: problema clasa a 9a  (Citit de 3626 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
fsanzi
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 10



Vezi Profilul
« : Decembrie 29, 2011, 17:01:46 »

buna, as avea si eu nevoie de ajutor cu o problema din manualul de clasa a 9a: zice asa:
 Sa se afiseze primele n numere naturale strict mai mari decat 2, care au proprietatea ca toate numerele naturale strict mai mici decat ele, care sunt prime cu ele, sunt si numere prime (exemplu: 3->2 ; 4->3; 6->5; contraexemplu: 5->2,3,4 - deoarece 4 este prim cu 5 dar nu este numar prim).

Eu am incercat sa o rezolv, dar nu sunt sigura daca nu am gresit-o. Asa am incercat eu s-o rezolv (in pseudocod):

citeste n
v<- 2
i<-3
| cat timp v<i executa
|              | pentru e<- 2,v executa
|              |                      | daca i%e=0 && v%e=0 atunci
|              |                      |                                c<-c+1
|              |                      |_ _ _ _ _ _ _ _ _ _ _ _ _ _
|              |_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|
|               | daca c=0 atunci
|               |               a<-1
|               |               b<-0
|               |              | cat timp a<=[v/2] executa
|               |              |                        |  daca v%a=0 atunci
|               |              |                        |                    b<-b+1
|               |              |                        |                    a<-a+1
|               |              |                        |_ _ _ _ _ _ _ _ _ _ _
|               |              |_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|               |   
|               |             |  daca b=1 atunci
|               |             |                v<-v+1
|               |             |                altfel
|               |             |                v<-i+1
|               |             |_ _ _ _ _ _ _ _ _ _
|               |_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _   
|
|                              i<- i+1   
|_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _       
Memorat
scipianus
Nu mai tace
*****

Karma: 129
Deconectat Deconectat

Mesaje: 345



Vezi Profilul
« Răspunde #1 : Decembrie 29, 2011, 17:20:34 »

Rezolvarea presupun ca o vrei tot in pseudocod  Think

Citat
citeste n
nr<- 0
i<- 3
cat timp nr<n executa
{
      ok<- 1
      pentru j de la 2 la i-1 executa
      {
             daca (cmmdc(i,j)==1 si j nu este prim)
                     ok<- 0
      }
      daca (ok==1)
      {
             scrie i
             nr++
      }
      i++
}


Nu stiu cat de bine ma pricep sa scriu in pseudocod,dar daca nu intelegi ceva sa-mi spui  Think Referitor la
Citat
daca (cmmdc(i,j)==1 si j nu este prim)
, cmmdc il calculezi cu algoritmul lui Euclid (presupun ca ar trebui sa-l stii) si ca sa verifici daca este sau nu prim ori verifici brute cum stii tu ori (in caz ca stii) faci Ciurul lui Erathostene. Sper ca ai inteles ce am incercat eu sa explic aici  Smile
Memorat
baTTLe4u_15
Strain


Karma: 2
Deconectat Deconectat

Mesaje: 19



Vezi Profilul
« Răspunde #2 : Martie 10, 2013, 16:23:35 »

Daca am inteles bine enuntul atunci nu exista un numar X > 7 care sa respecte conditia.
Poti sa faci asa:
     pentru i=3,i<n si i<7
     // etc
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

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