Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int main() {
- char a, b; // citim doua caratcere
- unsigned cnt = 1; // variabila pentru a numara decate ori apare
- FILE *f, *g; // variabile de tip fiser
- f = fopen("in.txt", "r");// deschidere in mod citire
- g = fopen("out.txt", "w");// deschidere in mod scriere
- fscanf(f, "%c", &a); // citim prima data a
- while (fscanf(f, "%c", &b) != EOF) { // cat timp mai sunt numere in fiser
- if (a == b) cnt++; // daca numarul curent este = cu ce-l precedent incrementam variabila contor
- else{
- fprintf(g, "%c%u", a, cnt); // altfel afisam litera si numarul de apariti
- a = b; // acum avem alta litera asa ca punem valoarea din b in a pentru comparatia urmatoare
- cnt = 1; // resetam contorull
- }
- }
- fprintf(g, "%c%u", a, cnt); // deoarece nu se ia in calcul ultima verificare din while trebuie facuta in afara functiei
- fclose(f);// inchidem fiserul
- fclose(g);// inchidem fiserul
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment