Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include<string.h>
- typedef struct Objekat{
- char naziv[20];
- int kap;
- int gos;
- char tip[20];
- }TObjekat;
- typedef struct Lista{
- TObjekat objekat;
- struct Lista *sl;
- }Tlista;
- void Ucitaj(FILE *fu,Tlista **glava){
- Tlista *novi;
- do{
- novi=(Tlista*)malloc(sizeof(Tlista));
- novi->sl=NULL;
- if(*glava==NULL)
- *glava=novi;
- else{
- Tlista *pom;
- pom=*glava;
- while(pom->sl != NULL)
- pom=pom->sl;
- pom->sl=novi;
- }
- }while(fscanf(fu,"%s %d %d %s",novi->objekat.naziv,&novi->objekat.kap,&novi->objekat.gos,novi->objekat.tip)!=EOF);
- Tlista *pom=*glava;
- while(pom->sl->sl!=NULL)
- pom=pom->sl;
- pom->sl=NULL;
- }
- void Stampaj(Tlista *glava){
- while(glava!=NULL){
- puts(glava->objekat.naziv);
- glava=glava->sl;
- }
- }
- void PodA(Tlista *glava){
- TObjekat max,min;
- Tlista *pom;
- max=glava->objekat;
- min=max;
- pom=glava;
- while(pom!=NULL){
- if (pom->objekat.gos<max.gos)
- max=pom->objekat;
- else if (pom->objekat.gos>min.gos)
- min=pom->objekat;
- pom=pom->sl;
- }
- printf("Najstariji je %s, a najmladji %s \n",max.naziv,min.naziv);
- }
- void PodB(Tlista *glava,char s[]){
- int n=0; FILE *nju;
- float pr=0;
- char str="kapacitet_";
- strcpy(str,s);
- strcpy(str,".txt");
- nju=fopen(str,"w");
- Tlista *pom=glava;
- while(pom!=NULL){
- if (pom->objekat.tip==s){
- pr=pr+pom->objekat.kap;
- n++;
- }
- pom=pom->sl;
- }
- pr=pr/n;
- fprintf(nju,"%d",pr);
- fclose(nju);
- }
- int main()
- { FILE *fu;
- char s[20];
- Tlista *glava;
- fu=fopen("ulazni.txt","r");
- glava=NULL;
- Ucitaj(fu,&glava);
- close(fu);
- // Stampaj(glava);
- PodA(glava);
- gets(s);
- PodB(glava,s);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement