Informatică, întrebare adresată de silviabrinza, 9 ani în urmă

Cerinţa

Se citește un număr natural n și o cifră c. Determinați numărul obținut prin eliminarea tuturor aparițiilor cifrei c din numărul n.
Date de intrare

Programul citește de la tastatură numerele n și c.
Date de ieşire

Programul afișează pe ecran numărul M, reprezentând numărul obținut prin eliminarea tuturor aparițiilor cifrei c din numărul n.
Restricţii şi precizări

1 ≤ n ≤ 1.000.000.000
1 ≤ c ≤ 9
dacă prin eliminarea aparițiilor lui c în n nu mai rămân cifre, se va a

Răspunsuri la întrebare

Răspuns de stassahul
5
#include <iostream>
#include <cstring>
#include <cstdlib>

using namespace std;

char n[11],t[11];
int i,c,M;

int main()
{

    cin >> n >> c;

    for(i=0;i<=strlen(n)-1;i++)
    {
       if(strlen(n)==0) break;
        if(n[i]-'0'==c)
        {
         strcpy(t,n+i+1);
         strcpy(n+i,t);
         i--;
        }
    }

    M=atoi(n);

    if(strlen(n)==0) cout << "-1";
    else cout << M;

    return 0;

}

stassahul: As dori sa fac o remarca, programul de pe pbinfo cred ca dorea ca rezultatul obtinut sa fie in integer, de aceea am folosit comanda "atoi" din libraria cstdlib. Daca afisezi pur si simplu stringu vei avea 80/100 pe pbinfo
silviabrinza: ok thx
Alte întrebări interesante