Informatică, întrebare adresată de Utilizator anonim, 8 ani în urmă

VA ROG PLS!!!!STAU DE MULT LA EA!!! DAU CORONA
in c++

Cerinta

Se citeste de la tastatura un numar natural N si doua cifre A si B . Sa se transforme numarul N inlocuind fiecare aparitie a cifrei A in N cu cifra B.




Date de intrare

Pe prima linie se vor afla cele trei variabile N, A si B.




Date de iesire

Se va afisa N dupa ce i-au fost aduse modificarile mentionate mai sus.




Restrictii si precizari

0 < N < 1,000,000,000

0 < A, B < 10


Exemplu

Date de intrare

44512

4

1

Date de iesire : 11512


Date de intrare :

333

3

9

Date de iesire:999


Explicatie

Avand N = 44512 , A = 4 si B = 1 vom inlocuii fiecare cifra 4 din N cu 1. Asadar vom obtine N = 11512.

Răspunsuri la întrebare

Răspuns de andreicpp
1

Răspuns:

#include <bits/stdc++.h>

using namespace std;

int main() {

   int n, a, b, v[101]; cin >> n >> a >> b;

   int i = 0;

   while (n != 0) {

       i++;

       if (n % 10 == a) v[i] = b;

       else v[i] = n % 10;

       n = n / 10;

   } for (int j = i; j >= 1; j--) cout << v[j];

   return 0;

}

Explicație:

Am parcurs numarul apoi am adaugat in vector cifrele modificate. La final am afisat invers vectorul (de la i [nr elemente] la 1), deoarce cifrele au fost introduse de la sfarsit spre inceput.

Alte întrebări interesante