Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Problema clasa a IX-a  (Citit de 2435 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Anonymous97
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 9



Vezi Profilul
« : Martie 12, 2013, 15:50:40 »

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.
Memorat
hiticas_abel
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 11



Vezi Profilul
« Răspunde #1 : Iunie 26, 2013, 11:29:28 »

La problema 3 e destul de simplu.

Un produs poate avea un 0 la final daca acesta a fost inmultit cu 10. Daca numarul are x de 0 la final => acesta a fost inmultit cu 10 de x ori.
Cum 10 = 2*5 atunci rezulta inductiv ca tu trebuie sa contorizezi cati de 10 ai in sirul de numere(vector) , cati de 2 si cati de 5.

Raspunsul va fi :
Cod:
contor_10 + minimul(contor_2, contor_5)

Demonstratia e clara. Daca ai 2 de 2 si 3 de 5 vei avea doar 2 de 10.
Memorat
AlexandruValeanu
Vorbaret
****

Karma: 29
Deconectat Deconectat

Mesaje: 167



Vezi Profilul
« Răspunde #2 : Iunie 26, 2013, 22:20:46 »

Problema 3 se rezolva cu descompunere in factori primi: pentru fiecare numar il descompui in factori primi si retii cati de 2 si cati de 5 apar in descompunerea tuturor.
Rezultatul este minimul dintre contorul de 2 si cel de 5.
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

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