Răspuns :
Hai sa o luam asa:
1. Deschizi cu ifstream fisierul.
2. Citesti n.
3. Cu un for vei citi cate un numar odata. Nici macar nu ai nevoie de un intreg vector sa memorezi toate numerele, poti memora doar cate unul, il verifici daca e cu cifre egale, daca este atunci il afisezi, si apoi citesti pe urmatorul in aceasi variabila.
4. In for-ul de la 3. poti direct si sa verifici deci daca numarul tocmai citit este cu cifrele egale. Daca are cifrele egale il afisezi, daca nu, nu, si apoi treci mai departe.
Bun, si acum cum verificam daca are toate cifrele egale? Pai cel mai simplu mod e asa:
Intai faci o variabila in care ii iei ultima cifra, daca toate cifrele din nr sunt egale cu ultima cifra inseamna ca toate cifrele sunt la fel. Simplu.
Dupa ce i-ai luat ultima cifra o sa iti faci o variabila in care o sa memorezi daca ai gasit sau nu vreo dicra diferita("proasta"), sa ii spunem int numOfBadDigits = 0;
Cu un simplu while nr > 0 si un if in acel while verifici daca ultima cifra a numarului curent este egala cu cifra memorata de tine, daca nu este, cresi acel numar de cifre rele. Dupa acest if, nu uita sa imparti numarul la 10.
Dupa ce ai facut toata treaba asta, daca tota cifrele sunt la fel, numarul de cifre rele ar trebui sa fie 0, asa ca verifici asta cu un for si gata!
1. Deschizi cu ifstream fisierul.
2. Citesti n.
3. Cu un for vei citi cate un numar odata. Nici macar nu ai nevoie de un intreg vector sa memorezi toate numerele, poti memora doar cate unul, il verifici daca e cu cifre egale, daca este atunci il afisezi, si apoi citesti pe urmatorul in aceasi variabila.
4. In for-ul de la 3. poti direct si sa verifici deci daca numarul tocmai citit este cu cifrele egale. Daca are cifrele egale il afisezi, daca nu, nu, si apoi treci mai departe.
Bun, si acum cum verificam daca are toate cifrele egale? Pai cel mai simplu mod e asa:
Intai faci o variabila in care ii iei ultima cifra, daca toate cifrele din nr sunt egale cu ultima cifra inseamna ca toate cifrele sunt la fel. Simplu.
Dupa ce i-ai luat ultima cifra o sa iti faci o variabila in care o sa memorezi daca ai gasit sau nu vreo dicra diferita("proasta"), sa ii spunem int numOfBadDigits = 0;
Cu un simplu while nr > 0 si un if in acel while verifici daca ultima cifra a numarului curent este egala cu cifra memorata de tine, daca nu este, cresi acel numar de cifre rele. Dupa acest if, nu uita sa imparti numarul la 10.
Dupa ce ai facut toata treaba asta, daca tota cifrele sunt la fel, numarul de cifre rele ar trebui sa fie 0, asa ca verifici asta cu un for si gata!
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile și inspiraționale. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, suntem aici pentru a vă ajuta. Ne face plăcere să vă revedem și vă invităm să adăugați site-ul nostru la favorite pentru acces rapid!