Clasa a V-a lecția 8 - 2 oct 2013
Tema - rezolvări
- Felicitări pentru instalarea Code::Blocks! Cei ce nu reușiți să îl instalați veniți cu laptopul la cerc și vom încerca să vă ajutăm.
- Nu am reluat tema la tablă deoarece era simplă. Scopul exercițiilor a fost să vă obișnuiască cu CodeBlocks.
Rezolvări aici [1]
Lecție
Limbajul C
Intrucțiunea if
Am vorbit despre instrucțiunea if. Ea implementează structura alternativă. Apoi am vorbit despre operatorii de comparație ==, !=, <, <=, >, >=. Exercițiu: Să se spună dacă n divizibil cu k
![]() |
#include <stdio.h> int main() { int n, k; scanf( "%d%d", &n, &k ); if ( n % k == 0 ) printf( "Da" ); else printf( "Nu" ); return 0; } |
Instrucțiunea compusă
Instrucțiunea if permite cîte o singură instrucțiune pe fiecare ramură. Ce facem dacă avem mai multe instrucțiuni pe o ramură? Folosim instrucțiunea compusă, folosind acolade. Exercițiu: Ecuația de gradul 1
if-uri imbricate
Exercițiu cu if-uri unul într-altul (numite și if-uri imbricate):
An bisect
Să se spună dacă un an este bisect
Instrucțiunea while
Am vorbit despre instrucțiunea while. Ea implementează structura repetitivă de tip WHILE-DO. Exerciții cu instrucțiunea while:
Exercițiul 1
Suma numerelor de la 1 la n fără a folosi formula lui Gauss.
![]() |
#include <stdio.h> int main() { int n, s, c; scanf( "%d", &n ); s = 0; c = 1; while ( c <= n ) { s = s + c; c = c + 1; } printf( "Suma este %d\n", s ); return 0; } |
Exercițiul 2
Să se afișeze suma cifrelor unui număr n.
![]() |
#include <stdio.h> int main() { int n, s, c; scanf( "%d", &n ); s = 0; while ( n > 0 ) { s = s + n % 10; n = n / 10; } printf( "Suma este %d\n", s ); return 0; } |
Exercițiul 3
Să se afișeze inversul unui număr n.
![]() |
#include <stdio.h> int main() { int n, r; scanf( "%d", &n ); r = 0; while ( n > 0 ) { r = r * 10 + n % 10; n = n / 10; } printf( "Rasturnatul lui n este %d\n", r ); return 0; } |
Tema
- Să se rezolve următoarele probleme (schemă logică + program C în CodeBlocks):
- Calculați x11 cu număr minim de înmulțiri: Care este numărul minim?
- Se citește un număr n. Să se spună cîte cifre pare are el. Exemple: dacă n=3528 el are 2 cifre pare (2 și 8), dacă n=49285640 el are 6 cifre pare (4, 2, 8, 6, 4, 0).
- Se citește un număr n. Să se afișeze cel mai mare divizor propriu al lui n (strict mai mic decît n). Exemplu: dacă n=24 cel mai mare divizor propriu este 12. Dacă n=125 cel mai mare divizor propriu este 25. Dacă n = 175 cel mai mare divizor propriu este 35.
- Problemă de logică: filozoful Immanuel Kant a ajuns acasă unde a constatat că ceasul de perete a stat deoarece a uitat să-l întoarcă. El a plecat către prietenul lui bun. Acolo a stat o vreme la discuții filozofice, apoi s-a întors înapoi acasă unde a potrivit ceasul la ora exactă! Cum a procedat Kant? Se știe că:
- Prietenul lui Kant are un ceas care merge bine
- Pe vremea lui Kant nu existau ceasuri de mînă sau alte dispozitive mobile cu ceas
- Kant merge cu viteză constantă, de ani de zile aceeași.
Rezolvări aici [2]