PROGRAMSKI JEZIK C - PRIMER 060
///////////////////////////////////////////////////////////////////////
// ITS - Visoka Škola Strukovnih Studija Za Informacione Tehnologije
// http://www.its.edu.rs/
// Predmet: Osnovi Programiranja - Programski jezik C
//
// Primer: Ispis ASCII tabele - obicna i prosirena
///////////////////////////////////////////////////////////////////////
#include <stdio.h>
main()
{
// deklarisanje promenljivih
// promenljiva 'i' sluzi za karaktere iz ASCII tabele
// promenljiva 'pitanje' je pomocna i sluzi za smestanje odgovora na Y/N pitanje
// promenljiva 'j' je pomocna i koristi se u svim 'for' petljama
// promenljiva 'k' se koristi za odredjivanje znakova prosirene ASCII tabele
char i = ' ', pitanje;
int j, k = 128;
// sada sledi niz naredbi 'printf', namenjenih za formiranje i ispisivanje okvira tabele
// pri tome se koristi karakter, koji je u prosirenoj ASCII tabeli oznacen brojem 178
printf("\n\n");
printf("\t%c", (char)178);
for(j=1; j<=64; j++) // ova petlja ispisuje 64 puta karakter 178 u istom redu
{
printf("%c", (char)178);
}
printf("\n\t%c%c%c\t\t\t\t\t\t\t%7c%c%c", (char)178, (char)178, (char)178, (char)178, (char)178, (char)178);
// koriscenjem TAB-ova, naslov tabele doveden je na sredinu
printf("\n\t%c%c%c\t\t\t ASCII tabela\t\t\t%7c%c%c\n", (char)178, (char)178, (char)178, (char)178, (char)178, (char)178);
printf("\t%c%c%c\t\t\t\t\t\t\t%7c%c%c\n", (char)178, (char)178, (char)178, (char)178, (char)178, (char)178);
printf("\t%c", (char)178);
for(j=1; j<=64; j++) // 64 puta ispisuje dati karakter u istom redu
{
printf("%c", (char)178);
}
printf("\n");
// ova 'for' petlja sluzi za ispisivanje brojeva 32-126 i, njima odgovarajucih, karaktera
// ima ukupno 19 iteracija, jer je ideja da tabela ima 5 kolona sa po 19 clanova
// 5*19=95 to je ukupan broj printabilnih karaktera ASCII tabele
// pri svemu ovome, vodi se racuna i o stampanju granica tabele ( koristi se karakter 178)
for(j=1; j<=19; j++)
{
printf("\t%c%c%c", (char)178, (char)178, (char)178);
printf("%4d%4c%4c", i, i, (char)178);
printf("%4d%4c%4c", i+19, i+19, (char)178);
printf("%4d%4c%4c", i+38, i+38, (char)178);
printf("%4d%4c%4c", i+57, i+57, (char)178);
printf("%4d%4c%4c%c%c\n", i+76, i+76, (char)178, (char)178, (char)178);
i += 1;
}
// sada sledi niz 'printf' komandi za ispisivanje granica tabele
printf("\t%c", (char)178);
for(j=1; j<=64; j++)
{
printf("%c", (char)178);
}
printf("\n\n");
// ispisivanje obavestenja za korisnika
printf("Napomena:\nASCII tabela obuhvata znakove, kojima odgovaraju brojevi 0-127.\nDakle, ukupno 128 znakova.\nPrva 32 karaktera ASCII tabele rezervisana su za posebne funkcije.\nSamim tim, nisu ukljuceni u gornju tabelu, iako joj, po pravilu, pripadaju.\nIz ove grupe znakova,u gornji prikaz je ukljucen znak, koji odgovara broju 32,\na to je \"SPACE\".\nTakodje, treba naglasiti, da se u gornjoj tabeli ne nalazi ni znak 127,\nkoji je rezervisan za \"DELETE\".\n\n");
printf("Postoji i prosirena ASCII tabela, koja obuhvata znakove,\nkojima odgovaraju brojevi 0-255.\n");
// ispisivanje upita korisniku
printf("Da li zelite da vidite narednih 128 znakova, koji zajedno\nsa prvih 128 karaktera predstavljaju prosirenu ASCII tabelu? (Y/N)\n");
// unos odgovora sa tastature
// odgovor se dodeljuje promenljivoj 'pitanje'
scanf("%c", &pitanje);
// 'while' nam sluzi da proverimo da li je korisnik uneo ispravan odgovor
// ako je korisnik uneo bilo sta osim malog ili velikog slova Y ili N
// ispisuje se poruka i zahteva se unos ispravnog odgovora
// ovde koristimo pomocnu promenljivu 'pitanje'
while(pitanje != 'N' && pitanje != 'n' && pitanje != 'Y' && pitanje != 'y')
{
printf("Potrebno je da unesete Y ili N:\n");
scanf("%s", &pitanje);
}
// selekcija 'if' odredjuje tok izvrsavanja programa u slucaju ispravnog odgovora
// zavisno da li je korisnik odgovorio sa Y ili sa N
if(pitanje == 'Y' || pitanje == 'y') // u slucaju da je korisnik odgovorio sa Y ili y
{
// niz 'printf' komandi za ispisivanje granica tabele
printf("\n\n");
printf("\t%c", (char)178);
for(j=1; j<=52; j++) // ispisuje 52 puta dati karakter u istom redu
{
printf("%c", (char)178);
}
printf("\n\t%c%c%c\t\t\t\t\t\t%3c%c%c", (char)178, (char)178, (char)178, (char)178, (char)178, (char)178);
printf("\n\t%c%c%c\t\tASCII tabela Extended\t\t%3c%c%c\n", (char)178, (char)178, (char)178, (char)178, (char)178, (char)178);
printf("\t%c%c%c\t\t\t\t\t\t%3c%c%c\n", (char)178, (char)178, (char)178, (char)178, (char)178, (char)178);
printf("\t%c", (char)178);
for(j=1; j<=52; j++) // ispisuje 52 puta dati karakter u istom redu
{
printf("%c", (char)178);
}
printf("\n");
// ova 'for' petlja sluzi za ispisivanje brojeva 128-255 i, njima odgovarajucih, karaktera
// ima ukupno 32 iteracije, jer tabela treba da ima 4 kolone sa po 32 clana
// 4*32=128 to je ukupan broj dodatnih znakova
// ovde se koristi pomocna promenljiva 'k'
// pri svemu ovome, vodi se racuna i o stampanju granica tabele ( koristi se karakter 178)
for(j=1; j<=32; j++)
{
printf("\t%c%c%c", (char)178, (char)178, (char)178);
printf("%4d%4c%4c", k, (char)k, (char)178);
printf("%4d%4c%4c", k+32, (char)(k+32), (char)178);
printf("%4d%4c%4c", k+64, (char)(k+64), (char)178);
printf("%4d%4c%4c%c%c\n", k+96, (char)(k+96), (char)178, (char)178, (char)178);
k += 1;
}
// naredbe za ispisivanje granica tabele
printf("\t%c", (char)178);
for(j=1; j<=52; j++) // ispisuje 52 puta dati karakter u istom redu
{
printf("%c", (char)178);
}
printf("\n\n");
}
else // u slucaju da je korisnik odgovorio sa 'N' ili 'n'
{
// ispis poruke korisniku
printf("Izabrali ste da ne zelite prikaz dodatne tabele.\n");
}
}








"U februaru 2008. godine sam konkurisao za poziciju .Net Developera (programera početnika) u firmi Pexim Solutions. Polagao sam pet različitih testova, da bi me pozvali na poslednji razgovor. Dobio sam mnogo bolji posao - Build Engineera za koju je jedan od uslova bio dve godine radnog iskustva na istoj poziciji, tako da se nisam ni usudjivao da konkurišem. Ocenili su da cu moći, uz maksimalnu ozbiljnost i pomoć starijih kolega, da opravdam njihovo poverenje i dobro obavljam poslove na toj poziciji, sve to zahvaljujući znanju i iskustvu koje sam stekao radeći i studirajući na ITS-u."






