a IX-a A27 lecții INFORMATICĂ | 34 lecții T.I.C.
Informatică
Lectia 00001   |   Lectia 00   |   Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04   |   Lectia 05   |   Lectia 06   |   Lectia 07
Lectia 07 --- [ Teorie + 3 Probleme rezolvate ]
INTERSCHIMBAREA VALORILOR A DOUA VARIABILE

Una dintre cele mai frecvente probleme care apare în programare este necesitatea de a interschimba valorile a două variabile (a doua variabilă trebuie să ajungă să conțină valoarea inițială a primei variabile, iar prima variabilă trebuie să ajungă să conțină valoarea inițială a celei de-a doua variabile). Mulți încep cu soluția naivă (presupunem că variabilele sunt a și  b):

Destul de repede ne dăm seama că nu am realizat nicio interschimbare și, la sfârșit, ambele variabile vor avea valoarea inițială a variabilei  a. Nu este greu să ne prindem și că avem nevoie de o variabilă auxiliară pentru a realiza interschimbarea (așa cum, în principiu, avem nevoie de un al treilea pahar dacă dorim să interschimbăm conținuturile a două pahare). Codul nostru devine:

Dar, oare chiar nu putem fără variabilă auxiliară? Uneori putem! Cel mai simplu caz este atunci când avem numere întregi.

Să considerăm următoarea secvență:

1. Se citesc 4 numere . Să se afișeze numerele în ordine crescătoare .
Propune o soluție

S
o
l
u
ț
i
a:
Introdu următorul text: 709742172
Citeste n1, n2, n3, n4
Daca n1>n2 atunci       { Ne asiguram ca relatia intre n1 
si n2 va fi "<" }
       x=n1
       n1=n2
       n2=x
Sfarsit Daca
Daca n1>n3 atunci       { Ne asiguram ca relatia intre n1 
si n3 va fi "<" }
       x=n1
       n1=n3
       n3=x
Sfarsit Daca
Daca n1>n4 atunci       { Ne asiguram ca relatia intre n1 
si n4 va fi "<" }
       x=n1
       n1=n4
       n4=x
Sfarsit Daca
Daca n2>n3 atunci       { Ne asiguram ca relatia intre n2 
si n3 va fi "<" }
       x=n2
       n2=n3
       n3=x
Sfarsit Daca
Daca n2>n4 atunci       { Ne asiguram ca relatia intre n2 
si n4 va fi "<" }
       x=n2
       n2=n4
       n4=x
Sfarsit Daca
Daca n3>n4 atunci       { Ne asiguram ca relatia intre n3 
si n4 va fi "<" }
       x=n3
       n3=n4
       n4=x
Sfarsit Daca
Scrie n1, n2, n3, n4
2. Se citesc 2 intervale de timp exprimate în ore , minute , secunde . Să se determine suma lor .
Propune o soluție

S
o
l
u
ț
i
a:
Introdu următorul text: 900435476
Citeste o1, m1, s1, o2, m2, s2
T=0
S=s1+s2
daca S>=60 atunci
      T=1
      S=S-60
Sfarsit Daca
      M=m1+m2+T
        Daca M>=60 atunci
                 T=1
                  M=M-60
         Altfel
                  T=0
         Sfarsit Daca
               O=o1+o2+T
     Scrie O, M, S
3. Se citesc măsurile a două unghiuri exprimate în grade , minute , secunde . Să se determine suma măsurilor celor doua unghiuri .
Propune o soluție

S
o
l
u
ț
i
a:
Introdu următorul text: 260107998
Citeste g1, m1, s1, g2, m2, s2
T=0
S=s1+s2
daca S>=60 atunci
      T=1
      S=S-60
Sfarsit Daca
      M=m1+m2+T
        Daca M>=60 atunci
                 T=1
                  M=M-60
         Altfel
                  T=0
         Sfarsit Daca
               G=g1+g2+T
     Scrie G, M, S

Fii primul care comentează lecţia
     Submit
  |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 101   |   Lectia 102   |   Lectia 103   |   Lectia 11   |   Lectia 11_2   |   Lectia 12   |   Lectia 12_2   |   Lectia 12_3   |   Lectia 12_4   |   Lectia 12_5   |   Lectia 13   |   Lectia 14   |   Lectia 17
Lectia 18   |   Lectia 19
T.I.C.

Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04
Lectia 05   |   Lectia 06   |   Lectia 07   |   Lectia 08   |   Lectia 09
Lectia 10   |   Lectia 11   |   Lectia 12   |   Lectia 13   |   Lectia 14   |   Lectia 15   |   Lectia 16   |   Lectia 17   |   Lectia 18   |   Lectia 19   |   Lectia 19   |   Lectia 20   |   Lectia 23   |   Lectia 24   |   Lectia 26   |   Lectia 27   |   Lectia 28   |   Lectia 29   |   Lectia 30_2   |   Lectia 31   |   Lectia 32   |   Lectia 33   |   Lectia 34   |   Lectia 35   |   Lectia 36
a IX-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a IX-a C0 lecții INFORMATICĂ | 29 lecții T.I.C.
T.I.C.
Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04
Lectia 05   |   Lectia 06   |   Lectia 07   |   Lectia 08
Lectia 10   |   Lectia 12   |   Lectia 13   |   Lectia 14   |   Lectia 15   |   Lectia 16   |   Lectia 17   |   Lecția 18   |   Lectia 19   |   Lectia 20   |   Lectia 21   |   Lectia 22   |   Lectia 23   |   Lectia 24   |   Lectia 25   |   Lectia 26   |   Lectia 27   |   Lectia 28   |   Lectia 29   |   Lectia 30   |   Lectia 31
a IX-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a IX-a E0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a A6 lecții INFORMATICĂ | 29 lecții T.I.C.
Opțional
Fișa 01   |   Fișa 02   |   Fișa 03   |   Fișa 04   |   Fișa 05   |   Lectia 20
T.I.C.

Lectia 07   |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 11   |   Lectia 12   |   Lectia 13   |   Lectia 14
Lecția 14_1
Lectia 15
Lectia 16   |   Lectia 17   |   Lectia 19   |   Lectia 20
Lectia 21   |   Lecția 22   |   Lectia 23   |   Lectia 24   |   Lectia 25   |   Lectia 26   |   Lectia 27   |   Lectia 28
Lectia 29   |   Lectia 30   |   Lectia 31   |   Lectia 32   |   Lectia 33   |   Lectia 34   |   Lectia 35
a X-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a X-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a A30 lecții INFORMATICĂ | 0 lecții T.I.C.
Informatică
Lectia 07   |   Lectia 08   |   Lectia 09   |   Lectia 10   |   Lectia 11   |   Lectia 12   |   Lectia 13   |   Lectia 14
Lectia 16   |   Lectia 18   |   Lectia 19   |   Lectia 20   |   Lectia 21
Lectia 23   |   Lectia 24
Lectia 36
Lectia 40   |   Lectia 41   |   Lectia 42   |   Lectia 43   |   Lectia 44   |   Lectia 45   |   Lectia 46   |   Lectia 46_1
Lectia 47   |   Lectia 48   |   Lectia 49   |   Lectia 50   |   Lectia 50_1
Lectia 50_2
a XI-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XI-a D0 lecții INFORMATICĂ | 15 lecții T.I.C.
T.I.C.
Fişa 01   |   Fişa 02   |   Fişa 03   |   Fişa 04   |   Fişa 05   |   Fişa 06   |   Fişa 07
Fisa C08_2022_1
Lectia 01   |   Lectia 02   |   Lectia 03   |   Lectia 04   |   Lectia 05   |   Lectia 06   |   Lectia 07
a XI-a E0 lecții INFORMATICĂ | 1 lecții T.I.C.
T.I.C.
Fişa 01
a XII-a A2 lecții INFORMATICĂ | 6 lecții T.I.C.
Informatică
Lectia 01   |   Lectia 02
T.I.C.

Fişa 01   |   Fişa 02   |   Fişa 03   |   Fişa 04   |   Fişa 05   |   Fişa 06
a XII-a B0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a C0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a D0 lecții INFORMATICĂ | 0 lecții T.I.C.
a XII-a E0 lecții INFORMATICĂ | 0 lecții T.I.C.
Excelenta A0 lecții INFORMATICĂ | 0 lecții T.I.C.