0 дауыс
392 көрілді
Сәлем достар! Паскаль тілінде жазылған электрондық сағаттың коды бар, сол кодтардың әрқайсысының қандай мақсатта қолданылатындығы, яғни қандай рөл атқаратындықтарының мағынасын түсіндіріп жазсаңыздар нұр үстіне нұр қосылар еді)) Және болашақта мен сияқты студенттерге көмек болар еді))

Электрондық сағаттың коды:

uses Dos,Crt,Graph;

var  gd,gm,Xc,Yc,c1,c2,c3,c4,c5,c6,

     d1,d2,d3,d4,d5,d6,d7,d8:integer;

     hr,min,sec,hund:word;

 

procedure Zero(xn,yn:integer);

begin

  Rectangle(0+xn,0+yn,5+xn,10+yn);

end;

procedure One(xn,yn:integer);

begin

  Line(5+xn,0+yn,5+xn,10+yn);

end;

procedure Two(xn,yn:integer);

begin

  Line(0+xn,0+yn,5+xn,0+yn);

  Line(5+xn,0+yn,5+xn,5+yn);

  Line(5+xn,5+yn,0+xn,5+yn);

  Line(0+xn,5+yn,0+xn,10+yn);

  Line(0+xn,10+yn,5+xn,10+yn);

end;

procedure Three(xn,yn:integer);

begin

  Line(0+xn,0+yn,5+xn,0+yn);

  Line(5+xn,0+yn,5+xn,5+yn);

  Line(5+xn,5+yn,0+xn,5+yn);

  Line(5+xn,5+yn,5+xn,10+yn);

  Line(0+xn,10+yn,5+xn,10+yn);

end;

procedure Fouhr(xn,yn:integer);

begin

  Line(0+xn,0+yn,0+xn,5+yn);

  Line(5+xn,0+yn,5+xn,5+yn);

  Line(5+xn,5+yn,0+xn,5+yn);

  Line(5+xn,5+yn,5+xn,10+yn);

end;

procedure Five(xn,yn:integer);

begin

  Line(0+xn,0+yn,5+xn,0+yn);

  Line(0+xn,0+yn,0+xn,5+yn);

  Line(5+xn,5+yn,0+xn,5+yn);

  Line(5+xn,5+yn,5+xn,10+yn);

  Line(0+xn,10+yn,5+xn,10+yn);

end;

procedure Six(xn,yn:integer);

begin

  Line(0+xn,0+yn,5+xn,0+yn);

  Line(0+xn,0+yn,0+xn,5+yn);

  Line(5+xn,5+yn,0+xn,5+yn);

  Line(5+xn,5+yn,5+xn,10+yn);

  Line(0+xn,10+yn,5+xn,10+yn);

  Line(0+xn,5+yn,0+xn,10+yn);

end;

procedure Seven(xn,yn:integer);

begin

  Line(0+xn,0+yn,5+xn,0+yn);

  Line(5+xn,0+yn,5+xn,10+yn);

end;

procedure Eight(xn,yn:integer);

begin

  Rectangle(0+xn,0+yn,5+xn,10+yn);

  Line(0+xn,5+yn,5+xn,5+yn);

end;

procedure Nine(xn,yn:integer);

begin

  Line(0+xn,0+yn,5+xn,0+yn);

  Line(5+xn,0+yn,5+xn,5+yn);

  Line(5+xn,5+yn,0+xn,5+yn);

  Line(5+xn,5+yn,5+xn,10+yn);

  Line(0+xn,10+yn,5+xn,10+yn);

  Line(0+xn,0+yn,0+xn,5+yn);

end;

 

procedure Number(n,xn,yn:integer);

begin

  case n of

    0:Zero(xn,yn);

    1:One(xn,yn);

    2:Two(xn,yn);

    3:Three(xn,yn);

    4:Fouhr(xn,yn);

    5:Five(xn,yn);

    6:Six(xn,yn);

    7:Seven(xn,yn);

    8:Eight(xn,yn);

    9:Nine(xn,yn);

  end;

end;

 

procedure KarkasElectro;

begin

  {Rectangle(Xc-40,Yc-15,Xc+36,Yc+15);}

  putpixel(Xc-40+25,Yc-3,Green);

  putpixel(Xc-40+25,Yc+3,Green);

  putpixel(Xc-40+50,Yc-3,Green);

  putpixel(Xc-40+50,Yc+3,Green);

end;

 

procedure DrawElectro;

begin

  c1:=hr div 10;

  c2:=hr mod 10;

  c3:=min div 10;

  c4:=min mod 10;

  c5:=sec div 10;

  c6:=sec mod 10;

  SetColor(Black);

  Number(c1,Xc-40+5,Yc-15+10);

  Number(c2,Xc-40+15,Yc-15+10);

  Number(c3,Xc-40+30,Yc-15+10);

  Number(c4,Xc-40+40,Yc-15+10);

  Number(c5,Xc-40+55,Yc-15+10);

  Number(c6,Xc-40+65,Yc-15+10);

  GetTime(hr,min,sec,hund);

  c1:=hr div 10;

  c2:=hr mod 10;

  c3:=min div 10;

  c4:=min mod 10;

  c5:=sec div 10;

  c6:=sec mod 10;

  SetColor(Green);

  Number(c1,Xc-40+5,Yc-15+10);

  Number(c2,Xc-40+15,Yc-15+10);

  Number(c3,Xc-40+30,Yc-15+10);

  Number(c4,Xc-40+40,Yc-15+10);

  Number(c5,Xc-40+55,Yc-15+10);

  Number(c6,Xc-40+65,Yc-15+10);

end;

begin

gd:=0;

initgraph(gd,gm,'');

Xc:=GetMaxX div 2;

Yc:=GetMaxY div 2;

GetTime(hr,min,sec,hund);

KarkasElectro;

repeat

delay(1000);

DrawElectro;

until KeyPressed;

end.

1 жауап

0 дауыс

Паскаль билмеймин...

1. var  gd,gm,Xc,Yc,c1,c2,c3,c4,c5,c6,

     d1,d2,d3,d4,d5,d6,d7,d8:integer;

     hr,min,sec,hund:word;      // По моему variable объявление.

 

2. begin

  Line(0+xn,0+yn,5+xn,0+yn);

  Line(5+xn,0+yn,5+xn,5+yn);

  Line(5+xn,5+yn,0+xn,5+yn);

  Line(5+xn,5+yn,5+xn,10+yn);

  Line(0+xn,10+yn,5+xn,10+yn);

end; // Функциялар. Начало и конец.

3. SetColor(Green); // UI ды жасылга ауыстырды.

4. {Rectangle(Xc-40,Yc-15,Xc+36,Yc+15);} //Бир прямоугольник рисует

5. repeat // Кайталау

6. delay(1000); // Задержка 1 секундка

Короче, пал аштым.

...