Informatică, întrebare adresată de Misterioasa15, 8 ani în urmă

1. Se citeste un numar natural n si doua cifre c1 si c2. Inlocuiti prima apariţie (de la stânga spre dreapta) a cifrei c1 în n, şi dacă aceasta apare, o înlocuieşte cu c2, iar următoarele cifre, dacă există, sunt înlocuite cu câte o cifră 0. Dacă cifra c1 nu apare în n, atunci valoarea lui n rămâne nemodificată.
Exemplu: pentru n=162448, c1=4 şi c2=7 valoarea furnizată prin n va fi 162700.

Răspunsuri la întrebare

Răspuns de lucaciucandrei
4

COROANA TE ROG

#include<iostream>

using namespace std;

int main() {

   int n, c1, c2, v[12], x = 1, sem = 0;

   cin >> n >> c1 >> c2;

   do {

       v[x++] = n % 10;

       n /= 10;

   } while (n != 0);

   x--;

   for (int i = x; i >= 1; i--) {

       if (sem == 1)

           n = n * 10;

       if (v[i] != c1 && sem == 0)

           n = n * 10 + v[i];

       else

       if (sem == 0 && v[i] == c1) {

           n = n * 10 + c2;

           sem = 1;

       }

   }

   cout << n;

   return 0;

}

exista metoda si mai eficienta dar asta este cea mai ok si mai usor de inteles

Alte întrebări interesante