Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //1.
- #include <stdio.h>
- #include <conio.h>
- #include <string.h>
- FILE* citire( char f[50] )
- {
- FILE* fin=fopen(f, "rt");
- if(!fin)
- {
- printf("Eroare la deschidere.");
- return 0;
- }
- return fin;
- }
- float parcurgere ( FILE* fin, FILE* fout, int *lmed, int *i )
- {
- char f[50]="", c;
- int ok=1,nrcop=0;
- *i=0;
- while(!feof(fin))
- {
- c=fgetc(fin);
- if(c!=EOF)
- f[strlen(f)]=c;
- if((c<'a' || c>'z') && c!=' ' && c!='\n')
- ok=0;
- else if(c=='\n')
- {
- if(feof(fin))
- break;
- if(f[0]=='\n')
- ok=0,(*i)--;
- int l=strlen(f);
- if(ok)
- fprintf(fout, "%s", f), nrcop++;
- *lmed+=strlen(f)-1;
- int q;
- for(q=0;q<l;q++)
- f[q]=0;
- ok=1;
- (*i)++;
- }
- }
- return (float)nrcop/ *i;
- }
- int main ()
- {
- FILE *fin, *fout;
- char f[50];
- int lmed=0,i=0;
- float lcop;
- scanf("%s", f);
- fin=citire(f);
- if(!fin)
- return 1,getch();
- fout=fopen("f.out", "wt");
- lcop=parcurgere(fin, fout, &lmed, &i)*100;
- printf("Procent linii copiate:%.2f \tLungime medie:%.2f",lcop, (float)lmed/i);
- getch();
- }
- //2.
- #include <stdio.h>
- #include <conio.h>
- int parcurgere( FILE *fin, FILE *fout1, FILE *fout2, int *s, int a, int b)
- {
- int x,nr=0;
- while(!feof(fin))
- {
- if(!fscanf(fin, "%i", &x))
- {
- printf("Eroare la citire din fisier");
- getch();
- return -1;
- }
- if(x>=a && x<=b)
- fprintf(fout1, "%i ", x),*s+=x,nr++;
- else
- fprintf(fout2, "%i ", x);
- }
- return nr;
- }
- int main ()
- {
- FILE *fin, *fout1, *fout2;
- fin=fopen("pr2.in", "rt");
- if(!fin)
- {
- printf("Eroare la citire");
- getch();
- return 1;
- }
- fout1=fopen("pr2a.out", "wt");
- fout2=fopen("pr2b.out", "wt");
- int a,b,x,s=0;
- printf("Citeste a, b: ");
- scanf("%i %i", &a, &b);
- x=parcurgere(fin, fout1, fout2, &s, a, b);
- printf("%i %.2f", x, (float)s/x);
- getch();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment