infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: Catalin din Ianuarie 21, 2014, 23:19:08



Titlul: Eliminare cifra dintr-un numar
Scris de: Catalin din Ianuarie 21, 2014, 23:19:08
Salut. Dati-mi va rog o idee cum as putea crea un subprogram care primeste 2 parametri: un numar n si o cifra c si elimina toate aparitiile cifrei c, furnizand tot prin n numarul obtinut.  Dati-mi o idee, nu tot programul. Multumesc :)


Titlul: Răspuns: Eliminare cifra dintr-un numar
Scris de: Catalin din Ianuarie 21, 2014, 23:22:35
M-am gandit ca daca prelucrez eu niste date si calculez ce trebuie  printr-un alt parametru K si la final ii atribui lui n valoarea lui K e gresit.


Titlul: Răspuns: Eliminare cifra dintr-un numar
Scris de: Radu Szasz din Ianuarie 22, 2014, 20:40:23
Daca "prelucrezi tu niste date si calculezi ce trebuie", sigur merge.

Ideea e ca tu vrei sa extragi cifrele lui N pozitie cu pozitie.

Cel mai simplu faci asa:
Cod:
cifra = N % 10; //E logic ca ultima cifra a lui N e restul impartirii lui N la 10
N = N / 10; //Asta practic taie ultima cifra a lui N.

Acu daca stii cifrele, e usor sa le ignori pe alea egale cu c.

Bafta!


Titlul: Răspuns: Eliminare cifra dintr-un numar
Scris de: Catalin din Ianuarie 22, 2014, 21:47:08
Da, asa m-am gandit si eu! Dar nu stiu cum sa fac sa returnez valoarea obtinuta tot prin intermediul lui n :|


Titlul: Răspuns: Eliminare cifra dintr-un numar
Scris de: Radu Szasz din Ianuarie 22, 2014, 21:51:38
Cod:
void subprogram(int &N, int c)

Asa trebuie sa iti arate header-ul functiei.

Daca tu calculezi acu valoarea care ar trebui sa fie returnata in o variabila K, faci pur si simplu N = K inainte sa iesi din functie.