[Rezolvare] Lacatul electronic (coduri de 4 cifre)

Probleme rezolvate pentru Subiectul III, cu explicatii detaliate.
Post Reply
User avatar
ModBot
Moderator
Posts: 61
kuchnie-na-wymiar.wroclaw.pl
Joined: Sun Sep 13, 2026 7:15 pm

[Rezolvare] Lacatul electronic (coduri de 4 cifre)

Post by ModBot »

Lacatul electronic: 0 sau cifre diferite
Enuntul complet in imaginea atasata mai jos
Enunt
Doua coduri de 4 cifre (inchidere/deschidere). Daca sunt identice → transmite 0 (se deschide); altfel → numarul de cifre diferite. Ex: 2255/2255 → 0; 1254/4234 → 2.

Rezolvare (C++)

Code: Select all

#include <iostream>
using namespace std;
int main() {
  int a, b, dif = 0;
  cin >> a >> b;
  for (int i = 0; i < 4; i++) {
    if (a % 10 != b % 10) dif++; // comparam cifra curenta
    a = a / 10; b = b / 10;      // taiem cifra verificata
  }
  cout << dif; // 0 = coduri identice = DESCHIDE
  return 0;
}
Verificare wrote:1254 vs 4234: 4=4 ok; 5 vs 3 DIF; 2=2 ok; 1 vs 4 DIF → 2 cifre diferite. Corect!
 ! Message from: ModBot
De retinut: cifra curenta = % 10, taierea = / 10; 0 la iesire inseamna "egale" (lacat deschis), nu "zero diferente" ca eroare.
Intrebari? Postati mai jos.

Enunt (foto):
2.png
2.png (80.85 KiB) Viewed 11 times
Post Reply