Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Subiect nou  (Citit de 1293 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Anonymous97
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 9



Vezi Profilul
« : Martie 11, 2013, 20:57:51 »

 Buna ziua,se poate sa ma ajutati si pe mine un pic?Sunt clasa a IX-a la liceu si momentan studiez pseudocodul si am un oarecare semn de intrebare la 2 probleme,le-am rezolvat dar nu sunt sigur daca sunt corecte,iar a 3a nu am nici ce-a mai mica idee:-?

1)Se dau n nr,sa se afiseze acele nr care au suma puterilor pare(capitolul cu factori primi)
Iar eu am rezolvat-o asa :
Start
citeste n
pentru i=1,n,1 executa
      scrie "a="
      citeste a
      x=0
      j=2
       cat timp a<>1 executa
              daca a mod j = 0 atunci
                    cat timp a mod j = 0 executa
                         x=x+1
                         n=n div i
                    sf cat timp
              sf daca
      j=j + 1
      sf cat timp
      daca x mod 2 = 0 atunci
               scrie a,' '
       sf daca
sf pentru
Stop
(imi cer scuze daca nu am scris tocmai corect)

2)Se citesc n nr,sa se afiseze pt fiecare nr factorul la puterea cea mai mare(La asta m'am gandit in mare cat timp am fost la scoala si nu stiu cat e de corecta..)

Start
citeste n
-pentru i=1,n,1 executa
     scrie "a="
     citeste a
     s=0
     j=2
     -cat timp a<>1 executa
          -daca a mod j = 0 atunci
               scrie j,'^'
               x=0
               -cat timp x mod j = 0 executa
                    x=x+1
                    n=n div j
               -sf cat timp
               -cat timp x>s executa
                    s=x
               -sf cat timp
          scrie s,' '
          -sf daca
     j=j+1
sf pentru
Stop
(Am incercat sa iau 2 variabile,in una sa salvez puterea pt fiecare factor si o alta variabila care la inceput e 0 si se compara cu prima variabila,iar daca prima e mai mare valoarea ei ar trebui sa se introduca in cea de-a doua si la final s-ar afisa)

3)Se citesc n nr,fara a inmulti acele n numere,sa se afiseze cate 0 ar avea numarul obtinut in urma inmultirii celor n numere.
(Am intrebat daca e bine sa folosim metoda care presupune de a-l aduna pe a cu el insusi de b ori in loc de a folosi a*b si a spus ca nu e bine)

Multumesc anticipat.
P.S. Imi cer scuze daca am postat la sectiunea necorespunzatoare.
Memorat
veleandu
De-al casei
***

Karma: 155
Deconectat Deconectat

Mesaje: 132



Vezi Profilul
« Răspunde #1 : Martie 13, 2013, 15:59:27 »

Infoarena nu e un site unde sa intri sa iti rezolvi tema pt scoala.
Nu e prea ok ce faci tu .. dar de data asta treaca de la mine
 Read This!

Ai aceleasi greseli la problemele 1 si 2.
Ai grija pe viitor cand pui ceva intr-un "cat_timp" cand descompui, sa imparti acel numal.

De exemplu:
La problema 1 ai pus cat_timp amod j = 0
n=n div i ..
si era defapt a = a div i

n iti reprezinta numarul de elemente.
Daca la final ar trebui sa afisezi numarul 'a' in cazul corespunzator, iei o valiabia 'aux' sau related, si salvezi valoarea lui 'a' acolo.



La problema a 2-a, idem:
Citat
-cat timp x mod j = 0 executa
                    x=x+1
                    n=n div j
               -sf cat timp
cat timp a mod j = 0 ..
a=a div j.

La problema a 3-a, numarul de '0' de la finalul unui numar este egal cu puterea la care apare 10 in descompunerea sa in factori primi.
Stiu ca 10 nu este un numar prim ... dar il putem scrie ca fiind 2*5 ..
De unde rezulta minimul dintre puterea lui 2 si cea a lui 5.

Cand inmultesti 2 numere puterile se aduna, deci trebuie sa afli pt fiecare numar la ce putere apare 2, apoi sa aduni puterile si sa afisezi un minim intre suma puterilor a lui 2 si a lui 5.
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

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