Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<stdlib.h>
- #include<conio.h>
- #include<string.h>
- #include<time.h>
- #include<math.h>
- #define D_CRT_NONSTDC_NO_WARNINGS_GLOBALS
- #pragma warning(disable : 4996)
- struct zaposlenik
- {
- char ime[10];
- char prez[20];
- int sifra;
- };
- void izracunSati(int* sati, int* min, int currHours, int currMinutes);
- void unosPodataka(FILE *fp2, int sif, struct zaposlenik *z, int *s, int *m);
- void citanjePodataka(FILE *fp1, struct zaposlenik *z);
- int main(int argc, char* argv[])
- {
- struct zaposlenik z[5], *pok_zaposlenik;
- FILE*fp1, *fp2;
- int sif = 0, tmp = 0;
- int i = 0, j = 0, sati = 0, min = 0;
- int* s = (int*)malloc(sizeof(int));
- int* m = (int*)malloc(sizeof(int));
- srand((unsigned)time(NULL));
- s = &sati;
- m = &min;
- pok_zaposlenik = z;
- citanjePodataka(&fp1, pok_zaposlenik);
- unosPodataka(&fp2, sif, pok_zaposlenik, s, m);
- }
- void citanjePodataka(FILE *fp1, struct zaposlenik *z)
- {
- char imeDat[10] = { 0 };
- int i = 0;
- //printf("Unesite naziv datoteke: ");
- //scanf_s("%s", imeDat);
- fp1 = fopen("Text.txt", "r");
- if (fp1 == NULL)
- {
- printf("Datoteka nije otvorena!");
- }
- else
- {
- for (i = 0; i < 5; i++)
- {
- fscanf(fp1, "%s %s", z[i].ime, z[i].prez);
- z[i].sifra = rand() % (10000 - 1000) + 1000;
- printf(" %s %s %d\n", z[i].ime, z[i].prez, z[i].sifra);
- }
- }
- fclose(fp1);
- }
- void unosPodataka(FILE *fp2, int sif, struct zaposlenik* z, int *s, int *m)
- {
- char imeDat2[10] = { 0 };
- int currHours = 0, currMinutes = 0;
- int i = 0, j = 0;
- int tmp = 0;
- //printf("Unesite naziv datoteke: ");
- //scanf("%s", imeDat2);
- fp2 = fopen("Text1.txt", "w");
- if (fp2 == NULL)
- {
- printf("Datoteka nije otvorena!");
- }
- else
- {
- printf("\nUnesite trenutno vrijeme: ");
- scanf_s(" %d %d", &currHours, &currMinutes);
- i = 0;
- while (tmp == 0) {
- printf("\nMolimo unesite sifru: "); //u fukciju
- scanf(" %d", &sif);
- j = 0;
- for (i = 0; i < 5; i++)
- {
- if (z[i].sifra == sif)
- {
- j = 1;
- break;
- }
- }
- if (j == 1)
- {
- printf("\nUnesite vrijeme dolaska na posao (sate i minute): ");
- scanf(" %d %d", s, m);
- izracunSati(s, m, currHours, currMinutes);
- if (*m < 10)
- {
- printf("\nZaposlenik %d danas je radio %d:0%d sati.", z[i].sifra, *s, *m);
- fprintf(fp2, "Zaposlenik pod sifrom: %d danas je radio %d:0%d sati.\n", z[i].sifra, *s, *m);
- }
- else
- {
- printf("\nZaposlenik %d danas je radio %d:%d sati.", z[i].sifra, *s, *m);
- fprintf(fp2, "Zaposlenik pod sifrom: %d danas je radio %d:%d sati.\n", z[i].sifra, *s, *m);
- }
- printf("\nUnesite -1 za izlaz, a 0 za nastavak!\n");
- scanf(" %d", &tmp);
- }
- else
- {
- printf("\nNeispravan unos! Unesite ponovno!");
- printf("\nUnesite -1 za izlaz, a 0 za nastavak!\n");
- scanf(" %d", &tmp);
- }
- }
- fclose(fp2);
- }
- }
- void izracunSati(int* sati, int* min, int currHours, int currMinutes)
- {
- *sati = currHours - *sati;
- if (*sati < 0)
- {
- printf("Greska!"); //napravit prekid rada
- }
- *min = currMinutes - *min;
- if (*min < 0)
- {
- (*sati)--;
- *min = *min + 60;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement