Advertisement
cecepsuwanda

Hari_Lahir

Feb 27th, 2018
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 3.28 KB | None | 0 0
  1. program lahir;
  2. uses wincrt;
  3. var
  4.     tgl_skrg,
  5.     bln_skrg,
  6.     thn_skrg,
  7.     tgl_lahir,
  8.     bln_lahir,
  9.     thn_lahir,
  10.     selisihtgl,
  11.     selisihbln,
  12.     selisihthn: integer;
  13.  
  14.     jawab : integer;
  15.     standar: longint;
  16.     tglAwal,
  17.     blnAwal,
  18.     thnAwal : integer;
  19.  
  20. begin
  21.  
  22.  repeat
  23.    clrscr;
  24.    writeln ('                              PROGRAM USIA ');
  25.    writeln ('                              disusun oleh : ');
  26.    writeln ('                            ELYZABETH (1006638)');
  27.    writeln ('==============================================================================');
  28.    writeln ('modifikasi : menampilkan usia, hari kelahiran dan dapat melakukan pengulangan');
  29.    writeln;
  30.  
  31.  
  32.  
  33.           writeln ('MASUKAN TANGGAL LAHIR ANDA!');
  34.           write ('tanggal      : '); read (tgl_lahir);
  35.           write ('bulan (1-12) : '); read (bln_lahir);
  36.           write ('tahun        : '); read (thn_lahir);
  37.           writeln;
  38.           writeln ('MASUKAN TANGGAL HARI INI!');
  39.           write ('tanggal      : '); read (tgl_skrg);
  40.           write ('bulan (1-12) : '); read (bln_skrg);
  41.           write ('tahun        : '); read (thn_skrg);
  42.           writeln;
  43.  
  44.           selisihtgl := tgl_skrg-tgl_lahir;
  45.  
  46.           if selisihtgl < 0 then
  47.              selisihtgl := (tgl_skrg+30)-tgl_lahir;
  48.  
  49.           if tgl_skrg < tgl_lahir then
  50.              bln_skrg := (bln_skrg-1) ;
  51.  
  52.           selisihbln := bln_skrg-bln_lahir;
  53.  
  54.           if selisihbln < 0 then
  55.              selisihbln := (bln_skrg+12)-bln_lahir;
  56.  
  57.  
  58.           selisihthn := thn_skrg-thn_lahir;
  59.  
  60.           if bln_skrg < bln_lahir then
  61.              selisihthn := (thn_skrg-1)-thn_lahir ;
  62.  
  63.  
  64.           writeln ('usia anda saat ini : ' ,selisihthn, ' tahun ' ,selisihbln, ' bulan ' ,selisihtgl, ' hari ');
  65.           writeln ;
  66.  
  67.           tglAwal := tgl_lahir;
  68.           blnAwal := bln_lahir;
  69.           thnAwal := thn_lahir;
  70.           standar := (thn_lahir - 1) * 365 + (thn_lahir-1) div 4;
  71.  
  72.           bln_lahir := bln_lahir - 1;
  73.  
  74.           while bln_lahir > 0 do
  75.           begin
  76.  
  77.              case bln_lahir of
  78.                   1  : standar := standar + 31;
  79.                   2  : if (thn_lahir mod 4 = 0) then standar := standar + 29 else standar := standar + 28;
  80.                   3  : standar := standar + 31;
  81.                   4  : standar := standar + 30;
  82.                   5  : standar := standar + 31;
  83.                   6  : standar := standar + 30;
  84.                   7  : standar := standar + 31;
  85.                   8  : standar := standar + 31;
  86.                   9  : standar := standar + 30;
  87.                   10 : standar := standar + 31;
  88.                   11 : standar := standar + 30;
  89.              end;
  90.              bln_lahir := bln_lahir -1;
  91.           end;
  92.  
  93.           standar := standar + tgl_lahir;
  94.  
  95.           writeln ('tanggal ', tglAwal, '-', blnAwal,'-',thnAwal);
  96.           write ('Anda lahir pada hari: ');
  97.  
  98.             case (standar mod 7) of
  99.             0 : writeln ('Minggu');
  100.             1 : writeln ('Senin');
  101.             2 : writeln ('Selasa');
  102.             3 : writeln ('Rabu');
  103.             4 : writeln ('Kamis');
  104.             5 : writeln ('Jumat');
  105.             6 : writeln ('Sabtu');
  106.             end;
  107.  
  108.           writeln;
  109.           writeln ('ulangi ? (tekan 1 untuk ya, tekan 2 untuk tidak)');
  110.           write ('jawab : '); read (jawab);
  111.           writeln;
  112.           writeln;
  113.  
  114.     until jawab = 2;
  115.                write ('————–TERIMAKASIH TELAH MENCOBA PROGRAM INI————— ');
  116. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement