Program Turbo Pascal
Program Turbo Pascal
2. Program Perkalian
Program Perkalian;
Uses crt;
Var
a,b,c : Longint;
Begin
clrscr;
Writeln(Perkalian);
Writeln;
Write(Masukkan Angka Pertama = );
Readln(a);
Write(Masukkan Angka Kedua
= );
Readln(b);
Writeln;
c:=a*b ;
Writeln(Hasilnya adalah = ,c);
Readln;
End.
Jika Program diatas dijalankan kalian akan diminta memasukkan angka yang ingin di kali, Jika
kalian ingin pembagian, pertambahan, pengurangan, hanya diganti yang
berwarna merah menjadi operasi hitung yang kalian inginkan
4. Program Positive/Negative
Program Positive_Negative;
Uses crt;
Var
Bil : Integer ;
Begin
clrscr;
Writeln(Menentukkan bilangan Positive/Negative)
Writeln;
Write(Masukkan Bilangan = );
Readln(Bil);
Writeln;
if Bil < 0 Then
Write(Bilangan Itu Negative);
else if Bil > 0 Then
Write(Bilangan Itu Positive);
else
Write(Bilangan Itu Nol);
Readln;
End.
Jika Program di atas dijalankan akan diminta untuk memasukkan Bilangan,,
# Jika dimasukkan bilangan -3, akan muncul tulisan yang berwarna merah #
# Jika dimasukkan bilangan 3, maka akan muncul tulisan berwarna biru #
# Jika dimasukkan bilangan 0, maka akan muncul tulisan berwarna kuning #
5. Program Kelipatan
Program Kelipatan;
Uses crt;
Var
a : Integer ;
Begin
clrscr;
Write(Masukkan angka = );
Readln(a);
Writeln;
Repeat
Write(a,);
a:=a+a ;
Readln;
Until a>100 ;
Readln;
End.
program genap;
uses wincrt;
var
x : integer;
begin
write('masukkan sembarang angka =');read (x);
if x mod 2=0 then
write('genap')
else
write('ganjil')
end.
program bilangankelipatan5;
uses wincrt;
var bil,batas:integer;
begin
write('Masukkan integer positif,=');
readln(batas);
for bil:=5 to batas do
if bil mod 5=0 then
write(bil,' ');
end.
program deretABCDE;
uses wincrt;
var i,batas:char;
begin
program deretangka2;
uses wincrt;
var i,batas:integer;
begin
write('masukkan integer positif=');
readln(batas);
for i:=batas downto 1 do
write(i,' ');
end.
Membuat program deretEDCBA
program deretEDCBA;
uses wincrt;
var i,batas:char;
begin
{write('masukkan integer positif=');
readln(batas);}
for i:='e' downto 'a' do
write(i,' ');
end.
Membuat program GanjilGenap
program Ganjilgenap;
uses wincrt;
var bil:integer;
begin
for bil:=6 to 16 do
if bil mod 2=1 then
write(bil,' ');
readln;
end.
Program nilai_mahasiswa;
uses wincrt;
Var
Nilai : Real ;
Grade : Char ;
nama : string ;
Begin
write('NAMA ANDA: ',nama);
read(nama);
Write('NILAI YANG ANDA PEROLEH : ');
Read(Nilai);
write('KUCING');
writeln;
end;
readln;
end.
program hurufAsampaiZ;
uses wincrt;
var i,batas:char;
begin
write('Masukkan huruf a sampai z=');read(batas);
for i:= 'a' to batas do
write(i,' ');
end.
program jenis_bilangan_bulat;
uses wincrt;
var
x : integer;
begin
write ('Masukkan sembarang angka=');read(x);
if x >0 then
write ('positif')
else
if x <0 then
write('negatif')
else
write ('nol')
end.
Membuat deretangka1sampai10
program deratangka1sampai10;
uses wincrt;
var i,batas:integer;
begin
{write('Masukkan integer positif,=');
readln(batas);}
for i:=1 to 10 do
write(i);
end.
program bilangankelipatan5;
uses wincrt;
var bil,batas:integer;
begin
write('Masukkan integer positif,=');
readln(batas);
for bil:=5 to batas do
if bil mod 5=0 then
write(bil,' ');
end.
Program Menghitung_Jarak;
Uses WinCrt;
var
x1,x2,y1,y2:integer;
d:real;
begin
Writeln('Program Menghitung Jarak Titik A dan B');
Writeln('======================================');
Writeln;
Write('Masukan Nilai A (X1): ');readln(x1);
Write('Masukan Nilai B (X2): ');readln(x2);
Write('Masukan Nilai A (Y1): ');readln(y1);
Write('Masukan Nilai B (Y2): ');readln(y2);
d:=sqrt(sqr(x2-x1)+sqr(y2-y1));
Writeln;
Writeln('Jadi Jarak Titik A ke B Adalah: ',d:4:2);
end.
Program Konversi_Suhu;
Uses WinCrt;
var f,c:real;
begin
Writeln('Program Konversi Fareinheit Ke Celcius');
Writeln('======================================');
Writeln;
Write('Masukan Suhu dalam Farenheit: ');readln(f);
c:=5/9*(f-32);
Writeln;
Writeln('Jadi Suhu Dalam Celcius Adalah: ',c:4:2);
end.
Program Konversi_Waktu;
Uses Wincrt;
Var j,m,d,h:integer;
begin
Writeln('Program Konversi Waktu');
Writeln('======================');
Writeln;
Write('Masukkan Jumlah Jam : ');readln(j);
Write('Masukkan Jumlah Menit : ');readln(m);
Write('Masukkan Jumlah Detik : ');readln(d);
Writeln;
h:=(j*3600)+(m*60)+d;
Writeln('Jadi Hasil Konversi : ',h,' Detik');
end.
Program Konversi_Waktu1;
Uses WinCrt;
var j,m,d,dm,sisa,sisa1:integer;
begin
Writeln('Program Konversi Waktu 1');
Writeln('========================');
Writeln;
Write('Masukkan Jumlah Detik : ');readln(dm);
if (dm/3600)>0 then
begin
j:=dm div 3600;
sisa:=dm-(j*3600);end
else
begin
j:=0;
sisa:=dm;
end;
if (sisa/60)>0 then
begin
m:=sisa div 60;
sisa1:=sisa-(m*60);
end
else
begin
m:=0;
sisa1:=sisa;
end;
d:=sisa1;
Writeln;
Writeln('Hasil => ',j,' jam ',m,' menit ',d,' detik');
end.
program jum_bil;
uses wincrt;
var
Output
Program
Masukkan
Bilangan =
12
Masukkan
Bilangan =
12
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Masukkan
Bilangan =
12
i, jum,bil: integer;
begin
Masukkan
Bilangan =
12
jum:=0; {inisialisasi}
for i:=1 to 5 do
begin
write('Masukkan Bilangan = ');readln(bil);
jum:=jum+bil;
end;
writeln('Jumlah Bilangan = ',jum);
end.
Masukkan
Bilangan =
12
Jumlah
Bilangan =
60
program jum_bil2;
Banyak
bilangan :
3
Masukkan
Bilangan 1
= 12
uses wincrt;
var
i, n: integer;
jum, bil: real;
begin
write(Banyak bilangan :
jum := 0;
For i:= 1 to n do
begin
');read(n);
Masukkan
Bilangan 2
= 13
Masukkan
Bilangan 3
18
19
20
21
22
23
24
25
26
27
28
29
= 14
Jum =
39.00
program contoh_3;
uses wincrt;
var
Program
Masukkan
nilai N = 3
Nilai N
adalah= 3
n, i : integer;
rata : real;
jum, bil : integer;
begin
Write('Masukkan nilai N = ');readln(n);
writeln ('Nilai N adalah= ',n);writeln;
for i := 1 to n do
begin
write('Masukkan bilangan : ');read(bil);
jum := jum+bil;
end;
rata := jum/n;writeln;
writeln('Jumlahnya adalah : ',jum);
writeln('Nilai rata-ratanya :', rata:0:2);
Masukkan
bilangan: 1
Masukkan
bilangan: 2
Masukkan
bilangan: 3
Jumlahnya
adalah : 6
Nilai rataratanya :
2.00
31
32
33
34
35
end.
program contoh4;
uses wincrt;
var
n, i,byk,jum, bil : integer;
begin
Write('Masukkan nilai perulangan : ');readln(n);
Writeln;
for i := 1 to n do
begin
write('Bilangan ',i,' = ');read(bil);
if bil >= 10 then
begin
byk := byk+1;
jum := jum+bil ;
end;
end;
writeln;
writeln('banyak bilangan yang >= 10 : ',byk);
writeln('jumlah bilangan yang >= 10 : ',jum);
end.
Output
Program
Pascal
38
39
uses crt;
var absis,ordinat,pengali:integer;
procedure dilat(a,b,peng:integer);
var c,d:integer;
begin
c:=a*peng;
d:=b*peng;
writeln('(',c,',',d,')');
end;
begin
writeln('Kordinat Awal');
write('Absis : ');readln(absis);
write('Ordinat : ');readln(ordinat);
writeln;
write('masukan faktor pengali ');readln(pengali);
write('Kordinat (',absis,',',ordinat,') setelah didilatasikan terhadap faktor ',pengali,' menjadi ');
dilat(absis,ordinat,pengali);
readln;
end.
uses crt;
var x,y,z,s:integer;
function fungsi(a,b,c,x:integer):integer;
begin
fungsi:=a*(x*x)-b*x+c;
end;
begin
write('masukan a : ');readln(x);
write('masukan b : ');readln(y);
write('masukan c : ');readln(z);
write('masukan x : ');readln(s);
writeln('f(x)=',x,'(x^',x,'2)-',y,'x+',z);
writeln('f(',s,') =',fungsi(x,y,z,s));
readln;
end.
uses crt;
var b,ha,ger:integer;
bul:string;
procedure maks(s:integer);
var y,k:integer;
begin
case s of
1,3,5,7,8,10,12:ha:=31;
4,6,9,11:ha:=30;
2:begin
write('masukan tahun ');readln(y);
k:=y mod 4;
if k=0 then
ha:=28
else ha:=29;
end;
else writeln('Bulan salah!!!');readln;exit;
end;
end;
procedure hitung(bee:integer);
begin
ger:=bee-(2*b);
end;
begin
write('masukan bulan ke- :');readln(b);
maks(b);
hitung(ha);
write('Gerhana bulan ');
case b of
1 : WRITE('Januari');
2:WRITE('Februari');
3:WRITE('Maret');
4:WRITE('April');
5:WRITE('Mei');
6:WRITE('Juni');
7:write('Juli');
8:WRITE('Agustus');
9:write('September');
10:write('Oktober');
11:WRITE('November');
12:WRITE('desemberrrr');
end;
writeln(' terjadi pada hari ke-',ger);
readln;
end.
Penjumlah Pecahan
Fungsi : Menjumlahkan 2 buah pecahan.
Hint: Tinggal masukan saja penyebut dan pembilang.
Screenshot :
uses crt;
var pemi,pemII,penyi,penyII:integer;
j,k:integer;
function pemb(a,c:integer):integer;
begin
j:=penyii;
k:=penyi;
pemb:=a*j+k*c;
end;
function peny(b,d:integer):integer;
begin
peny:=b*d;
end;
begin
writeln('Pecahan 1 ');
write('Pembilang i :');readln(pemi);
write('Penyebut i :');readln(penyI);
writeln;
write('Pecahan 2 ');
write('Pembilang ii :');readln(pemII);
write('Penyebut II: ');readln(penyII);
writeln;
writeln('maka
hasil
dari
pertambahan
',pemb(pemi,pemii),'/',peny(penyi,penyii));
readln;
end.
',pemi,'/',penyI,'+',pemii,'/',penyII,'
adalah
ARRAY
Setelah prosedur dan fungsi, beralih ke Array. Karena sudah masuk ke array, kode-kode yang sini
mungkin terlihat lebih rumit dari sebelumnya
Mencari angka kelipatan 3
Fungsi :Mencari angka kelipatan 3 dari sekumpulan angka yang diinputkan.
Hint: Masukan angka dan masukan -1 untuk berhenti, otomatis hasil akan ditampilkan.
Screen Shot :
uses crt;
var a,b:array[1..10] of integer;
i,j,k,l:integer;
begin
{memasukan angka}
j:=1;
repeat
write('angka ke-',j,': ');readln(a[j]);
j:=j+1;
until a[j-1]=-1;
{menentukan mana yang kelipatan 3}
for k:=1 to j do
begin
if a[k] mod 3=0 then
b[k]:=a[k];
end;
{Menampilkan mana yang kelipatan tiga}
write('angka kelipatan 3 adalah : ');
for i:=1 to (j-1) do
begin
if b[i]<>0 then
write(b[i],', ');
end;
readln;
end.
Penjumlah Matrix
Fungsi : Menjumlahkan dua matriks 3x3 yang diinputkan
Hint: Masukan nilai matriks di tiap-tiap baris dan kolom.
Screen Shot :
uses crt;
var m1,m2,mp:array[1..10,1..10] of integer;
i,j,k,l:integer;
begin
{Menginput nilai matriks}
writeln('Matriks ke 1');
for i:=1 to 3 do
for j:=1 to 3 do
begin
write('m1[',i,',',j,'] : ');readln(m1[i,j]);
end;
writeln;
writeln('Matriks ke 2');
for i:=1 to 3 do
for j:=1 to 3 do
begin
write('m2[',i,',',j,'] : ');readln(m2[i,j]);
end;
writeln;
{jumlahkan}
begin
for i:=1 to 3 do
for j:=1 to 3 do
begin
mp[i,j]:=m1[i,j]+m2[i,j];
end;
{lukis hasil penjumlahan}
writeln('Hasil Penambahan = ');
writeln;
for i:=1 to 3 do
begin
writeln;
for j:=1 to 3 do
write(mp[i,j],' ');
end;
readln;
end;
end.
Pendata Mahasiswa
Fungsi: Mendata data mahasiswa, atau apalah dengan array dan menampilkannya.
Hint: Intinya adalah membuat array di record.
Screen shot :
program mhsw;
uses crt;
type mahasiswa=record
nama,nim,kelas:string;
end;
var m:array[1..41] of mahasiswa;
j,i:integer;
begin
write('Jumlah mahasiswa yang mendaftar : ');readln(j);
clrscr;
for i:=1 to j do
begin
writeln('Mahasiswa ',i,':');
write('Nama
: ');readln(m[i].nama);
write('Nim
: ');readln(m[i].nim);
write('Kelas
: ');readln(m[i].kelas);
writeln;
writeln;
end;
clrscr;
writeln('==================================');
writeln;
writeln('DATA MAHASISWA KOMPUTOK');
writeln;
writeln('==================================');
for i:=1 to j do
begin
writeln('Mahasiswa ',i,':');
writeln('Nama
: ',m[i].nama);
writeln('Nim
: ',m[i].nim);
writeln('Kelas
: ',m[i].kelas);
writeln;
writeln;
end;
readln;
end.
Tabel Ajaib
Fungsi : Membuat tabel angka yang apabila nilai tabel dalam satu baris, kolom, dan diagonal di
jumlahkan hasilnya akan sama.
Hint: jangan terlalu heran, semua sudah ada rumusnya. Tinggal masukan angka-angka saja.
Screen Shot :
uses crt;
var a,b,c,d,w,x,y,z,i,j:integer;
tab:array[1..4,1..4] of integer;
procedure lukistabel;
{Prosedur untuk menampilkan tabel}
var c:string;
begin
for i:=1 to 4 do
begin
writeln;
writeln;
for j:=1 to 4 do
begin
begin
if (tab[i,j]>9) or ((tab[i,j]<0) and (tab[i,j]>-10)) then
c:=' '
else if (tab[i,j]<10) and (tab[i,j]>-1) then
c:='
'
else c:=' ';
end;
if j=1 then
write(tab[i,j],c)
else if j=2 then write(tab[i,j])
else write(c,tab[i,j]);
end;
end;
end;
{program utama}
Begin
{memasukan nilai}
write('a = ');readln(a);
write('b = ');readln(b);
write('c = ');readln(c);
write('d = ');readln(d);
write('w = ');readln(w);
write('x = ');readln(x);
write('y = ');readln(y);
write('z = ');readln(z);
writeln('memproses.......');
delay(500);
{rumusnya ini}
tab[1,1]:=a-w;
tab[1,2]:=c+w+y;
tab[1,3]:=b+x-y;
tab[1,4]:=d-x;
tab[2,1]:=d+w-z;
tab[2,2]:=b;
tab[2,3]:=c;
tab[2,4]:=a-w+z;
tab[3,1]:=c-x+z;
tab[3,2]:=a;
tab[3,3]:=d;
tab[3,4]:=b+x-z;
tab[4,1]:=b+x;
tab[4,2]:=d-w-y;
tab[4,3]:=a-x+y;
tab[4,4]:=c+w;
{pemanggilan prosedur lukis tabel}
lukistabel;
readln;
end.
Fibbonaci Generator
uses crt;
var a:array[1..1000] of longint;
i,k:integer;
begin
clrscr;
write('Input banyaknya fibbonaci: ');readln(i);
{fibbonacigenerator}
a[1]:=1;
a[2]:=1;
for k:=2 to i do
begin
a[k+1]:=a[k]+a[k-1];
end;
writeln;
writeln;
{menulis fibbonaci}
for k:=1 to i do
begin
write(a[k],' ');
end;
writeln;
readln;
end.
Iterasi
Nah, ini bagian perulangan. Tidak lebih rumit dari array, namun tidak sesederhana di sub bab fungsi
dan prosedur.
Angka
Fungsi: Tak ada fungsi khusus, hanya menampilkan pola-pola angka saja
Hint : Begitu jalan, langsung masukan angka saja, Jangan masukan angka terlalu kecil atau besar.
Screen Shot
uses crt;
var inp,i,a,t,r:integer;
begin
readln(inp);
t:=inp;
for i:=1 to inp do
begin
for a:=1 to inp do
write(a-t);
writeln;
t:=t-1;
end;
readln;
end.
Jumlah Pangkat
Fungsi: untuk menghasilkan deret pangkat, misal : 1, 4, 9, 16, 25 dst dan menjumlahkannya
Hint : Masukan jumlah deret pangkat yang akan ditampilkan untuk di jumlah
Screen Shot
uses crt;
var k,jum:double;
i,n:longint;
begin
clrscr;
readln(n);
jum:=0;
for i:=1 to n do
begin
k:=sqr(i);
write(k:0:0);
if i<>n then
write('+');
jum:=jum+k;
end;
write('=',jum:0:0);
readln;
end.
Tebak Angka
Fungsi: Permainan Tebak angka, masukan angka rahasia dan suruh teman untuk menebaknya
Hint : Permainan ini tidak akan asik bila dilakukan sendirian.
Screen Shot
uses crt;
var a,teb,c,d,rhs:integer;
begin
Write('Bilangan Rahasia : ');readln(rhs);
clrscr;
repeat
write('masukan Tebakan anda : ');readln(teb);
if (teb<>rhs) and (teb>rhs) then
writeln('Bilangan terlalu besar!')
else if (teb<>rhs) and (teb
writeln('bilangan terlalu kecil');
until (teb=rhs);
writeln('Tebakan Anda Benar!!!!, selamat!!!!');
readln;
end.
Z
Fungsi: Melukis huruf Z dengan karakter * sebesar jumlah perulangan yang di inputkan
Hint : Masukan angka untuk menentukan besar huruf Z
Screen Shot
uses crt;
var n,i,a:integer;
begin
readln(n);
for i:=1 to n do
begin
for a:=1 to n do
begin
if (i=1) or (i=n) then
write('#')
else if (i<>1) and (i<>n) then
begin
if a+i=n then
write('#')
else
write(' ');
end;
end;
writeln;
end;
readln;
end.
Sejarahnya begini, awalnya saya menulis program ini iseng-iseng hanya untuk mencari yang mana
bilangan prima. Lalu saya kembangkan lagi menjadi bisa menuliskan daftar bilangan pembagi, waktu
itu, daripada repot mengedit perulangan untuk menentukan bilangan prima yang sudah mapan, saya
membuat perulangan baru. Dan akhirnya program ini punya 2 perulangan yang strukturnya hampir
mirip.
Tapi nampaknya tidak masalah, toh selisih waktu kalkulasinya hanya beberapa milidetik, bahkan
untuk bilangan yang mencapai ratusan juta sekalipun. Mau edit lagi, rasanya malasBerikut
kodenya.:
Hint: Sebelum di compile, buat dulu file bernama output.txt di folder yang sama dengan source code
pembagi.
program pembagi;
uses crt;
var x,y,q,w,z,e,f,g:longint;
l,a:string;
out:text;
label k;
{prosedur untuk sekedar merapikan hasil output}
procedure rapikan(s:longint;var t:string);
begin
if s<10 then
t:='
'
else if (s>9) and (s<100) then
t:='
'
else if (s>99) and (s<1000) then
t:='
'
else if (s>999) and (s<10000) then
t:='
'
else if (s>9999) and (s<100000) then
t:='
'
else if (s>99999) and (s<1000000) then
t:=' '
else if (s>999999) and (s<10000000) then
t:=' '
else if (s>9999999) and (s<100000000) then
t:=' '
else if (s>99999999) and (s<1000000000) then
t:=' '
else if (s>999999999) and (s<1000000000) then
t:=' '
else t:=' ';
end;
{program utama}
begin
textbackground(blue);
textcolor(Yellow);
clrscr;
assign(out,'output.txt');
append(out);
gotoxy(3,1);writeln('+______________________________________________________+');
gotoxy(3,2);writeln('|Copyright@2009, Xenovon, http://komputok.blogspot.com |');
gotoxy(3,3);Writeln('+------------------------------------------------------+');
writeln;
writeln;
gotoxy(3,5);writeln('Hint: Masukan angka 2 untuk keluar');
gotoxy(3,6);writeln('
hasil juga dioutputkan ke output.txt');
writeln;
writeln;
gotoxy(15,9);writeln('----[MENENTUKAN PEMBAGI SUATU BILANGAN BULAT]------');
writeln;
writeln;
{menuliskan ke output.txt}
writeln(out);
writeln(out);
writeln(out);
writeln(out,'+______________________________________________________+');
writeln(out,'|Copyright@2009, Xenovon, http://komputok.blogspot.com |');
Writeln(out,'+------------------------------------------------------+');
writeln(out);
writeln(out);
writeln(out);
writeln(out,'----[MENENTUKAN PEMBAGI SUATU BILANGAN BULAT]------');
writeln(out);
begin
{input bilangan yang akan di cari}
k:
write('masukan bilangan yang akan di cek : ');readln(x);writeln;
{error handling}
if x<2 then goto k else
{pemeriksaan kondisi untuk keluar program, yaitu dengan menginput angka 2}
if x=2 then
begin