Advertisement
filip710

PROG2 LV6 Z2

Jun 29th, 2016
283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.04 KB | None | 0 0
  1. /* Napišite C program koji će omogućiti unos n<10 artikala u račun. Unos
  2. implementirati u datoteci functions.c prema deklaraciji strukutra u myheader.c
  3. datoteci, pri čemu je primjer izvođenja programa, a ujedno i test case dan u
  4. komentaru u functions.c datoteci. Ispis računa implementiran je u program.c
  5. datoteci, te ga nije moguće mijenjati. */
  6.  
  7. //MAIN FUNKCIJA/PROGRAM
  8.  
  9. #include <stdio.h>
  10. #include "myheader.h"
  11.  
  12. void ispisRacuna(Racun *r) {
  13.   int i;
  14.   float cijena;
  15.   int kolicina;
  16.   printf("REZULTATI:\n");
  17.   printf("Kupac: %s\n", r->kupac);
  18.   printf("Prodavac: %s\n", r->prodavac);
  19.   printf("-----------------------------\n");
  20.   printf("Artikli: \n");
  21.   printf("rb   naziv                    kolicina    cijena    ukupno\n");
  22.   for (i = 0; i < r->broj_artikala; i++) {
  23.     cijena = r->artikli[i].cijena;
  24.     kolicina = r->artikli[i].kolicina;
  25.     printf("%-4d %-25s %-10d %-10.2f %.2f\n", i+1, r->artikli[i].naziv, kolicina, cijena, kolicina*cijena);
  26.   }
  27.   printf("\nUkupan iznos racuna: %.2f", r->ukupan_iznos);
  28. }
  29.  
  30. int main(void)
  31. {
  32.   int n, m;
  33.   Racun racun;
  34.  
  35.   unesiPodatkeRacuna(&racun);
  36.   ispisRacuna(&racun);
  37.  
  38.   return 0;
  39. }
  40.  
  41. //POMOĆNE FUNKCIJE
  42.  
  43. #include <string.h>
  44. #include <stdio.h>
  45. #include<stdlib.h>
  46. #include "myheader.h"
  47.  
  48. void unesiPodatkeRacuna(Racun *r) {
  49.     int i,n;
  50.     fgets(r->kupac,50,stdin);
  51.     fgets(r->prodavac,50,stdin);
  52.     scanf("%d", &r->broj_artikala);
  53.     r->ukupan_iznos=0;
  54.     for(i=0;i<r->broj_artikala;i++)
  55.     {
  56.         getchar();
  57.         fgets(r->artikli[i].naziv,50,stdin);
  58.         scanf("%f", &r->artikli[i].cijena);
  59.         scanf("%d", &r->artikli[i].kolicina);
  60.         r->ukupan_iznos+=r->artikli[i].cijena*r->artikli[i].kolicina;
  61.     }
  62. }
  63.  
  64. //HEADER
  65.  
  66. #ifndef MYHEADER_H
  67. #define MYHEADER_H
  68.  
  69. typedef struct artikl {
  70.   char naziv[50];
  71.   float cijena;
  72.   int kolicina;
  73. } Artikl;
  74. typedef struct racun {
  75.   char prodavac[50];
  76.   char kupac [50];
  77.   Artikl artikli[10];
  78.   int  broj_artikala;
  79.   float ukupan_iznos;
  80. } Racun;
  81.  
  82. void unesiPodatkeRacuna(Racun*);
  83.  
  84. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement