Please note, this is a STATIC archive of website www.tutorialspoint.com from 11 May 2019, cach3.com does not collect or store any user information, there is no "phishing" involved.
Tutorialspoint

ciao

program clock_natalizzio;
uses crt,dos;
var
        h, m, s, cent,old_s : Word;
        f:char;





   procedure seg_a (spost_x:integer;spost_y:integer;lung_seg:integer;c:char);
         var i:integer;
         begin
              for i:=1 to lung_seg*2 do begin
                                           gotoxy (spost_x+(i),spost_y+1);
                                           writeln (c);


                                      end;
         end;

   procedure seg_b (spost_x:integer;spost_y:integer;lung_seg:integer;c:char);
         var i:integer;
         begin
              for i:=1 to lung_seg do begin
                                           gotoxy (spost_x+(lung_seg*2-1),spost_y+i);
                                           writeln (c);

                                      end;
         end;

   procedure seg_c (spost_x:integer;spost_y:integer;lung_seg:integer;c:char);
         var i:integer;
         begin
              for i:=1 to lung_seg do begin
                                           gotoxy (spost_x+(lung_seg*2-1),spost_y+lung_seg+i);
                                           writeln (c);

                                      end;
         end;

   procedure seg_d (spost_x:integer;spost_y:integer;lung_seg:integer;c:char);
         var i:integer;
         begin
              for i:=1 to lung_seg*2 do begin
                                           gotoxy (spost_x+(i),spost_y+(lung_seg*2-1)+1);
                                           writeln (c);

                                      end;
         end;

   procedure seg_e (spost_x:integer;spost_y:integer;lung_seg:integer;c:char);
         var i:integer;
         begin
              for i:=1 to lung_seg do begin
                                           gotoxy (spost_x+1,spost_y+lung_seg-1+i+1);
                                           writeln (c);

                                      end;
         end;

   procedure seg_f (spost_x:integer;spost_y:integer;lung_seg:integer;c:char);
         var i:integer;
         begin
              for i:=1 to lung_seg do begin
                                           gotoxy (spost_x+1,spost_y+i);
                                           writeln (c);

                                      end;
         end;

   procedure seg_g (spost_x:integer;spost_y:integer;lung_seg:integer;c:char);
         var i:integer;
         begin
              for i:=1 to lung_seg*2 do begin
                                           gotoxy (spost_x+(i),spost_y+lung_seg);
                                           writeln (c);

                                      end;
         end;




   procedure display7_clocK (ore:integer;min:integer;sec:integer) ;
         const y=7;   //spost_y
         var v,z,x(*spost_x*),f:integer;
             classificazione: array [1..6] of integer;
             carat:char;
         begin
          s:=3;
          x:=0;
          z:=0;
          classificazione[1]:=(ore div 10);                     //h1
          classificazione[2]:=ore - (classificazione[1]*10);    //h2
          classificazione[3]:=(min div 10);                     //m1
          classificazione[4]:=min - (classificazione[3]*10);    //m2
          classificazione[5]:=(sec div 10);                     //s1
          classificazione[6]:=sec - (classificazione[5]*10);    //s2
          carat:='*';



          for v:=1 to 6 do begin
           z:=classificazione[v];

           x:=x+5;
           case z of
              0:  begin seg_a(x,y,s,carat); seg_b(x,y,s,carat); seg_c(x,y,s,carat); seg_d(x,y,s,carat); seg_e(x,y,s,carat); seg_f(x,y,s,carat); end;
              1:  begin seg_b(x,y,s,carat); seg_c(x,y,s,carat); end;
              2:  begin seg_a(x,y,s,carat); seg_b(x,y,s,carat); seg_d(x,y,s,carat); seg_e(x,y,s,carat); seg_g(x,y,s,carat); end;
              3:  begin seg_a(x,y,s,carat); seg_b(x,y,s,carat); seg_c(x,y,s,carat); seg_d(x,y,s,carat); seg_g(x,y,s,carat); end;
              4:  begin seg_b(x,y,s,carat); seg_c(x,y,s,carat); seg_f(x,y,s,carat); seg_g(x,y,s,carat); end;
              5:  begin seg_a(x,y,s,carat); seg_c(x,y,s,carat); seg_d(x,y,s,carat); seg_f(x,y,s,carat); seg_g(x,y,s,carat); end;
              6:  begin seg_a(x,y,s,carat); seg_c(x,y,s,carat); seg_d(x,y,s,carat); seg_e(x,y,s,carat); seg_f(x,y,s,carat); seg_g(x,y,s,carat); end;
              7:  begin seg_a(x,y,s,carat); seg_b(x,y,s,carat); seg_c(x,y,s,carat); seg_f(x,y,s,carat); end;
              8:  begin seg_a(x,y,s,carat); seg_b(x,y,s,carat); seg_c(x,y,s,carat); seg_d(x,y,s,carat); seg_e(x,y,s,carat); seg_f(x,y,s,carat); seg_g(x,y,s,carat); end;
              9:  begin seg_a(x,y,s,carat); seg_b(x,y,s,carat); seg_c(x,y,s,carat); seg_d(x,y,s,carat); seg_f(x,y,s,carat); seg_g(x,y,s,carat); end;
            end;
            x:=x+s;
            if (v=2) then begin
                               for f :=1 to s*2 do if ((f=3) or (f=4) or (f=6)or (f=7)) then
                                                   begin
                                                   gotoxy(x+3,y+f);
                                                   write ('*');
                                                   end;
                               x:=x+7;
                          end;

          end;

          end;











begin

            repeat


                   old_s:=0;
                   gettime(h,m,s,cent);
                   if (s <> old_s) then

                   begin
                        gotoxy(1,1);
                        old_s:=s;
                        textcolor(lightgreen);
                        write(h:2,'  ',m:2,'   ',s:2);

                        display7_clocK(h,m,s);
                        textcolor(black);
                        display7_clocK(8,8,8);
                   end;
            until keypressed;




readln;
end.

Advertisements
Loading...

We use cookies to provide and improve our services. By using our site, you consent to our Cookies Policy.