T-shirt apdruka,un mazo uzlīmju taisīšana. 4
Profesionālie tulkošanas pakalpojumi. 5
Pardod: MSI GeForce RTX 2080ti gaming X TRIO Graphic Card 1
Vēlos piedāvāt darbu online. 0
OCTA termiņš 13
Ka sauc Pasaules dalu kura dzivojam 4
google 1
Taustiņu funkcijas izmainīšana 2
Torrent 1
ESET izlaiž 2017.gada produktu izdevumus 23
VIAPLAY: Video tiešsaistē skatās 70% Latvijas iedzīvotāju 21
Katrā desmitajā datorā joprojām izmanto Windows XP 2
Google tuvākajā laikā atteiksies no Chrome paplašinājuma palaidēja 2
Acer ievieš nozares pirmo ieliekto monitoru ar acu izsekošanas funkcionalitāti 4
Adobe laiž klajā ārkārtas atjauninājumu 3
Tests: Cik precīzs ir "lēta gala" velo spidometrs? 3
Leģendārie telefoni – Nokia 3310 un citi 3
Puisis iziet Super Mario spēli mazāk kā piecu minūšu laikā un labo pasaules rekordu 2
Līdz 29.jūlijam atjaunini savu Windows bez maksas! 3
Kā uzlabot televizora skaņu? 2
Programma, ar kuras palīdzību fotogrāfijas pārveidot .gif formātā 1
Aproce, kas sastāv no 25 instrumentiem 1
Trīs padomi televizora izvēlei 2
Windows 7 ēra tuvojas noslēgumam, Microsoft koncentrējas uz Windows 10 1
Lietotāji online: 71
Reģistrētie lietotāji online: 0
Viesi online: 71
sveiki, man te vajag uztaisīt vienu programmiņu, bet nesanāk...
tātad, man vajag izveidot, lai "X" pārvietojas pāri ekrānam un, kad sasniedz malu, maina virzienu (nu tā kā vienā no tiem windows screen seiveriem), un vēl, ja nospiež taustiņus (uz augšu, uz leju, pa labi, pa kreisi), "X" dodas norādītajā virzienā, un tālāk atkal uz riņķi. kā to var uzrakstīt?
ja kāds zina, lūdzu pasakiet!
un lūdzu bez komentāriem ne pa tēmu!
program x_game;
uses crt;
var
x, y, curx, cury :byte;
ch :char;
a :integer;
begin
clrscr;
x:=80 div 2;
y:=25 div 2;
a:=0;
repeat
gotoxy(x,y);
write('X');
curx:=wherex;
cury:=wherey;
gotoxy(curx-1,cury-1);
write(' ');
gotoxy(curx+1,cury-1);
write (' ');
gotoxy(curx+1,cury+1);
write(' ');
gotoxy(curx-1,cury+1);
write (' ');
repeat
x:=x+1;
y:=y+1;
until y<24;
repeat
x:=x+1;
y:=y-1;
until x<79;
repeat
x:=x-1;
y:=y-1;
until y>2;
repeat
x:=x-1;
y:=y+1;
until y<24;
repeat
x:=x-1;
y:=y-1;
until x>2;
repeat
y:=y-1;
x:=x+1;
until y>2;
until a=1;
readln;
end.
man ir tā, bet kkā nesanāk kā vajag
Vispirms, kur tu nolasi kāda poga ir nospiesta?
Visam jānotiek vienā ciklā, aptuveni šādi
repeat
if uz augšu then begin deltax = 0; deltay = 1; end;
if uz leju then begin deltax = 0; deltay = -1; end;
if pa labi then begin deltax = -1; deltay = 0; end;
if pa kreisi then begin deltax = 1; deltay = 0; end;
curx:= curx + deltax;
cury:=cury + deltay;
DrawX(curx, cury);
until ... beigas ..
man nevajag tikai ar pogām, vispirms vajag, lai viņš pats kustas, pēc tam tikai to, lai kko nospiežot mainās
Iemācies lietas un uzraksti pats, mājasdarbi tiek uzdoti ar mērķi, lai skolnieki kaut ko iemācītos
Uz konkrētiem jautājumiem varu atbildēt, lai gan #3 jau 90% no visa ir uzrakstīts
nu ok, jautājums:
kas jāraksta, lai tas x rakstītos ekrāna robežās, t.i. x no 2 līdz 79 un y no 2 līdz 24?
un kas jāraksta, lai atsitoties mainās virziens?
Es lietotu XPieaugums un Ypieaugums, sasniedzot malu (X<2 VAI X>79 un attiecīgi Y) tos mainītu uz pretējo.
#3 tos nosaucis par deltax un deltay un curx cury
Tev taču jau atbildēja:
Eric rakstīja:
Iemācies lietas un uzraksti pats, mājasdarbi tiek uzdoti ar mērķi, lai skolnieki kaut ko iemācītos
#12 šoreiz tas nederēs - tas būs PackMan tipa risinājums, autors grib billjarda veida kustību
lūdzu palīdzību, atrast kļūdu.....
program pulkstenis;
uses crt;
var f1,f2:text;
a,b,c,d,s,m,k,h,x:integer;
z:string;
begin
textmode(co80);
textcolor(15);
clrscr;
assign(f1,'pulkst.dat');
assign(f2,'pulkst.rez');
reset(f1);
rewrite(f2);
readln(f1,z);
val(copy(z,1,1),a,x);
val(copy(z,2,1),b,x);
val(copy(z,4,1),c,x);
val(copy(z,5,1),d,x);
s:=a*10+b;
m:=c*10+d;
k:=d*10+c;
if k>m then begin
if s<10 then write(f2,'0');
write(f2,s,':');
if k<10 then write(f2,'0');
write(f2,k);
end
else begin
if a<b then k:=a
else k:=b;
if c<d then h:=c
else h:=d;
if k<h then begin if k=10 then write(f2,'0');
if k>6 then begin k:=h;
h:=k;
end;
write(f2,k);
if h=10 then write(f2,'0');
write(f2,h,':');
end
else begin if h=10 then write(f2,'0');
if h>6 then begin h:=k;
k:=h;
end;
write(f2,h);
if k=10 then write(f2,'0');
write(f2,k,':');
end;
if a>b then k:=a
else k:=b;
if c>d then h:=c
else h:=d;
if k>h then begin if h=10 then write(f2,'0');
if h>6 then begin h:=k;
k:=h;
end;
write(f2,h);
if k=10 then write(f2,'0');
write(f2,k);
end
else begin if k=10 then write(f2,'0');
if k>6 then begin k:=h;
h:=k;
end;
write(f2,k);
if h=10 then write(f2,'0');
write(f2,h);
end;
end;
close(f1);
close(f2);
readkey;
end.
nevaru atrast, kas par vainu!
šai programmai vajadzīga ātrā palīdzība.
manuprāt jāsāk būtu ar komentāru pievienošanu, funkciju izveidošanu un tad varētu runāt par "ātro palīdzību"...
iekopē savu kodu, palabošu