FONForum
http://678540.1rf3m2gpa.asia/

Programerski tim
http://678540.1rf3m2gpa.asia/viewtopic.php?f=20&t=7631
Stranica 1 od 2

Autoru:  fonis [ 05.10.2006. 21:40:34 ]
Tema posta:  Programerski tim

Jedan od timova koji funkcionišu u okviru FONIS-a. One koje zanima šta smo radili prošlog semestra 'kraći' osvrt sledi.

Citiraj:
Saša Jovanović
Moderator
Programiranje - 2006/04/15 18:14

Tim koji će se baviti programiranjem nezavisno od programskog jezika. Želja je da se nauče algoritmi koji su nezavisni od programskog jezika, ali postoji mogućnost formiranja podtimova koji bi se bavili konkretnim jezikom.
Vođa tima je Janković Nemanja i tim se sastaje svake sedmice
utorkom od 18-20h


Saša Jovanović
Moderator
Re:Programiranje - 2006/04/23 04:45

Evo malo i mi da se aktiviramo na forumu. Do sada su održana dva sastanka, koja su više bila uvodnog tipa i gde smo se dogovorili kojim smerom cemo ici. Za početak ćemo se baviti grafovima i to po knjizi "Algorithms in Java, Part 5: Graph Algorithms". Ja ću za sledeći susret (koji će biti posle praznika, dogovorićemo se naknadno kad) da pripremim neko poglavljel koje mi se učini zanimljivo. Poslednji sastanak je održan u četvrtak 20. aprila i pošto mnogi nisu mogli da dođu ja ću ukaratko da ispričam šta smo radili. Naravno, to je ono što sam ja upamtio, pa se nadam da će Nemanja da me dopuni ili ispravi ukoliko nešto nije tačno.
Počeli smo da radimo grafove. Prvi deo sastanka je bio više teorijski, gde su grafovi definisani, a na drugom delu smo uradili program koji ispituje da li je graf povezan i da li u njemu postoje ciklusi.
Dakle, da krenemo iz početka. Graf predstavlja skup elemenata među kojima postoji binarna operacija. Grafički, graf se predstavlja tako što su elementi skupa čvorovi grafa, a relacije među tim elementima predstavljaju grane grafa. Znači, postoji skup kružića (čvorova) koji su povezani linijama (grane). Ukoliko dva čvora nisu povezana, to znači da među njima nije definisana relacija. Tako se dolazi do ideje da se graf predstavlja preko matrice (n x n) gde n broj cvorova. Ukoliko između cvora n1 i n2 postoji veza u polju (n1,n2) matrice se stavlja "1", a ukoliko ne postoji veza stavlja se "0".
Ima još puno toga da se kaže, ali mislim da je to mnogo bolje usmenim putem. Još šta je bitno. Graf može biti orijentisan ili neorijentisan (simetričan). To sve zavisi od vrste relacije (tj. da li je ona simetrična ili ne).
Ono što smo mi radili na prošlom sastanku, je bili ispitivanje povezanosti grafa. Povezan graf je onaj graf u kome su svaka dva čvora povezana, bilo posredno ili neposredno. Takođe, graf je jako povezan ukoliko između svaka dva elementa postoji direktna veza.
U sledećem postu se nalazi kod koji proverava da li je graf povezan.

Saša Jovanović
Moderator
Grafovi - 2006/04/23 04:56

public class Graf {
int brElemenata;
int brVeza;
int[][] veze;

public void napraviGraf() throws IOException{
BufferedReader unos = new BufferedReader(new FileReader("unos.tmp"));
int[] red = new int[2];
red = razdvojiElemente(unos.readLine());

brElemenata = red[0];
brVeza = red[1];

veze = new int [brElemenata][brElemenata]; //pravimo matricu za predstavljanje grafa
for(int k=0; k<brElemenata; k++)
for(int j=0; j<brElemenata; j++)
veze[k][j]=0;

for(int i=0; i<brVeza; i++){
red = razdvojiElemente(unos.readLine());
veze[red[0]][red[1]] = 1;
veze[red[1]][red[0]] = 1; //Posto je matrica simetricna
}
}

private int[] razdvojiElemente(String jedanRed){
int[] red = new int[2];
try{
int indexRazmaka = jedanRed.indexOf(" ");
red[0]= Integer.parseInt(jedanRed.substring(0, indexRazmaka));
red[1]= Integer.parseInt(jedanRed.substring(indexRazmaka+1));
}catch(NumberFormatException exception){
System.err.println("Los format broja!");
}
return red;

}
public boolean povezanost(){
int[] temp = new int[brElemenata]; //niz kojim se ispituje povezanost
//ukoliko su svi elementi jednaki graf je povezan
for(int k=0; k<brElemenata; k++){
temp[k]=k; //pocetna vrednost niza
}
//posmatramo samo gornju polovinu matrice jer je simetricna
for(int k=0; k<brElemenata; k++)
for(int j=k; j<brElemenata; j++){
if(veze[k][j]==1){
int elem = temp[k]; // elemenat za poredjenje
for(int m=0; m<brElemenata; m++)
if(temp[m] == elem)
temp[m] = temp[j];
}

}
for(int m=0; m<brElemenata-1; m++)
if(temp[m] != temp[m+1])
return false;
return true;
}
public static void main(String[] args) {
try{
Graf graf = new Graf();
graf.napraviGraf();
if(graf.povezanost())
System.out.println("Graf je povezan!");
else
System.out.println("Graf nije povezan!");
}catch(IOException e){}
}
}


Saša Jovanović
Moderator
Re:Grafovi - 2006/04/23 05:29

Iz fajla "unos.tmp" se čita graf. U prvom redu se nalazi broj elemenata i broj veza (koji su razdvojeni praznim karakterom), a u sledećim redovima se nalaze čvorovi koji su u vezi. Za sledeći sadržaj fajla

5 4
1 3
4 0
3 4
0 2

niz temp kojim se proverava povezanost bi imao sledeći sadržaj:
i 0 1 2 3 4
r(i) 0 1 2 3 4
r(i) 2 1 2 3 4
r(i) 4 1 4 3 4
r(i) 4 3 4 3 4
r(i) 4 4 4 4 4

U prilogu se nalazi projekata rađenu u eclipse-u.
File Attachment:
File name: Programiranje.zip
File size:3306 bytes

Nemanja
User
Re:Grafovi - 2006/04/26 20:35

Samo mala ispravka:

Cvorovi su elementi skupa
An:{a1,a2,...,an}
gde graf predstavlja graficku interpretaciju relacije
r gde veza(ivica) izmedju dva cvora ,i i k ,postoji ako je definisana relacija
r(ai,ak).

Bilo bi dobro da svi pogledaju po malo onu knjigu
kolko ko moze , pa da sledeci put ja malo manje pricam a malo vise svi drugi to je ideja!

Autoru:  Nizam [ 12.10.2006. 17:49:13 ]
Tema posta: 

Да ли се у овај тим прима неко ко није неки "хакер"? Дакле, неко ко зна помало да програмира, али ко је преман да се разбије од труда да научи више. Иначе, говорим о себи.
Да не околишамо - ви бисте од мене имали слабе користи, ја бих од вас имао велике (немате никакав интерес осим неког (евентуалног) претераног ентузијазма).

Autoru:  nik [ 12.10.2006. 21:07:34 ]
Tema posta: 

U timove su dobrodošli svi... ne pravimo nikakve disrkiminacije. To što neko nije expert u određenoj oblasti, ne znači da mu je pristup timu zabranjen. Do duše, jeste malo smorno ako na svakom okupljanju tima ista osoba priča i "uči" druge, ali postoji i drugačije rešenje... da neko ko ne zna mnogo spremi određenu oblast (u ovom slučaju na temu programiranja) i da je prezentuje drugima, naravno uz pomoć onih koji znaju malo više. Time će i sam dosta toga naučiti, a biće koristan i drugima. No, da se ne mešam previše... tu su vam Sale i Stradž najmerodavniji :)

Autoru:  homemade E&D [ 12.10.2006. 22:00:24 ]
Tema posta: 

Ma slobodno se mesaj, svi smo u istoj salati ;)

Vec sam rekao u topicu za timove, pa necu da se ponavljam, sem:

@Nizam - dobrodosao u programerski tim ;)

Autoru:  salebab [ 12.10.2006. 22:24:16 ]
Tema posta: 

hocu i ja u programerski tim...
a sta programiramo? :D

Autoru:  nik [ 12.10.2006. 22:30:08 ]
Tema posta: 

Pa neki program :p :lol:

Autoru:  Nizam [ 13.10.2006. 07:28:46 ]
Tema posta: 

homemade E&D je napisao:
@Nizam - dobrodosao u programerski tim ;)

Боље вас наш`о! :D
Јесу л` састанци уторком од 18 до 20, као што је то било прошлог семестра?

Autoru:  saki [ 13.10.2006. 14:57:33 ]
Tema posta: 

Danas smo se dogovorili da se nadjemo sledeceg petka u 12 - 14h.
Malo cemo ponoviti ono sto smo radili proslog semestra pa nastavljamo dalje. Pre svega da vidimo ko ce sve doci, ko je zainteresovan za ACM takmicenje, a ko za neko rekrativno programiranje.

Autoru:  kliford [ 13.10.2006. 15:24:00 ]
Tema posta: 

evo, jedva nadjoh i zadatke sa prethodnih rokova:
http://acm.ro/past.htm
:)
enjoy.. happy coding :)

Autoru:  saki [ 21.10.2006. 12:03:06 ]
Tema posta: 

Juče je održan prvi sastanak programerskog tima. Spomenuti su neki karakteristični problemi koji se javljaju prilikom programiranja. Opširnije nešto kasnije.

Korisni linkovi:
http://ace.delos.com/usacogate
http://ace.delos.com/contestgate

Vođa tima je Nemanja Janković, mail [email protected]

Sledeći sastanak je dogovoren za utorak od 14-16h. Da li svima to odgovara ili da menjamo termin? Dajte predloge.

Autoru:  Darth Neman [ 21.10.2006. 16:08:24 ]
Tema posta: 

Meni odgovara... Vidimo se...

Autoru:  Slepac [ 21.10.2006. 20:21:41 ]
Tema posta: 

I meni je ok. Vidimo se u utorak.

Autoru:  Macro [ 22.10.2006. 14:32:14 ]
Tema posta: 

Odgovara.

Autoru:  La:Dowina [ 23.10.2006. 17:29:10 ]
Tema posta: 

Мени не одговара! :( ...да је понедељак или среда 14-16 па ајде...А још више ми одговара уторак 16-18 па после тога 18-20 флеш...Јел може? :D

Autoru:  Nizam [ 24.10.2006. 19:02:09 ]
Tema posta: 

Ладовина, не може. Сналази се :)

Autoru:  LI [ 25.10.2006. 01:25:47 ]
Tema posta: 

ppl, moram danas da vas pohvalim :).
Danas je atmosfera u FONIS-u bila i vise nego "vrela" :trep:

Autoru:  kliford [ 25.10.2006. 01:46:01 ]
Tema posta: 

Sto, je l' bilo nekih riba? :D

Autoru:  Nizam [ 25.10.2006. 08:44:02 ]
Tema posta: 

Ма јок! ладовина је пустио ГАЛЕБА!

Autoru:  LI [ 25.10.2006. 09:49:50 ]
Tema posta: 

Eeeee, nizam, ko ti je kriv kad nisi predavac mladim programer(ka)ima :D ... as saki & klif...

Autoru:  La:Dowina [ 25.10.2006. 11:38:34 ]
Tema posta: 

LI je napisao:
Eeeee, nizam, ko ti je kriv kad nisi predavac mladim programer(ka)ima :D ... as saki & klif...


...ма биће, пооооолако! :D

П.С.Куме, шта то радиш?
Вежбамо за филм...и ти ћеш то да радиш, само сутра...!!! :lol:

Autoru:  Nizam [ 25.10.2006. 18:02:25 ]
Tema posta: 

LI je napisao:
Eeeee, nizam, ko ti je kriv kad nisi predavac mladim programer(ka)ima :D ... as saki & klif...

Ех, животе луталицо!

Autoru:  kliford [ 26.10.2006. 01:03:22 ]
Tema posta: 

ja nisam programerka :D

Autoru:  LI [ 26.10.2006. 01:16:34 ]
Tema posta: 

ma sta mi rece :D ??? Nisi, niko nije rekao da jesi... mislim bi mogao da budes predavac :)

Autoru:  Moma [ 26.10.2006. 17:10:17 ]
Tema posta: 

kliford (je'l znate koji mu je nadimak?) predavac?
naucili biste i o distorziji kabla od tastature do PS/2 prikljucka na ploci, sta god bila distorzija

LM selem velem samo utorkom (gde?valjda negde gde ima viska slobodnog prostora za pustanje golubova) poducavate/radite itd? jeste li prosli hashing?

Autoru:  PhoeniX [ 30.10.2006. 15:58:45 ]
Tema posta: 

ljudi kaD je sastanak tima? tj u koliko sati( ne za takmichenje-tim) ?

Stranica 1 od 2 Sva vremena su u UTC + 1 sat
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/