PROGRAMSKI JEZIK C - ZADATAK 093
////////////////////////////////////////////////////////////////////////////
// ITS - Visoka Škola Strukovnih Studija Za Informacione Tehnologije
// http://www.its.edu.rs/
// Predmet: Osnovi Programiranja - Programski jezik C
//
// Primer: Program za proveru tacnosti bar koda. Po standardu
// bar kod se sastoji od 13 cifara, kontrola se vrsi:
// suma svih cifara na parnim pozicijama pomnozena sa 3 se sabira
// sa sumom cifara na neparnim pozicijama sem poslednje, dobijena
// suma se deli po modulu 10 i dobijeni ostatak pri deljenju se
// oduzima od broja 10. Dobijeni broj je kontrolni broj i cini
// poslednju cifru bar koda, ako kontrolni broj nije jednak
// poslednjoj cifri bar kod nije tacan!
// Nacin izracunavanja preuzet iz SLUZBENOG GLASNIKA
////////////////////////////////////////////////////////////////////////////
#include<stdio.h>
//prototip funkcije
int provera(int x[]);
main()
{
//deklarisanje promenljivih
int x[13], kBr, i;
//zaglavlje, radi lepseg prikaza
printf("\n************************************************\n");
printf("************************************************\n");
printf("** **\n");
printf("** >>PROGRAM ZA PROVERAVANJE ISPRAVNOSTI BAR KODA<< **\n");
printf("** **\n");
printf("** BROJ UNOSITE: -broj<razmak>broj... **\n");
printf("** -broj<ENTER>broj... **\n");
printf("** **\n");
printf("*************************************************\n");
printf("*************************************************\n\n");
//poruka korisniku za unos bar koda
printf(" * Unesite bar kod: \n\t");
//petlja za unos cifara bar koda
for(i=0;i<13;i++)
{
scanf("%d",&x[i]);
}
//poziv funkcije
kBr=provera(x);
//provera da li je poslednja cifra bar koda jednaka kontrolnom broju
if(kBr==x[12])
{
//poruka korisniku
printf("\n****************************\n");
printf("* VAS BAR KOD JE ISPRAVAN! *\n");
printf("****************************\n");
}
//u koliko nije jednak poruka o gresci
else
{
printf("\n****************************\n");
printf("* VAS BAR KOD NIJE ISPRAVAN! *\n");
printf("****************************\n");
}
}
//funkcija koja izracunava kontrolni broj
int provera(int x[])
{
//deklarisanje promenljivih
int i, suma=0, suma1=0, suma2=0, suma3=0, c, kontrolniBroj;
//for petlja koja se krece od prve do poslednje cifre bar koda
for(i=0;i<13;i++)
{
//suma cifara koje se nalaze na parnim pozicijama
suma1=x[1]+x[3]+x[5]+x[7]+x[9]+x[11];
//dobijena suma parnih pozicija pomnozena sa 3
suma2=3*suma1;
//suma cifara, sem poslednje, koje se nalaze na neparnim pozicijama
suma3=x[0]+x[2]+x[4]+x[6]+x[8]+x[10];
//zbir cifara na parnim i neparnim pozicijama
suma=suma2+suma3;
}
//promenljiva 'c' predstavlja ostatak pri deljenju krajnje sume po modulu 10
c=suma%10;
//provera, u koliko nema ostatka pri deljenju kontrolni broj je 0
if(c==0)
{
kontrolniBroj=0;
}
//u koliko ima ostatka
//od broja 10 se oduzima broj ostatka i dobijeni broj predstavlja kontrolni
else
{
kontrolniBroj=10-c;
}
//funkcija vraca rezultat
return kontrolniBroj;
}









Na ITS-u mi se sviđa što su sve tri godine koncentrisane na praktično znanje, ne postoje suvišni predmeti i jednom rečju gradivo je zaista konkretno. U poređenju sa drugim fakultetima, na ITS-u dobijam mogućnost da praktično primenim ono što naučim. Nema suvoparne teorije i učenja napamet. Sve što smo učili, ja sam zaista shvatila i sposobna sam to da upotrebim. Studentima je školovanje mnogo pristupačnije, svi servisi, studentska služba, profesori su uvek tu, nekako mi je sve dostupno. Računarski sistemi i osnove programiranja su mi do sada bili najbolji predmeti. Jedna od prednosti je što sa profesorima mogu da komuniciram i putem e-maila, a odgovori mi stižu već u toku dana. Planiram samostalno da se bavim programiranjem i sigurna sam da ću ovde steći svo potrebno znanje.






