Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<string.h>
- #include<stdlib.h>
- typedef struct
- {
- char naziv[30];
- char grad[30];
- int brBodovaPre;
- int brGolovaPre;
- }Klub;
- typedef struct
- {
- char nazivDomacina[30];
- char nazivGosta[30];
- int brojGolovaDomacina;
- int brojGolovaGosta;
- }Kolo;
- // Klub* ucitajKlubove(FILE *f,int brKlubova)
- // {
- // Klub* klubovi = (Klub*)malloc(brKlubova * sizeof(Klub));
- // for(int i=0;i<brKlubova;i++)
- // {
- // fgetc(f);
- // fgets(klubovi[i].naziv,30,f);
- // klubovi[i].naziv[strlen(klubovi[i].naziv)-1] = '\0';
- // fgets(klubovi[i].grad,30,f);
- // klubovi[i].grad[strlen(klubovi[i].grad)-1] = '\0'; // ovde je -1 unutar zagrade bilo...
- // fscanf(f,"%d",&klubovi[i].brBodovaPre);
- // fscanf(f,"%d",&klubovi[i].brGolovaPre);
- // }
- // return klubovi;
- // }
- void stampa(Klub *klubovi, int brKlubova)
- {
- for(int i=0;i<brKlubova;i++)
- {
- printf("naziv: %s, grad: %s, brBodova %d, brojGolova %d\n",klubovi[i].naziv,klubovi[i].grad,klubovi[i].brBodovaPre,klubovi[i].brGolovaPre);
- }
- }
- Klub* ucitajKlubove(FILE* f,int n){
- Klub * klubovi = (Klub*)malloc(n*sizeof(Klub));
- for(int i=0;i<n;i++){
- fgetc(f);
- fgets(klubovi[i].naziv,30,f);
- klubovi[i].naziv[strlen(klubovi[i].naziv)-1] = '\0';
- fgets(klubovi[i].grad,30,f);
- klubovi[i].grad[strlen(klubovi[i].grad)-1] = '\0';
- fscanf(f,"%d",&klubovi[i].brBodovaPre);
- fscanf(f,"%d",&klubovi[i].brGolovaPre);
- }
- return klubovi;
- }
- Kolo* ucitajKola(FILE* f,int n){
- Kolo* kola = (Kolo*)malloc(n*sizeof(Kolo));
- for(int i=0;i<n/2;i++){
- fgets(kola[i].nazivDomacina,30,f);
- kola[i].nazivDomacina[strlen(kola[i].nazivDomacina)-1] = '\0';
- fgets(kola[i].nazivGosta,30,f);
- kola[i].nazivGosta[strlen(kola[i].nazivGosta)-1] = '\0';
- fscanf(f,"%d",&kola[i].brojGolovaDomacina);
- fscanf(f,"%d",&kola[i].brojGolovaGosta);
- fgetc(f);
- }
- return kola;
- }
- void stampaKola(Kolo* kola, int n)
- {
- for(int i=0;i<n/2;i++)
- {
- printf("nazivDomacina: %s, nazivGosta: %s, brGolovaDomacina %d, brojGolovaGosta %d\n",kola[i].nazivDomacina,kola[i].nazivGosta,kola[i].brojGolovaDomacina,kola[i].brojGolovaGosta);
- }
- }
- void azurirajBodove(Klub* klubovi, Kolo* kola,int brojKlubova){
- for(int i=0;i<brojKlubova;i++){
- for(int j=0;j<brojKlubova/2;j++){
- if(strcmp(klubovi[i].naziv,kola[j].nazivDomacina) == 0){
- klubovi[i].brGolovaPre += kola[j].brojGolovaDomacina;
- if(kola[j].brojGolovaDomacina > kola[j].brojGolovaGosta){
- klubovi[i].brBodovaPre += 3;
- }
- else if(kola[j].brojGolovaDomacina == kola[j].brojGolovaGosta){
- klubovi[i].brBodovaPre += 1;
- }
- }
- if(strcmp(klubovi[i].naziv,kola[j].nazivGosta) == 0){
- klubovi[i].brGolovaPre += kola[j].brojGolovaGosta;
- if(kola[j].brojGolovaDomacina < kola[j].brojGolovaGosta){
- klubovi[i].brBodovaPre += 3;
- }
- else if(kola[j].brojGolovaDomacina == kola[j].brojGolovaGosta){
- klubovi[i].brBodovaPre += 1;
- }
- }
- }
- }
- }
- void sortiraj(Klub* klubovi ,int n){
- Klub t;
- for(int i=0;i<n-1;i++){
- for(int j=i+1;j<n;j++){
- if(klubovi[i].brBodovaPre < klubovi[j].brBodovaPre){
- t = klubovi[i];
- klubovi[i] = klubovi[j];
- klubovi[j] = t;
- }
- else if(klubovi[i].brBodovaPre == klubovi[j].brBodovaPre){
- if(klubovi[i].brGolovaPre < klubovi[j].brGolovaPre){
- t = klubovi[i];
- klubovi[i] = klubovi[j];
- klubovi[j] = t;
- }
- }
- }
- }
- }
- void main()
- {
- FILE *f,*g;
- int n;
- Klub *klubovi;
- f = fopen("klubovi.txt","r");
- g = fopen("kolo.txt","r");
- fscanf(f,"%d",&n);
- klubovi = ucitajKlubove(f,n);
- Kolo * kola = ucitajKola(g,n);
- fclose(g);
- fclose(f);
- // stampa(klubovi,n);
- //stampaKola(kola,n);
- azurirajBodove(klubovi,kola,n);
- sortiraj(klubovi,n);
- printf("naziv: %s, grad: %s, brBodova %d, brojGolova %d\n",klubovi[0].naziv,klubovi[0].grad,klubovi[0].brBodovaPre,klubovi[0].brGolovaPre);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement