Hi

Welcome on my blog, i start it again in "English" language, i alreade have a site http://avvoltoio.extra.hu/en/ but not i start this blog again, maybe sometimes i will write Hungarian, but now i want to practise English, and there are more people who understand English than Hungarian. So what is the subject of this blog? From programming to the university, and my own life.

So this start is very short, cause i learning for a exam about algorithms which will be tomorrow, i feel i don't know enought so i maybe will be up all night and study it, but i fear i will not have enough strength to not sleep.

Visszatérés


http://avvoltoio.extra.hu/
visszatértem a régi oldalra, itt mindent megtalálsz!

Dohányozni tilos!

[8307] Dohányozni Tilos!
A feladat egy város egyszerűsített térképén bejelölni azokat a pontokat, ahol tilos a dohányzás. Adott a város cellákra osztott térképe, az hogy mely cellákban van kórház illetve iskola, valamint az, hogy ezek mekkora körzetében tilos a dohányzás. A feladat a térképen bejelölni azokat a cellákat amelyekben a kellő távolság hiánya miatt tilos a dohányzás. A város térképén minden cellát a középpontja azonosít.
Bemenet
A bemenetet a be.txt fájlból kell olvasni. A bemenet több sorból áll. Az első sorban két egész érték van szóközzel elválasztva, M és N (1 <= M,N <= 100), amik a térkép "magasságát” illetve "szélességét" jelentik, cellákban kifejezve. A második sor szintén két egész értéket tartalmaz: az első az iskolák (I), a második a kórházak (K) körüli tiltott zóna méretét tartalmazza (1 <= I,K <= 5). A 3. sorban egy egész szám van, ami megadja, hogy összesen hány iskola és kórház van a városban, majd soronként a sor elején egy ’I’ (iskola) vagy ’K’ (kórház) karakter, szóköz, majd két egész szám (S,O) szintén szóközzel
elválasztva, amik az adott intézmény sor, oszlop koordinátái (0 <= S < M, 0 <= O < N). A sorok és
oszlopok számozása 0-val kezdődik, a (0, 0) koordinátájú cella a bal felső cella. Egy cellában legfeljebb egy intézmény lehet.
Kimenet
A kimenetet a ki.txt fájlba kell írni. A kimenet pontosan M sor, minden sorban pontosan N darab ’.’, ’*’, ’I’ vagy ’K’ karakterrel. Az iskolák illetve kórházak celláit ’I’ illetve ’K’ karakterrel kell megjelölni.
Azokat a cellákat, ahol tilos a dohányzás, mert iskola vagy kórház található a megadott távolságon belül (légvonalban), a ’*’ karakterrel kell megjelölni. Azt a cellát, ahol szabad a dohányzás mert a közelben nincs intézmény egy ’.’ karakter jelöli. A (0, 0) koordinátájú cella a bal felső cella. A távolság számításánál az egyes cellák középpontjait kell figyelembe venni olyan módon, hogy a tiltás egy "zárt" távolságot jelent, azaz a határérték még tiltott zónának számít.
Példák
1. példa
Input
10 15
2 4
2
I 3 3
K 5 10
Output
...............
...*......*....
..***...*****..
.**I**.*******.
..***..*******.
...*..****K****
.......*******.
.......*******.
........*****..
..........*....

2
2. példa
Input
11 21
3 5
3
K 6 10
I 3 8
I 3 12
Output
........*...*........
......*********......
......*********......
.....***I***I***.....
......*********......
......*********......
.....*****K*****.....
......*********......
......*********......
......*********......
.......*******.......

3. példa
Input
10 20
1 1
2
I 1 1
K 8 18
Output
.*..................
*I*.................
.*..................
....................
....................
....................
....................
..................*.
.................*K*
..................*.



Megoldás:


#includeint main()
{
FILE *fb, *ki;
ki=fopen("ki.txt","w");
if(fb=fopen("be.txt","r")){
int cv1=0, cv2, cv3, o, s, i, k, szam, be=0;
fscanf(fb,"%d %d\n%d %d\n%d\n", &o, &s, &i, &k, &szam);
char ivk[szam+1];
int x[szam],y[szam], cv=0;
while(cv{
fscanf(fb,"%c %d %d\n", &ivk[cv], &x[cv], &y[cv]);
cv++;
}
cv=0;
fclose(fb);
if(o<=100 && o>=1 && s<=100 && s>=1 && i>=1 && i<=5 && k>=1 && k<=5){


char t[o+1][s+1], valami;
int b,j,f,l;



for(cv1=0;cv1 {
for(cv2=0;cv2 {
t[cv1][cv2]='.';
cv=0;
while(cv<=szam){
if(ivk[cv]=='K'){
if(((cv1-(x[cv]))-(cv2-(y[cv]))>=(-k)
&&(cv1-(x[cv]))-(cv2-(y[cv]))<=(k)
&&(cv1-(x[cv]))+(cv2-(y[cv]))>=(-k)
&&(cv1-(x[cv]))+(cv2-(y[cv]))<=(k)
)||((
cv1-(x[cv])>(-(k))
&&cv1-(x[cv])<(k)
&&cv2-(y[cv])<(k)
&&cv2-(y[cv])>(-(k)))))
{
if(k<4)
t[cv1][cv2]='*';
else if((((cv1-x[cv])+(cv2-y[cv])+(2*(k-1)))
&&
((cv1-x[cv])+(cv2-y[cv])-(2*(k-1)))
&&
(((cv1-x[cv])!=(k-1)&&(cv2-y[cv])!=(k-1))
||((cv1-x[cv])-(cv2-y[cv])+(2*(k-1))))
&&
(((cv1-x[cv])!=(k-1)&&(cv2-y[cv])!=(k-1))
||((cv1-x[cv])-(cv2-y[cv])-(2*(k-1))))))
t[cv1][cv2]='*';
}}
if(ivk[cv]=='I'){
if(((cv1-(x[cv]))-(cv2-(y[cv]))>=(-i)
&&(cv1-(x[cv]))-(cv2-(y[cv]))<=(i)
&&(cv1-(x[cv]))+(cv2-(y[cv]))>=(-i)
&&(cv1-(x[cv]))+(cv2-(y[cv]))<=(i)
)||((
cv1-(x[cv])>(-(i))
&&cv1-(x[cv])<(i)
&&cv2-(y[cv])<(i)
&&cv2-(y[cv])>(-(i)))))
{
if(i<4)
t[cv1][cv2]='*';
else if((((cv1-x[cv])+(cv2-y[cv])+(2*(i-1)))
&&
((cv1-x[cv])+(cv2-y[cv])-(2*(i-1)))
&&
(((cv1-x[cv])!=(i-1)&&(cv2-y[cv])!=(i-1))
||((cv1-x[cv])-(cv2-y[cv])+(2*(i-1))))
&&
(((cv1-x[cv])!=(i-1)&&(cv2-y[cv])!=(i-1))
||((cv1-x[cv])-(cv2-y[cv])-(2*(i-1))))))
t[cv1][cv2]='*';
}


}
cv++;
}
cv=0;
while(cv {
if((cv1==x[cv])&&(cv2==y[cv]))
{
t[cv1][cv2]=ivk[cv];
}
cv++;
}
}
}
for(cv1=0;cv1 {
for(cv2=0;cv2 {
fprintf(ki,"%c",t[cv1][cv2]);

}
fprintf(ki,"\n");
}


}}
else
fprintf(ki,"\n");
fclose(ki);
return 0;
}

Új blog weboldal helyett

Úgy tűnik a weboldalam az extra.hu-nál megszüntetem, a popup ablakok, állandó trójai fertőzések miatt, amiért szinte mindig kitilt a google az indexből.
Jelenleg még ismerkedem a bloggal, később átmásolom a régi bejegyzéseim az előző oldalamról.

Magyar Várak télen

Készítettem egy új videót Youtube-ra, a magyar várakról téli képeket tettem fel, a képek mindenhonnan össze lettek válogatva, többnyire a panoramio.com-ról.

Könyvelő, és leltár program

Sajnos a 2d Dwarf játékkal nem haladok, mert igen szűkös határidőre egy könyvelő programot kell írnom. Azt is SDL-ben készítem el, igen nehéz feladat, nem hittem volna hogy nehezebb 2d játéknál, de sajnos az. De legalább igazán jól belejövök az egymásba ágyazott dinamikus struktúratömbök használatába, és szövegbevitel rész is külön fejtörés.
Gyakorlásnak nagyon príma ha olyan feladatot kell megoldani ami mások igényeit kell hogy kielégítse.

Másik új dolog, és örömteli számomra hogy idén második félévben megismerkedhetek a JAVA programozási nyelvvel az egyetemen. Eddig csak J2me-t használtam, és ott is csak egy hello wordnél éppen jobb programot készítettem. Most legalább igazán tudni fogom az objektumorientáltságot :).

Dwarf

Itt az új videó a játékról, javítottam az ugrást, esést, és végre van háttér is :)

Videók az eddigi játékaimról

Először láthatjátok a frissen felvett képeket a Dwarf játékomról, és a pongról is tettem be videót annak aki lusta letölteni a játékot vagy a forrást.

Dwarf


SDLPong
(ne feledjétek, a játékot és a forrást a letöltésekben megtalálhatjátok)
Két videóm túllépte az ezres látogatottságot, és mivel itt még úgyse mutattam be ezeket itt most megteszem:
Magyar várak

Szeged, régen és most


Sprite rajzolás+map editor

Teljes sebességgel nekikezdtem a sprite-ok rajzolásába, példaként felteszek egyet amit most csináltam:



Mivel a sprite-ok rajzolásában nem vagyok profi, így a játék QVGA(320x240) felbontásban fog "pompázni". Másik oka ennek hogy a régi p1 133 mhz-es laptopomon fejlesztek amin nagyobb felbontásban lehet hogy szaggatna.
Természetesen a pályaszerkesztőt is folyamatosan csinálom hozzá, halad szépen minden :)

Az első C nyelven írt játékom! :)

Elkészítettem az első C nyelven írt játékomat, egy pong-ot.
Egy kicsit optimalizálatlan, vagyis amikor ha a gép belassúl, vagy indításkor nem indul el elég gyorsan, és a labda és az ellenfél ütője képes kimenni a pályáról, de pár másodperc múlva visszatérnek.
Ez azért van mert amikor rájöttem az időzítés működésére, és egyszerre több sprite mozgatására, nemigen törődtem már ezzel a programmal inkább hozzáláttam egy 2D side scrolling játék készítéséhez :).

Természetesen közzé tettem a forráskódját is, akit érdekli nyugodtan lefordíthatja, javíthatja.

A letöltések:
:: SDLpong source - forrás
:: SDLpong játék - winrar

Órarend

Feltöltöttem az egyetemi órarendet(2008/2009 második félév levelező programtervező informatika. mérnök informatika)



A kurzusokat is felvettem, ami felvehető volt. Tantárgyaim amik lesznek:
- Operációs rendszerek - ea. (Nagy Antal)
- Operációs rendszerek - gy3. (Bartók Tamás)
- Programozás I. ea. (Holló Csaba)
- Programozás I. gy. (Hegedűs Péter)
- Operációkutatás I. ea. (Szabó Péter Gábor)
- Operációkutatás I. gy3. (Szabó Péter Gábor)
- Számítógép hálózatok ea. (Bohus Mihály)
- Számítógép hálózatok gy3. (Végh Ádám Zoltán)
- Diszkrét matematika II. ea. (Kámán Tamás)
- Diszkrét matematika II. gy3 (Kámán Tamás)
- A sztochasztika alapjai ea. (Viharos László)
- A sztochasztika alapjai gy3. (Garab Ábel)

:: Letöltés itt ::

Programozás alapjai vizsga

A mai napon sikeresen levizsgáztam Programozás alapjai tantárgyból, Gergely Tamás tanárúrnál szóbelin. Ez volt a félév utolsó vizsgája számomra, vagyis sikeresen folytathatom az egyetem második félévét :)
A vizsga úgy nézett ki hogy 10-órára mentünk a 221-es terembe. Semmi gond nem volt, a tanár nem késett, csak egy diák, de nem csinált belőle problémát.
4-en mentek az első padsorba tételt húzni, a 2. sorba azok mentek akik a gyakorlati ZH eredményüket akarták javítani, majd a harmadikba sorba és a folyosóra azok akik várták hogy levizsgázzon az egyik első sorba lévő. Olyan 6. helyen vizsgázhattam, eléggé idegfeszítő volt a várakozás.
A tételek amit húztam:
- Szoftverfejlesztési modellek, vízesés modell 5(7) lépés
- Modulokból felépülő program, fordítás...
- Hanoi tornyai rekurzív függvénnyel algoritmus tervezés, kód, stb.
Sajnos hanoi tornyai nemigazán ment, de szerencsére a tanárúr sok segítő kérdést tett fel, amikre nagyjából tudtam válaszolni.

Programozás alapjai

Ez az első elérhető letöltés az oldalon, az egyetemen vetített 1046 oldalas programozás alapjai pdf formátumban. Szerzői két egyetemi tanár Dévényi Károly és Gergely Tamás.
Gergely Tamás volt aki levelezőn bennünket tanított.
Főként azért teszem fel ide ezt mert eddig tudtommal csak az egyetem FTP szerveréről(ftp.cab.u-szeged.hu) volt letölthető, és ahhoz nem férhet hozzá mindenki, csak a hallgatók.
Remélem nem gond ha felkerült, ha mégis valamely tanárúr olvassa ezt mosz kérem írjon egy levelet és azonnal leszedem.

A pdf-ben benne vannak az alap linux utasítások, az Ansi C programozási alapok, rendkívül részletesen és sok jó példaprogrammal leírva. Aki most kezd programozni annak ajánlott elolvasni, habár aki először látja biztosan elég nyersnek érzi. Másrészt összevissza ugrál a témák között(pl.: több programozásos példa van amely struktúrát használ, mégis eléggé a vége fele írja le annak a működését), így inkább más könyvvel párhuzamosan ajánlom olvasni. A másik hasznos kiegészítő lehetne benne egy tartalomjegyzék, ami nem készült hozzá mivel előadásokon szokták ezt vetíteni.

[ Letöltés itt ]

Ui.: Ráadásul pont holnap megyek vizsgázni(szóbelizni) pont ebből, aki még olvassa ezt kívánjon sok sok szerencsét.