Author Topic: Programovanie  (Read 188781 times)

RiTChi

  • Full Member
  • ***
  • Posts: 218
    • View Profile
Re: Programovanie
« Reply #225 on: 30.03.2011, 05:09:19 »
ako vymazem obrazovku?  ??? resp. co mam presne napisat do draw a ake kniznice pridat.... any idea ?

jedna idea by tu bola, precitat si obsah cvicenia...

hardest

  • Sr. Member
  • ****
  • Posts: 338
    • View Profile
Re: Programovanie
« Reply #226 on: 30.03.2011, 17:36:45 »
robim si prave 6. cviko a chcel som pouzit tu funkciu sleep() aby som videl ako sa prekresluje ten karel napriklad pri otacani, aby to neslo bleskovou rychlostou ... v cviku sa pise ze funkcia sleep() je deklarovana v hlavickovom subore windows.h, tak som pridal  #include <windows.h>  .. no nejde mi to ajtak ... ten windows.h si musim odniekial najskor stiahnut do netbeansu ?

esperian

  • Hero Member
  • *****
  • Posts: 873
    • View Profile
Re: Programovanie
« Reply #227 on: 30.03.2011, 17:49:55 »
a davas nejaku hodnotu do sleep(tu treba dat nejaku hodnotu )  ,teraz som to skusal a mne to ide .. skusal som to na turnLeft() konkretne som to napisal takto sleep(1);system("cls"); daj to pred draw() funkciu do turnLeftu napr
                 

hardest

  • Sr. Member
  • ****
  • Posts: 338
    • View Profile
Re: Programovanie
« Reply #228 on: 30.03.2011, 17:58:08 »
furt mi pise vykricnik pri tom riadku kde dam sleep(1); ze Unable to resolve identifier sleep

esperian

  • Hero Member
  • *****
  • Posts: 873
    • View Profile
Re: Programovanie
« Reply #229 on: 30.03.2011, 17:59:54 »
tak neviem mne tam tez vykricnik svieti ale zbehne to dobre .. tak potom neviem

esperian

  • Hero Member
  • *****
  • Posts: 873
    • View Profile
Re: Programovanie
« Reply #230 on: 30.03.2011, 18:03:06 »
a sice akurat pozeram ze ten vykricnik tam svieti pre system("cls"); a nie sleep

hardest

  • Sr. Member
  • ****
  • Posts: 338
    • View Profile
Re: Programovanie
« Reply #231 on: 30.03.2011, 18:24:38 »
no neviem, mne furt pise kompilator, ze -> main.c:76: warning: implicit declaration of function ‘sleep’ 

esperian

  • Hero Member
  • *****
  • Posts: 873
    • View Profile
Re: Programovanie
« Reply #232 on: 30.03.2011, 18:34:40 »
alebo stranu dozadu tu jeden pisal ze , no len potom neviem preco mne to ide so sleep a dokonca ked dam Sleep tak mi to vobec neberie do uvahy
"neexistuje sleep() ale existuje Sleep()"
« Last Edit: 30.03.2011, 18:37:10 by esperian »

orsi

  • Full Member
  • ***
  • Posts: 182
    • View Profile
Re: Programovanie
« Reply #233 on: 30.03.2011, 18:46:06 »
toto dopiste na koniec draw() a malo by to fungovať. cislo v Sleep si dajte podla uváženia.

Code: [Select]
   Sleep(500);
   system("cmd /c cls");

hardest

  • Sr. Member
  • ****
  • Posts: 338
    • View Profile
Re: Programovanie
« Reply #234 on: 30.03.2011, 18:47:50 »
orsi .. a nejaky hlavickovy subor .h si nepridaval ? ... lebo mne to nejak nejde .. toto: system("cmd.exe /c cls"); na vymazanie obrazovky mi funguje ale sleep nie

orsi

  • Full Member
  • ***
  • Posts: 182
    • View Profile
Re: Programovanie
« Reply #235 on: 30.03.2011, 18:53:44 »
tieto hlavickove mam:
Code: [Select]
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <windows.h>

 a Sleep s velkym S. s malym mi to neslo. skús.

hardest

  • Sr. Member
  • ****
  • Posts: 338
    • View Profile
Re: Programovanie
« Reply #236 on: 30.03.2011, 19:21:49 »
aha, tak tam bol problem, ja som to daval s maly s .. Sleep(); uz funguje

aj ked nie je to najlepsia vec, lebo ked dam vacsie cislo tak potom velmi vidno ze sa prepisuje cely svet a nie len karel

« Last Edit: 30.03.2011, 19:23:47 by hardest »

orsi

  • Full Member
  • ***
  • Posts: 182
    • View Profile
Re: Programovanie
« Reply #237 on: 31.03.2011, 01:52:51 »
ako na tu funkciu move() ? nemohol by niekto vysvetlit?

esperian

  • Hero Member
  • *****
  • Posts: 873
    • View Profile
Re: Programovanie
« Reply #238 on: 31.03.2011, 01:58:33 »
no ja som to skusal tak ze ak frontIsClear() tak potom podla karlovej orientacie napr ak je orientacia 0 tak som dal ze karel_x=karel_x+1; ono to fungovalo do lava aj doprava ale akonahle som ho dal hore alebo dole tak ten riedok v ktoroom sa karel nachadzal sa zmencil o 1 poziciu pretoze tam chybal karel , a ked uz presiel do dalsieho riadka tak tam uz bol o jeden znak viac pretoze tam presiel karel .. tak som to zmazal ale skus mozno to nejako rozbehas

ppeess

  • Guest
Re: Programovanie
« Reply #239 on: 31.03.2011, 02:25:32 »
no ja som to skusal tak ze ak frontIsClear() tak potom podla karlovej orientacie napr ak je orientacia 0 tak som dal ze karel_x=karel_x+1; ono to fungovalo do lava aj doprava ale akonahle som ho dal hore alebo dole tak ten riedok v ktoroom sa karel nachadzal sa zmencil o 1 poziciu pretoze tam chybal karel , a ked uz presiel do dalsieho riadka tak tam uz bol o jeden znak viac pretoze tam presiel karel .. tak som to zmazal ale skus mozno to nejako rozbehas
A y-novu suradnicu mas kde? :)

edit esp//no mozno aj preto mi to tak robilo xD
« Last Edit: 31.03.2011, 03:02:51 by esperian »

xxxx

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Programovanie
« Reply #240 on: 01.04.2011, 19:15:03 »
ako ste robili funkciu move() ?

mne to ide, ale takym sposobom, ze sa karel zmaze z aktualnej pozicie a da sa do pozicie o jednu dopredu ... lenze teraz mam problem, ked je vo svete na mieste karola beeper, tak sa zmaze aj ten beeper nie len karol ... ako inak sa to da bez toho mazania predchadzajucej pozicie ?

dikes

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: Programovanie
« Reply #241 on: 01.04.2011, 19:30:28 »
ako ste robili funkciu move() ?

mne to ide, ale takym sposobom, ze sa karel zmaze z aktualnej pozicie a da sa do pozicie o jednu dopredu ... lenze teraz mam problem, ked je vo svete na mieste karola beeper, tak sa zmaze aj ten beeper nie len karol ... ako inak sa to da bez toho mazania predchadzajucej pozicie ?

dikes
sak poziciu karla mas ulozenu v troch premennych - karel_x, karel_y a karel_direction. preco tieto informacie duplikujes a ukladas ich aj do sveta? akurat pri vykreslovani si daj potom pozor, aby si na vykreslenie karla nezabudol vo funkcii draw()
So say we all!

xxxx

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Programovanie
« Reply #242 on: 01.04.2011, 19:48:07 »
nechapem, ako by som ich duplikoval a ukladal do sveta?

v turnOn() ked natrafi na znacku karla tak da do karel_x=x, karel_y=y; a potom v draw() ked je v poli world karel, tak ho vykresli a to je prave problem, lebo pri move() mam napr. pre orientaciu na zapad: if(world[karel_x][karel_y]==ROBOT); karel_y++; world[karel_x][karel_y]=ROBOT; clrscr(); draw(); break;  ... lenze pri tomto mam dvoch karlov vedla seba lebo ked spravi draw() tak ho nakresli aj na to predchadzajuce miesto a neviem ako spravit aby ho tam nekreslilo aj na to predchadzajuce miesto bez toho vymazania, ze aby ho len presunulo z tej povodnej karel_x, karel_y do novej pozicie karel_x a karel_y a vykreslilo len tam

esperian

  • Hero Member
  • *****
  • Posts: 873
    • View Profile
Re: Programovanie
« Reply #243 on: 01.04.2011, 20:25:36 »
s pouzitim akej  kniznice by som mohol vykreslit krajsie karlov svet ??

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: Programovanie
« Reply #244 on: 01.04.2011, 20:53:27 »
nechapem, ako by som ich duplikoval a ukladal do sveta?

kolkokrat sa teda v tvojom programe nachadza informacia o tom, kde sa karel nachadza? ak je to viac, ako raz, tak duplikujes tento udaj. ked sa na to kuknem, tak vidim, ze tuto informaciu mas 2x:
- karel_x, karel_y, karel_direction => to je prvykrat
- world[karel_x][karel_y]==ROBOT => (vycuc z tvojho kodu) - tu je to druhykrat

moja rada znela, ze neukladaj ROBOT-a do world-u - uz mas jeho poziciu ulozenu v premennych karel_x, karel_y, karel_direction. ale ked budes svet vykreslovat vo funkcii draw(), tak:
- vykresluj ho postupne znak po znaku (prvok po prvku)
- ak prides na to, ze mas vykreslit znak na pozicii, na ktorej sa nachadza karel, tak nevykresli obsah sveta, ale vykresli aktualny svat karla (teda jeho smer)
So say we all!

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: Programovanie
« Reply #245 on: 01.04.2011, 20:53:40 »
s pouzitim akej  kniznice by som mohol vykreslit krajsie karlov svet ??
curses.h?

edit esp//dikes mirek
« Last Edit: 01.04.2011, 21:58:30 by esperian »
So say we all!

xxxx

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Programovanie
« Reply #246 on: 01.04.2011, 21:09:59 »
diky mirek, uz chapem kde bol problem

len mam este jeden problem, ked mi to vykresli cely svet tak celkom dole kde je ohranicenie sveta mriezkami, tak za poslednou osmou mriezkou je este jedna bodka, cize EMPTY ... ked prejdem char* map tak ulozim do world EMPTY alebo WALL ... no tu nemam uz nic za poslednou mriezkou, tak ma napadlo ci tam nie ten znak ukoncenia retazca \0 ... skusal som teda pridat jednu vetvu case, ze ak je '\0' tak nech robi len break, ale nejak to nejde, ajtak to tam da bodku pri vykreslovani

akoby to pri turnOn vobec nebralu tu vetvu case '\0': break;
« Last Edit: 01.04.2011, 21:14:11 by xxxx »

zaky

  • Jr. Member
  • **
  • Posts: 95
    • View Profile
Re: Programovanie
« Reply #247 on: 01.04.2011, 21:41:28 »
diky mirek, uz chapem kde bol problem

len mam este jeden problem, ked mi to vykresli cely svet tak celkom dole kde je ohranicenie sveta mriezkami, tak za poslednou osmou mriezkou je este jedna bodka, cize EMPTY ... ked prejdem char* map tak ulozim do world EMPTY alebo WALL ... no tu nemam uz nic za poslednou mriezkou, tak ma napadlo ci tam nie ten znak ukoncenia retazca \0 ... skusal som teda pridat jednu vetvu case, ze ak je '\0' tak nech robi len break, ale nejak to nejde, ajtak to tam da bodku pri vykreslovani

akoby to pri turnOn vobec nebralu tu vetvu case '\0': break;


for(k=0;k<strlen(map);k++)

mensie ako dlzka map
ci blud vravim? :)

// jo jasne :D
« Last Edit: 01.04.2011, 22:20:59 by zaky »

92% teenagerů neposlouchá svojí maminku. Patříš-li mezi zbývajících 8%, dej si tohle do podpisu

xxxx

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Programovanie
« Reply #248 on: 01.04.2011, 21:53:19 »
mam to takto:

int dlzka=strlen(map);
for(i=0; i<dlzka; i++)

a robi mi to tam tu bodku na konci

ppeess

  • Guest
Re: Programovanie
« Reply #249 on: 01.04.2011, 22:05:40 »
mam to takto:

int dlzka=strlen(map);
for(i=0; i<dlzka; i++)

a robi mi to tam tu bodku na konci
Sak to je to iste len si dlzku map(tych jej znakov) priradil premennej a hej to k ma byt mensie nie vacsie