[ Príspevkov: 18 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
NapísalOffline : 12.02.2012 16:18 | Pascal - chyba v kode

zdravim....mam taky problem ...potrebujem vytvori program ktory vykresli kruh a potom stlacim sipku hore a ten isty kruh vykresli hore o nieco vyssie ako ten prvy...napisal som cely zdrojak no niekde bude chyba....inicializoval som grafiku ktora ide a potom
circle(300,200,500);
readln(x);
if ord(x)=30 then circle(300,100,500);
readln;
end.
...no a tu je ten problem ono ked stlacim sipku ono to nebere ako znak neviem preco...a tzm padom sa mi nevzkona ani podmienka ...ako to upravit? :( za rady vopred dakujem

// pridané po 34 sekundách od posledného príspevku

ten polomer mal byt 50


Offline

Užívateľ
Užívateľ
Pascal - chyba v kode

Registrovaný: 23.12.10
Prihlásený: 10.09.22
Príspevky: 1056
Témy: 157 | 157
Bydlisko: KK/PP/BA
NapísalOffline : 12.02.2012 18:52 | Pascal - chyba v kode

1,
Kód:
 Zdrojovy kod patri do code!

2, Mohol si tu dat cely kod, zatial tu nevestime :)

k veci:
S kniznocou grafika som nerobil, ale bez kompletneho kodu to vyzera na chybu v deklaracii premennej.


_________________
HP ProBook 4530s Intel® Core™ i5-2430M (2.4GHz, 3MB, 2 jadrá)*4GB 1333MHz DDR3*ATI Mobility Radeon HD 6490 1GB + Intel HD Graphics 3000*640GB SATA 5400RPM *Windows 7 Home Premium 64 bitová verzia
Lenovo IdeaPad Z50-70 Intel Core i5 4210 Haswell* NVIDIA GeForce GT 840M 4GB + Intel HD Graphics 4000*SSHD 1TB 5400 otáčok + 8GB cache*RAM 4GB* Full HD (1920 × 1080)*Windows 10 pro

Boh je reálny, pokial nebol deklarovaný ako integer
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
Napísal autor témyOffline : 12.02.2012 23:24 | Pascal - chyba v kode

Kód:
program kruh;
uses graph;
var GD,GM:integer;
    x:char;
begin
GD:=VGA;
GM:=VGAHI;
Initgraph(GD,GM,'D:\TP\BIN');
circle(300,200,50);
readln(x);
if ord(x)=30 then circle(300,100,50);
readln;
end.

ok tu je cely moj zdrojak ...chcem aby ked stlacim klavesu sipka hore aby mi nakreslilo ten druhy kruh...no ono to nejde ....zacne program nakresli prvy gruh stlacim sipku a nic sa nedeje..preco ? :(


Offline

Skúsený užívateľ
Skúsený užívateľ
Pascal - chyba v kode

Registrovaný: 11.01.09
Prihlásený: 25.12.24
Príspevky: 1395
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 12.02.2012 23:31 | Pascal - chyba v kode

miesto
Kód:
readln(x);

pouzi ReadKey --> http://www.freepascal.org/docs-html/rtl ... adkey.html ( uses crt )


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
Napísal autor témyOffline : 12.02.2012 23:58 | Pascal - chyba v kode

uz som to zmenil a stale nejde ...pozzil som aj ten readkey....a som si urobil aj novy program aby som vvyskusal ten readkey a normalne mi nacitalo veci neukazalo a potom cez ord vypisalo ASCII....no co som si vsimol tak ked som stlacil sipku ktroukolvek tak vypisalo 0....ale ved sipky nemaju ASCII kod nula nie ?


Offline

Skúsený užívateľ
Skúsený užívateľ
Pascal - chyba v kode

Registrovaný: 11.01.09
Prihlásený: 25.12.24
Príspevky: 1395
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 13.02.2012 11:03 | Pascal - chyba v kode

Kód:
program kruh;
uses graph, crt;
var GD,GM:integer;
    x:char;
begin
GD:=VGA;
GM:=VGAHI;
Initgraph(GD,GM,'D:\TP\BIN');
circle(300,200,50);
x := ReadKey;
if ord(x)=72 then circle(300,100,50);
ReadKey;
end.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
Napísal autor témyOffline : 13.02.2012 16:22 | Pascal - chyba v kode

nefunguje to...ale ked dam
Kód:
...ord(x)=0..
...tak potom to ide ale funguje na vsetky sipky a ja chcem aby islo len hornu sipku


Offline

Skúsený užívateľ
Skúsený užívateľ
Pascal - chyba v kode

Registrovaný: 11.01.09
Prihlásený: 25.12.24
Príspevky: 1395
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 13.02.2012 16:44 | Pascal - chyba v kode

Zamen riadok:
Kód:
if ord(x)=72 then circle(300,100,50);

s tymto:
Kód:
if ( x = #72 ) then circle(300,100,50);


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
Napísal autor témyOffline : 13.02.2012 16:50 | Pascal - chyba v kode

stlae to nejde :(

// pridané po 1 minúte od posledného príspevku

teraz nejde na ziadnu sipku


Offline

Skúsený užívateľ
Skúsený užívateľ
Pascal - chyba v kode

Registrovaný: 11.01.09
Prihlásený: 25.12.24
Príspevky: 1395
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 13.02.2012 17:09 | Pascal - chyba v kode

Tak si spust tento program a stlac sipku hore. Malo by ti vypisat Arrow up! Ak nie, tak ti aspon vypise cislo, ktore bude pri tejto sipke - ale malo by to byt 72, no neviem, aky pascal pouzivas ( fpc mi to v linuxe berie ). Enterom to ukoncis.

Kód:
program test;
uses crt;
var ch: char;

BEGIN

repeat
  ch := ReadKey;
  if ch = #72 then
    Writeln( 'Arrow up!' )
  else
    Writeln( 'Char: ', Byte(ch) );
until ch = #13;

END.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
Napísal autor témyOffline : 13.02.2012 19:56 | Pascal - chyba v kode

napisalo mi Char:0 Arrow up!

// pridané po 20 minútach od posledného príspevku

ked stalcim sipku doprava tak napise char:0 char:77
ked stlacim sipku dolava tak napise char:0 char:75
...........................dole tak napise char:0 char:80
............................ hore tak napise char:0 Arrow up!
co to znamena mam nieco zle nastavene???


Offline

Skúsený užívateľ
Skúsený užívateľ
Pascal - chyba v kode

Registrovaný: 11.01.09
Prihlásený: 25.12.24
Príspevky: 1395
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 13.02.2012 20:19 | Pascal - chyba v kode

Nie, mas to dobre, ono to vypise aj tu nulu, pretoze to nie je normalny bezny znak. Takze vidis to sam, ak stlacis sipku hore, tato podmienka:
Kód:
if ch = #72 then

bude splnena. To znamena aj tato podmienka:
Kód:
if ( x = #72 ) then circle(300,100,50);

sa musi splnit a musi sa vykreslit novy kruh. Uz blizsie ti poradit nemozem, pretoze nemam kde skusit kod s kniznicou graph. Skus si to rozlozit do dvoch riadkov, cize takto:
Kód:
if ( x = #72 ) then
  circle(300,100,50);

a program krokuj pomocou debuggera, ci skoci aj na tento druhy riadok.


Offline

Užívateľ
Užívateľ
Pascal - chyba v kode

Registrovaný: 27.12.08
Prihlásený: 13.12.22
Príspevky: 1874
Témy: 96 | 96
Bydlisko: Bratislava,...
NapísalOffline : 13.02.2012 21:06 | Pascal - chyba v kode

fubu píše:
ked stalcim sipku doprava tak napise char:0 char:77
ked stlacim sipku dolava tak napise char:0 char:75
...........................dole tak napise char:0 char:80
............................ hore tak napise char:0 Arrow up!


Fico píše:
ono to vypise aj tu nulu, pretoze to nie je normalny bezny znak.

V pascale som so šípkami nepracoval, no pokiaľ to funguje skutočne takto, tak ono to načíta tú šípku na dva readkeye (pretože v rámci jedného cyklu v tom Ficovom programe nemôže vypísať dvakrát), a ty máš len jeden readkey.. Výstupom jedného readkeyu bude 0 a druhého bude kód šípky,

v tom prípade skús toto:
Kód:
program kruh;
uses graph, crt;
var GD,GM:integer;
    x,y:char;
begin
GD:=VGA;
GM:=VGAHI;
Initgraph(GD,GM,'D:\TP\BIN');
circle(300,200,50);
x := ReadKey; if (ord(x)=0) then y := ReadKey;
if ord(x)=0 then if ord(y)=72 then circle(300,100,50);
ReadKey;
end.


_________________
~Listen to your brain, not your heart~
NB1: Lenovo Y500: CPU: Intel Core i7-3630QM; GPU: nVidia GT650M 2GB SLi; RAM: 16GB DDR3; HDD: 1TB + 256GB SSD (m4); LCD: 15,6" 1920x1080; OS: Win8.1 64-bit + Arch Linux 64-bit (UEFI Powered DualBoot)
NB2: Asus K53SJ-SX093: CPU: Intel Core i3-2310M; GPU: Intel HD3000 / nVidia GT520M 1GB Optimus; RAM: 8GB DDR3; SSD: 128GB 840Evo; LCD: 15,6" 1366x768; OS: Win 8.1 Pro 64-bit (UEFI)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
Napísal autor témyOffline : 15.02.2012 0:07 | Pascal - chyba v kode

nBXXL ten program mi ide aj vypisuje jak ma podla sipky....skusal som aj zmenit a ide to :) a preco to ide na dva readkey a nejde rovno cez jeden???


Offline

Skúsený užívateľ
Skúsený užívateľ
Pascal - chyba v kode

Registrovaný: 11.01.09
Prihlásený: 25.12.24
Príspevky: 1395
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 15.02.2012 11:31 | Pascal - chyba v kode

http://www.freepascal.org/docs-html/rtl/crt/readkey.html

pascal píše:
If an extended or function key has been pressed, then the zero ASCII code is returned. You can then read the scan code of the key with a second ReadKey call.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
Napísal autor témyOffline : 15.02.2012 22:37 | Pascal - chyba v kode

aha to som si nevsimol....to tvorcovia toho pascalu uz tak naprogramovali ze musim to davat cez dva ?


Offline

Skúsený užívateľ
Skúsený užívateľ
Pascal - chyba v kode

Registrovaný: 11.01.09
Prihlásený: 25.12.24
Príspevky: 1395
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 16.02.2012 17:09 | Pascal - chyba v kode

Heh, tak urcite to tak nie je pre srandu kralikov :) Datovy typ char ma rozsah 0-255. Teraz sa pozri sa na ASCII tabulku:
http://www.lookuptables.com/index/web.gif

Ako vidis, nestaci to na popisanie vsetkych znakov.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 22.07.11
Prihlásený: 09.02.15
Príspevky: 229
Témy: 30 | 30
Napísal autor témyOffline : 18.02.2012 23:06 | Pascal - chyba v kode

aha pretooooo :D dakujem za rady :)


 [ Príspevkov: 18 ] 


Pascal - chyba v kode



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Chyba v kode ?

v PHP, ASP

1

410

03.06.2010 22:25

Blackshadow

V tomto fóre nie sú ďalšie neprečítané témy.

Chyba v kode

v PHP, ASP

2

387

17.07.2014 21:01

majky358

V tomto fóre nie sú ďalšie neprečítané témy.

Asi chyba v kode

v Redakčné systémy

9

538

27.01.2007 14:10

Leachim

V tomto fóre nie sú ďalšie neprečítané témy.

pascal- kde je chyba?

v Assembler, C, C++, Pascal, Java

8

832

02.03.2011 20:58

firefox4

V tomto fóre nie sú ďalšie neprečítané témy.

Pascal-chyba pri volani procedur

v Assembler, C, C++, Pascal, Java

4

728

15.12.2008 17:35

quatermain

V tomto fóre nie sú ďalšie neprečítané témy.

Chyba v programe Pascal (Lazarus)

v Assembler, C, C++, Pascal, Java

5

520

12.11.2016 19:15

BX

V tomto fóre nie sú ďalšie neprečítané témy.

Pascal - chyba pri I/O

v Assembler, C, C++, Pascal, Java

2

424

12.05.2012 9:53

Kroncisko

V tomto fóre nie sú ďalšie neprečítané témy.

Free Pascal a Turbo Pascal

v Assembler, C, C++, Pascal, Java

0

430

19.12.2014 13:18

Styracoz

V tomto fóre nie sú ďalšie neprečítané témy.

chybicka v kode

v Redakčné systémy

4

525

25.02.2007 15:25

Tom@S

V tomto fóre nie sú ďalšie neprečítané témy.

C - problem v kode

v Assembler, C, C++, Pascal, Java

13

853

23.03.2011 18:28

zdeniatqo

V tomto fóre nie sú ďalšie neprečítané témy.

premenne v kode PHP

v PHP, ASP

1

372

10.02.2015 15:36

killer

V tomto fóre nie sú ďalšie neprečítané témy.

JRidilla.net - V kode

v HTML, XHTML, XML, CSS

7

613

28.08.2008 13:19

ridilla

V tomto fóre nie sú ďalšie neprečítané témy.

Skript v kóde nefunguje

v JavaScript, VBScript, Ajax

2

548

17.09.2015 20:39

FJanči

V tomto fóre nie sú ďalšie neprečítané témy.

vyhladanie slova v zdrojovom kode

v JavaScript, VBScript, Ajax

2

599

30.03.2016 15:29

neopagan

V tomto fóre nie sú ďalšie neprečítané témy.

Co je zle v tomto kode

v Assembler, C, C++, Pascal, Java

3

463

21.03.2015 12:32

faraon

V tomto fóre nie sú ďalšie neprečítané témy.

Co je zle v tomto kode ?

v HTML, XHTML, XML, CSS

2

717

01.05.2007 9:24

mokus



© 2005 - 2024 PCforum, edited by JanoF