17 Contoh Program Pascal Untuk Latihan Programming
17 Contoh Program Pascal Untuk Latihan Programming
written by Teddy
Salah satu bahasa pemrograman yang sering digunakan oleh programmer adalah bahasa
pemrograman Pascal. Pascal adalah bahasa pemrograman yang dibuat oleh Prof. Niklaus Wirth,
seorang anggota International Federation of Information Processing (IFIP) pada tahun 1971 dan
termasuk ke dalam tingkatan bahasa pemrograman yang tinggi. Nama Pascal sendiri terinspirasi dari
nama matematikawan Perancis yang pertama kali menciptakan mesin penghitung, yaitu Blaise
Pascal. Kelebihan dan kekurangan bahasa pemrograman generasi ke-4 juga dimiliki oleh bahasa
pemrograman ini.
Pada artikel kali ini, kami akan memberikan beberapa contoh program pascal yang bisa menjadi
bahan latihan Anda. Daripada lama-lama, yuk disimak contoh-contohnya di bawah ini:
program Irit_Boros;
uses crt;
var
saku, peng, hasil : integer;
begin
write(‘Jumlah uang saku Anda per minggu : ‘); readln(saku);
write(‘Pengeluaran Anda per minggu : ‘); readln(peng);
hasil:=saku-peng;
if hasil>=peng then
writeln(‘sisa uang saku Anda per minggunya adalah : ‘,hasil,’ artinya Anda adalah orang yang irit’)
else
writeln(‘sisa uang saku Anda per minggunya adalah : ‘,hasil,’ artinya Anda adalah orang yang boros’);
end.
program hitung_gaji;
uses crt;
var
nama_karyawan:string;
alamat:string;
gaji_pokok,tunjangan,pajak,gaji_bersih:comp;
begin
writeln(‘menghitung gaji bersih karyawan’);
write (‘nama karyawan:’);readln(nama_karyawan);
write (‘alamat:’);readln(alamat);
write (‘gaji pokok:’);readln(gaji_pokok);
tunjangan:=0.15 * gaji_pokok;
pajak:=0.075 * gaji_pokok;
gaji_bersih:=gaji_pokok+tunjangan-pajak;
writeln(nama_karyawan);
writeln(‘gaji pokok Anda adalah’,gaji_pokok);
writeln(‘tunjangan Anda sebesar’,tunjangan);
writeln(‘pajak penghasilan Anda sebesar’,pajak);
writeln(‘maka gaji bersih Anda adalah’,gaji_bersih);
end.
program IfKombinasi;
uses crt;
var
angka1,angka2 : integer;
begin
writeln(‘Masukkan angka pertama: ‘); readln(angka1);
writeln(‘Masukkan angka kedua: ‘); readln(angka2);
if {not} (angka1>3) and {or} (angka2>4) then
begin
writeln(‘Anda memasukkan nilai angka pertama > 3 dan kedua > 4’);
end
end.
program Tebak_Angka;
uses crt;
var
angka,tebakan : integer;
begin
clrscr;
angka:= 2;
writeln(‘Coba tebak angka antara 1 sampai 10’); readln(tebakan);
if angka = tebakan then
writeln(‘Selamat!, tebakan kamu benar.’)
else
writeln(‘Wakwawww, tebakan kamu salah.’)
end.
program JamKeMenit;
uses crt;
var
jam, menit,i,hasil,dtk,hasildtk : integer;
begin
clrscr;
write(‘Masukkan Nilai Jam : ‘); readln(jam);
i:=60;
dtk:=3600;
if jam =1 then
begin
hasil:=jam*i;
hasildtk:=jam*dtk;
writeln(jam, ‘ jam sama dengan ‘,hasil,’ menit dan ‘, hasildtk, ‘ detik’);
end
else
begin
hasil:=jam*60;
hasildtk:=jam*dtk;
writeln(jam,’ jam sama dengan ‘,hasil, ‘ menit dan ‘, hasildtk, ‘ detik’);
end;
end.
Program Kalkulatia;
uses crt;
var angka1,angka2,hasil:real,2;
operasi:char;
begin
clrscr;
writeln(‘KALKULATOR’);
writeln(‘===================’);
write(‘Input Angka Pertama : ‘); readln(angka1);
write(‘Operasi yang dilakukan(+,-,/,*) : ‘); readln(operasi);
write(‘Input Angka Kedua: ‘); readln(angka2);
case operasi of
‘+’: hasil :=angka1+angka2;
‘-‘: hasil :=angka1-angka2;
‘*’: hasil :=angka1*angka2;
‘/’: hasil :=angka1/angka2;
end;
writeln(‘Hasil dari ‘,angka1,’ ‘, operasi,’ ‘, angka2, ‘ = ‘,’ ‘, hasil);
end.
program pangkat_kuadrat;
uses crt;
var
bil : integer;
function pangkat2(b: integer) : integer;
var
hasil : integer; {hasil sebagai variabel lokal}
begin
hasil := b *b;
pangkat2 := hasil;
end;
{bagian prog.utama}
begin
clrscr;
write(‘masukan bilangan bulat : ‘); readln(bil);
write(‘hasil pangkatnya adalah ‘, pangkat2(bil));
readkey;
end.
program Luas_Persegi_Panjang;
uses crt;
var
panjang : real;
lebar : real;
luas : real;
begin
clrscr;
writeln(‘===================================’);
writeln(‘| ‘,’Program untuk Menghitung Luas Persegi Panjang’,’ |’);
WRITELN(”);
writeln(‘| ‘,’Rumus : Panjang x Lebar (p x l)’,’ |’);
writeln(‘===================================’);
writeln(”);
write(‘Nilai Panjang: ‘); readln(panjang);
write(‘Nilai Lebar: ‘); readln(lebar);
Writeln(‘Rumus Luas: Panjang x Lebar (p x l)’);
luas :=panjang*lebar;
writeln(”);
writeln(‘=============================’);
writeln(‘| ‘,’Jadi p x l = ‘,panjang:0:1,’ x ‘,lebar :0:1);
writeln(‘==============================’);
writeln(luas:0:1);
end.
program NeastedIf;
uses crt;
var
A,B,C : integer;
begin
clrscr;
writeln (‘Masukkan tiga angka dengan spasi’); readln(A, B, C);
if A >= B then
begin
if A >= C then
writeln (A, ‘ adalah nilai terbesar’)
else
writeln (C, ‘ adalah nilai terbesar’)
end
else if B >= C then
begin
if B >= C then
writeln (B, ‘ adalah nilai terbesar’)
else
writeln (C, ‘ adalah nilai terbesar’)
end
else if C >= A or B then
writeln(C, ‘ adalah nilai terbesar’);
end.
program data_pegawai;
uses crt;
var
gajipokok, gajibersih, tunjangan1, tunjangan2, tunjangan3, tunjangan4 :real;
status :char;
nama, alamat :string[30];
jumlah :integer;
begin
clrscr;
write(‘Nama : ‘); readln(nama);
write(‘Alamat : ‘); readln(nama);
write(‘Gaji pokok : Rp ‘); readln(gajipokok);
write(‘Status D:menikah, S:belum menikah : ‘); readln(status);
write(‘Jumlah anak : ‘); readln(jumlah);
if (status = ‘D’) then
if(jumlah <= 3) then begin
tunjangan1 :=(5 * gajipokok) / 100;
tunjangan2 :=(2 * gajipokok * jumlah) / 100;
gajibersih := gajipokok + tunjangan1 + tunjangan2;
writeln(‘tunjangan suami/istri : Rp ‘,tunjangan1:0:0);
writeln(‘tunjangan anak : Rp ‘,tunjangan2:0:0);
writeln(‘gaji bersih : Rp ‘,gajibersih:0:0);
end
else
begin
tunjangan1 :=(5 * gajipokok) / 100;
tunjangan2 :=(2 * gajipokok * 3) / 100;
tunjangan3 :=(3 * gajipokok * (jumlah – 3)) / 100;
tunjangan4 :=tunjangan2 + tunjangan3;
gajibersih :=gajipokok + tunjangan1 + tunjangan4;
writeln(‘tunjangan suami/istri : Rp ‘,tunjangan1:0:0);
writeln(‘tunjangan anak : Rp ‘,tunjangan4:0:0);
writeln(‘Gaji bersih : Rp ‘,gajibersih:0:0);
writeln(‘Terima Kasih’);
end
else
writeln(‘gajibersih : Rp ‘,gajipokok:0:0);
readkey;
end.
program GanjilGenap;
uses crt;
var
angka :integer;
begin
clrscr;
writeln(‘Status Bilangan’);
writeln(‘===============’);
write(‘Masukkan Bilangan: ‘); readln(angka);
if angka < 0 then
begin
if angka mod 2 = 0 then
writeln(‘Status Bilangan : GENAP = NEGATIF’)
else
writeln(‘Status Bilangan : GANJIL = NEGATIF’)
end
else
begin
if angka mod 2 = 0 then
writeln(‘Status Bilangan : GENAP = POSITIF’)
else
writeln(‘Status Bilangan : GANJIL = POSITIF’)
end;
end.
begin
clrscr;
writeln(‘=======================================’);
writeln(‘|’,’ SELAMAT DATANG DI GAME TEBAK ASAL’,’|’);
writeln(‘=======================================’);
writeln(”);
writeln(‘*’,’PILIH KATEGORINYA ‘,’*’);
writeln(‘1. Mudah’);
writeln(‘2. Sedang’);
writeln(‘3. Sulit’);
writeln(‘———————–‘);
writeln(”);
write(‘Mau pilih kategori yang mana nih? 1,2, atau 3 : ‘); readln(pilih);
case pilih of
1:
begin
writeln(‘===========================’);
writeln(‘| ‘,’Kategori Mudah’,’|’);
writeln(‘===========================’);
write(‘Soal Tebak : Siapakah grup band yang ga pernah memihak?’); readln(tebak1);
if tebak1=’netral’ then
writeln(‘Tebakan kamu Bener’)
else
writeln(‘Tebakan kamu Salah, jawabannya adalah Netral’);
end;
2:
begin
writeln(‘===========================’);
writeln(‘| ‘,’Kategori Sedang’,’ |’);
writeln(‘===========================’);
write(‘Soal Tebak : Bidadari-bidadari, kalo tanpa dada jadi apa? ‘); readln(tebak2);
if tebak2=’biri biri’ then
writeln(‘Tebakan kamu Bener. Berarti pikiran kamu ga ngeres’)
else
writeln(‘Tebakan kamu Salah, jawabannya biri biri. Kamu tadi mikir yang nggak-nggak yah??’);
end;
3:
begin
writeln(‘============================’);
writeln(‘| ‘,’Kategori Sulit’, ‘ |’);
writeln(‘============================’);
write(‘Soal Tebak : Siapakah mantan dari penulis artikel ini? ‘); readln(tebak3);
if tebak3=’MaafKurangBeruntung’ then
writeln(‘Tebakan kamu Bener. Kok kamu tahu sih?’)
else
writeln(‘Tebakan kamu Salah, coba deh tanya pacar kamu. Siapa tau dia mantan si penulis wkwkwk’);
end;
end;
end.
program menghitung_usia
uses wincrt;
var
nama : string;
umur,TL:integer;
begin
writeln(‘nama kamu siapa?’);readln(nama);
writeln(‘tahun lahir kamu?’);readln(TL);
umur:=2018-TL;
writeln(umur);
readkey;
end.
uses crt;
Var
Berat,harga,hargaperkg:integer;
Kualitas:char;
Begin
Clrscr;
Write(‘ Massukkan Kualitas Buah [A/B/C] : ‘); readln(kualitas);
Write(‘ Berapa Kg yang dibeli? ‘ ); readln(berat);
Case kualitas of
‘A’,’a’: hargaperkg:=1000;
‘B’,’b’: hargaperkg:=750;
‘C’,’c’: hargaperkg:=500;
Else
Begin
Hargaperkg:=0;
Writeln(‘Salah Input’);
End;
End;
Harga:=hargaperkg*berat;
Writeln(‘ Harga per Kg : Rp.’,hargaperkg);
Writeln(‘ Harga Total : Rp.’,harga);
End.
uses crt;
var
alas,tinggi:integer;
procedure hitung_luas(a,t:integer);
var
luas:real;
begin
clrscr;
luas:=a*t/2;
writeln(‘Luas segitiga =’,luas);
end;
begin
writeln(‘Masukkan ukuran alas =’);readln(alas);
writeln(‘Masukkan ukuran tinggi =’);readln(tinggi);
hitung_luas(alas,tinggi);
readln;
end.
uses crt;
var
Tulisan:text;
a,b:byte;
c:byte;
begin
clrscr;
writeln(‘Masukkan angka pertama =’);readln(a);
writeln(‘Masukkan angka kedua =’);readln(b);
c:=a+b;
writeln(‘Jika dijumlahkan, nilainya adalah =’,c);
assign(Tulisan,’hitung.txt’);
rewrite(Tulisan);
write(tulisan,a);
write(Tulisan,’+’);
write(Tulisan,b);
write(Tulisan,’=’);
write(Tulisan,c);
Close(Tulisan);
readln;
end.
uses crt;
var
nilai:byte;
begin
clrscr;
Write(‘masukkan nilai =’);Readln(nilai);
if nilai>0 then
begin
Writeln(‘GRADE = O ‘);
Writeln(‘Besar biaya = Rp.550000’);
end
else
if nilai<=1 then begin Writeln(‘GRADE = E ‘);
Writeln(‘Besar biaya = Rp.450000’);
end else if nilai<=40 then begin Writeln(‘GRADE = D’);
Writeln(‘Besar biaya = Rp.350000’); end else if nilai<=60 then begin Writeln(‘GRADE = C’);
Writeln(‘Besar biaya = Rp.250000’); end Else if nilai<=70 then begin Writeln(‘GRADE = B’);
Writeln(‘Besar biaya = Rp.150000’); end else begin If nilai >=100 then Writeln(‘GRADE = A’);
Writeln(‘Besar biaya = Rp.50000’);
end;
readln;
end.
uses crt;
Var
nilai:byte;
A,B,C,D:string;
begin
clrscr;
write (‘masukkan nilai=’);readln(nilai);
if nilai< 69 then
writeln(‘predikat D’);
if nilai<79then
writeln (‘predikat C’);
if nilai<90 then
writeln (‘predikat B’);
if nilai<101 then
writeln(‘predikat A’);
readln;
end.
Contoh 19: Program konversi bilangan desimal ke bilangan biner
uses crt;
var Des:integer;
Bin:string;
begin
clrscr;
writeln(‘PROGRAM KONVERSI BILANGAN DESIMAL KE BILANGAN BINER’);
write(‘Masukkan bilangan Desimal=’);
readln(Des);
Bin:=’’;
repeat
begin
{menghitung biner dari hasil bagi}
uses crt;
var i,n,sks,nilai,jml,jmlsks,jmlmutu:integer;
rata:real;
k,mk:string;
//-------------------------------------------------
// membuat prosedure untuk menentukan bobot dari nilai dari setiap matakuliah
procedure bobot_nilai(a:string);
begin
//--------------------------------------------------
// membuat fungsi sendiri untuk menghitung nilai sks dan nilai sesuai gendrenya
function hitung(a,b:integer):integer;
begin
jml:=a*b;
end;
//--------------------------------------------------
procedure jumlah_sks(a:integer);
begin
jmlsks:=jmlsks+a;
end;
//--------------------------------------------------
procedure jumlah_mutu(a:integer);
begin
jmlmutu:=jmlmutu+a;
end;
//--------------------------------------------------
// menghitung rata-rata dari nilai yang di dapat untuk mendapatkan nilai IPK nya
function rerata(a,b:integer):real;
begin
rata:=b/a;
end;
//--------------------------------------------------
begin
write('Banyak mata kuliah = '); readln(n); // memasukan jumlah mata kuliah yang akan di hitung
writeln;
writeln('----------------------------------------------');
writeln('----------------------------------------------');
for i:=1 to n do // melakukan pengulangan sebanyak jumlah matakuliah yang nanti di input
begin
bobot_nilai(k); // memanggil prosedur bobot nilai untuk menentukan nilai dari seriap gendre
hitung(sks,nilai); // memanggil fungsi hitung untuk menghitung nilai sks dan nilai gendre
gotoxy(43,6+i); write(jml:4); // menampilkan hasil dari perhitungan sks dengan nilai gendre
jumlah_mutu(jml); // menjumlahkan keseluruhan nilai mutu/gendre dari setiap matakuliah yang ada
end;
writeln('---------------------------------------------');
write('Jumlah');
gotoxy(20,wherey); write(jmlsks); // menampilak jumlah sks yang telah di jumlah
rerata(jmlsks,jmlmutu); // mengitung rata-rata dari jumlah sks dengan nilai mutu/gendre untuk
mendapatkan nilai IPK
writeln('---------------------------------------------');
write('IP = ',rata:2:2); // menampilkan hasil IPK dari selurh matakuliah yang ada
readkey;
end. // selesai
untuk penjelasannya, di dalam bahasa pemograman pascal ini semua procedure atau function di
simpan di atas program utama sehingga jika kita menyimpan function atau prosedure di bawah atau
di dalam program utama akan terjadi error. Dan Program utamanya itu dalah ini
Baca Juga:
Cara Membuat CRUD Plus Upload Gambar dengan PHP dan MySQL
//--------------------------------------------------
// Memulai proses
begin
write('Banyak mata kuliah = '); readln(n); // memasukan jumlah mata kuliah yang akan di hitung
writeln;
writeln('----------------------------------------------');
writeln('----------------------------------------------');
for i:=1 to n do // melakukan pengulangan sebanyak jumlah matakuliah yang nanti di input
begin
bobot_nilai(k); // memanggil prosedur bobot nilai untuk menentukan nilai dari seriap gendre
hitung(sks,nilai); // memanggil fungsi hitung untuk menghitung nilai sks dan nilai gendre
gotoxy(43,6+i); write(jml:4); // menampilkan hasil dari perhitungan sks dengan nilai gendre
end;
writeln('---------------------------------------------');
write('Jumlah');
rerata(jmlsks,jmlmutu); // mengitung rata-rata dari jumlah sks dengan nilai mutu/gendre untuk
mendapatkan nilai IPK
writeln('---------------------------------------------');
write('IP = ',rata:2:2); // menampilkan hasil IPK dari selurh matakuliah yang ada
readkey;
program Input_data;
uses crt;
type
mhs= record
nama, alamat : string [11];
fakultas, jurusan : string[9];
nim, semester, ttl : integer;
th_msk : longint;
end;
const
z = #0; c = #180; e =#192; g=#194; m=#196; k=#217;
b = #179; d = #191; f =#193; h=#195; j=#197; l=#218;
var
nama, alamat : string [11];
fakultas, jurusan, tempat : string [9];
nim, semester, ttl, a,i,n, pilih : integer;
Th_msk : longint;
dtmhs:array [1..10] of mhs;
procedure input;
begin
clrscr;
gotoxy(23,1);writeln ('====== INPUT DATA MAHASISWA ======');
gotoxy(23,2);write ('Jumlah Mahasiswa : '); readln (a); writeln;
for i:= 1 to a do
begin
with dtmhs[i] do
begin
writeln ('Data Ke-',i);
procedure output;
begin
clrscr;
gotoxy (35,1); writeln ('DATA MAHASISWA');
writeln
(l,m,m,m,m,m,m,m,m,m,m,m,g,m,m,m,m,m,m,m,m,m,m,m,m,g,m,m,m,m,m,m,m,m,m,m,m,g,m,m,
m,m,m,
m,m,m,g,m,m,m,m,m,m,m,m,m,m,g,m,m,m,m,m,m,m,m,m,g,m,m,m,m,m,m,m,m,m,m,d);
writeln (b,z,' NAMA ',z,b,z,' NIM ',z,b,z,' TTL ',z,b,z,'ALAMAT',z,
b,z,'FAKULTAS',z,b,z,'JURUSAN',z,b,z,'SEMESTER',z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(h,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,m,j,m,m,
m,m,m,
m,m,m,j,m,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,j,m,m,m,m,m,m,m,m,m,m,c);
writeln (b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,
z,z,z,b,z,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,b,z,z,z,z,z,z,z,z,z,z,b);
writeln
(e,m,m,m,m,m,m,m,m,m,m,m,f,m,m,m,m,m,m,m,m,m,m,m,m,f,m,m,m,m,m,m,m,m,m,m,m,f,m,m,
m,m,m,
m,m,m,f,m,m,m,m,m,m,m,m,m,m,f,m,m,m,m,m,m,m,m,m,f,m,m,m,m,m,m,m,m,m,m,k);
n:= 5;
for i:= 1 to a do
with dtmhs [i] do
begin
gotoxy (3,n); write (nama);
gotoxy (14,n); write (nim);
gotoxy (27,n); write (tempat);
gotoxy (39,n); write (alamat);
gotoxy (48,n); write (Fakultas);
gotoxy (59,n); write (jurusan);
gotoxy (69,n); write (semester);
n:= n+2;
end;
readln;
end;
function keluar : string;
begin
writeln('Anda akan Keluar dari Program, Silahkan tekan ENTER');
end;
Begin
clrscr;
textcolor(green);
repeat
clrscr;
writeln;
gotoxy(23,1); writeln ('======= DATA MAHASISWA JURUSAN =======');
gotoxy(23,2);Writeln ('1. Input Data Mahasiswa');
gotoxy(23,3);writeln ('2. Tampilkan Data Mahasiswa');
gotoxy(23,4);writeln ('3. Keluar');
writeln;
gotoxy(23,5);write ('Masukkan Pilihan [1/2/3] : '); readln (pilih);
case pilih of
1 : input;
2 : output;
3 : keluar;
end;
until pilih = 3;
readln;
end.
program lahir;
uses wincrt;
var tgl_skrg, bln_skrg, thn_skrg, tgl_lahir, bln_lahir, thn_lahir, selisihtgl,
selisihbln, selisihthn: integer;
jawab : integer;
standar: longint;
tglAwal, blnAwal, thnAwal : integer;
label K, L;
begin
begin
selisihtgl := tgl_skrg-tgl_lahir;
begin
if selisihtgl < 0 then
selisihtgl := (tgl_skrg+30)-tgl_lahir;
end;
end;
begin
if tgl_skrg < tgl_lahir then
bln_skrg := (bln_skrg-1) ;
begin
selisihbln := bln_skrg-bln_lahir;
begin
if selisihbln < 0 then
selisihbln := (bln_skrg+12)-bln_lahir;
end;
end;
end;
begin
selisihthn := thn_skrg-thn_lahir;
begin
if bln_skrg < bln_lahir then
selisihthn := (thn_skrg-1)-thn_lahir ;
end;
end;
writeln (‘usia anda saat ini : ‘ ,selisihthn, ‘ tahun ‘ ,selisihbln, ‘ bulan ‘ ,selisihtgl, ‘
hari ‘);
writeln ;
tglAwal := tgl_lahir;
blnAwal := bln_lahir;
thnAwal := thn_lahir;
standar := (thn_lahir – 1) * 365 + (thn_lahir-1) div 4;
bln_lahir := bln_lahir – 1;
while bln_lahir > 0 do
begin
case bln_lahir of
1 : standar := standar + 31;
2 : if (thn_lahir mod 4 = 0) then standar := standar + 29 else standar := standar +
28;
3 : standar := standar + 31;
4 : standar := standar + 30;
5 : standar := standar + 31;
6 : standar := standar + 30;
7 : standar := standar + 31;
8 : standar := standar + 31;
9 : standar := standar + 30;
10 : standar := standar + 31;
11 : standar := standar + 30;
end;
bln_lahir := bln_lahir -1;
end;
standar := standar + tgl_lahir;
begin
writeln (‘tanggal ‘, tglAwal, ‘-‘, blnAwal,’-‘,thnAwal);
write (‘Anda lahir pada hari: ‘);
case (standar mod 7) of
0 : writeln (‘Minggu’);
1 : writeln (‘Senin’);
2 : writeln (‘Selasa’);
3 : writeln (‘Rabu’);
4 : writeln (‘Kamis’);
5 : writeln (‘Jumat’);
6 : writeln (‘Sabtu’);
end;
end;
end;
L:
writeln;
writeln (‘ulangi ? (tekan 1 untuk ya, tekan 2 untuk tidak)’);
write (‘jawab : ‘) ;
read (jawab);
writeln;
writeln;
if (jawab = 1) then
goto K
else
if jawab = 2 then
write (‘————–TERIMAKASIH TELAH MENCOBA PROGRAM INI
————— ‘);
end.