Enggak kerasa
sekarang umurku sudah 18 tahun , dan sekarang akupun sudah kuliah biarpun baru semester 1 dan mengambil jenjang
pendidikan D3 aku tetap bersemangat dgn kuliah ku. Semangaat sangat
bersemangat.
Algoritma dan pemograman adalah salah satu mata kuliah yang aku
pelajari. Program yg digunakan adalah Turbo Pascal 1.5, aku cukup familiar
dengan software ini karna dulu sewaktu kelas 1 SMK aku pernah belajar. Inilah
untungnya pernah bersekolah di SMK , apalagi jurusan RPL...hehhehe. Berikut
ringkasan materi turbo pascal yg aku dapat , satu lagi aku juga akan share
coding-coding program yang aku pelajari selama 1 semester ini. Tapi baca dulu
materinya baru download codingnya ....
PENGANTAR LOGIKA DAN ALGORITMA
·
LOGIKA à
Logika berasal dari bahasa Yunani yaitu LOGOS yang berarti ilmu. Logika pada
dasarnya filsafat berpikir. Berpikir berarti melakukan suatu tindakan yang
memiliki suatu tujuan. Jadi pengertian Logika adalah ilmu berpikir / cara
berpikir dengan berbagai tindakan yang memiliki tujuan tertentu.
·
ALGORITMA à Pada
Merriam-Webster’s Collegiate Dictionary, istilah algoritma diartikan sebagai
prosedur langkah demi langkah untuk memecahkan masalah atau menyelesaikan suatu
tugas. Kamus Besar Bahasa Indonesia (KBBI) mendefinisikan algoritma sebagai
urutan logis pengambilan keputusan untuk pemecahan masalah.
Alat Bantu untuk menuliskan Logika dan Algoritma, salah satunya
adalah Flowchart dan Pseudecode.
·
FLOWCHART à
gambaran dalam bentuk diagram alir dari algoritma dalam suatu program atau
prosedur sistem secara logika, yang menyatakan arah alur program dalam
menyelesaikan suatu masalah.
SIMBOL
Flowchart
Pedoman-pedoman dalam Membuat Flowchart:
1.
Bagan alir
sebaiknya digambar dari atas ke bawah dan mulai dari bagian kiri dari suatu
halaman.
2.
Kegiatan di
dalam bagan alir harus ditunjukkan dengan jelas.
3.
Harus
ditunjukkan dari mana kegiatan akan dimulai dan dimana akan berakhirnya diawali
dari satu titik START dan diakhiri dengan END).
4.
Masing-masing
kegiatan di dalam bagan alir sebaiknya digunakan suatu kata yang mewakili suatu
pekerjaan, misalnya:
-
"Persiapkan"
dokumen
-
"Hitung"
gaji
5.
Masing-masing
kegiatan di dalam bagan alir harus di dalam urutan yang semestinya.
6.
Kegiatan yang
terpotong dan akan disambung di tempat lain harus ditunjukkan dengan jelas
menggunakan simbol penghubung.
7.
Gunakanlah
simbol-simbol bagan alir yang standar.
CONTOH
·
Program Welcome
Ø Coding
program Welcome ;
uses Wincrt ;
Begin
Writeln (' Hallo , Welcome ');
Writeln (' in
');
Writeln (' Turbo Pascal 1.5');
writeln (' ^.^
');
end.
Ø Pseudecode
Algoritma Welcome
Output ( ‘ Hallo, Welcome ‘)
Output (‘ in’)
Output (‘Turbo Pascal 1.5’)
Output (‘ ^.^’)
MENGENAL TIPE DATA
TIPE DATA DASAR
Tipe data dasar yang digunakan dalam algoritma maupun pemrograman
yaitu :
Ø
Tipe Sederhana
a.
Tipe Ordinal
·
Tipe Integer
Tipe Integer
adalah tipe data yang nilainya tidak mempunyai titik desimal. Tipe integer
merupakan tipe data yang terdiri dari bilangan bulat dalam rentang tertentu.
Operator Integer :
Operator
Arti
+
Penjumlahan
-
Pengurangan
*
Perkalian
DIV
Division,
hasil pembagian bulat
MOD
Modulo, sisa
pembagian
·
Tipe Boolean
Tipe Boolean
hanya terdiri dari dua harga yaitu TRUE dan FALSE. Ekspresi TRUE atau FALSE
disebut ekspresi Boolean. Terdapat dua jenis operator yang dapat digunakan
dalam ekspresi Boolean, yaitu operator Boolean dan operator Relasional.
Operator boolean terdiri dari AND, OR dan NOT.
Operator Relasional :
Operator
|
Arti
|
+
|
Penjumlahan
|
-
|
Pengurangan
|
*
|
Perkalian
|
DIV
|
Division,
hasil pembagian bulat
|
MOD
|
Modulo, sisa
pembagian
|
Operator
|
Arti
|
=
|
Sama dengan
|
<
|
Kurang dari
|
<=
|
Kurang dari
sama dengan
|
>
|
Lebih dari
|
>=
|
Lebih dari
sama dengan
|
<>
|
Tidak sama
dengan
|
·
Tipe Char
Tipe char digunakan untuk mendefinisikan tipe data yang nilainnya
merupakan himpunan karakter yang dikenal komputer seperti yang tersaji dalam
tabel ASCII. Dalam program konstanta bertipe char ditulis diantara tanda petik,
misalnya :
‘A’ ‘B’ ‘,’ ‘4’
·
Tipe Terbilang
Disebut tipe terbilang karena semua nilai disebutkan satu persatu.
b. Tipe Real
Tipe Real
adalah tipe data yang berisi titik desimal. Tipe real merupakan tipe data yang
terdiri dari bilangan pecahan dalam rentang tertentu.
Operator Real :
Operator
|
Arti
|
+
|
Penjumlahan
|
-
|
Pengurangan
|
*
|
Perkalian
|
/
|
Pembagian
|
2. Tipe String
Tipe String adalah data yang berisi
sederetan karakter yang banyaknya karakter bisa berubah-ubah sesuai kebutuhan,
yaitu 1 sampai 255 karakter.
CONTOH
·
Program Data Siswa
Program Data_siswa;
Uses WinCrt ;
Var
Nama : String [20];
Kelas : Char ;
JenisKelamin : String [10];
Begin
Write ('Inputkan Nama :') ; Readln (Nama) ;
Write ( 'Inputkan Kelas :') ; Readln (Kelas);
write ('Inputkan Jenis Kelamin :') ; Readln (JenisKelamin);
Writeln ;
Writeln (Nama);
Writeln (Kelas);
Writeln (JenisKelamin);
End.
SELEKSI
KONDISI
1. Pilihan
Tunggal (Struktur Kendali “IF…Then…’)
Pernyataan if (if
statement) akan memeriksa suatu
kegiatan (persyaratan) dan menentukan apakah kegiatan (persyaratan) tersebut
benar atau salah, kemudian melakukan pekerjaan sesuai dengan nilai pernyataan.
Struktur Penulisan :
if (kondisi) then
pernyataan ;
|
CONTOH
·
Program Bilangan positif
Program Bilangan_positif;
Uses WinCrt;
Var
Bil : Integer ;
Begin
Write ('Masukkan Bilangan '); Readln (Bil);
If Bil >0 Then
Writeln ('Bilangan Positif ');
End.
2.Pilihan Ganda ( If Then Else)
Pilihan ganda yaitu penggunaan struktur If …Then dengan
dua pilihan yang akan diseleksi.
Struktur Penulisan :
if (kondisi)
then
pernyataan_1
else
pernyataan_2
|
·
Program Babysitter(Penentuan lulus atau tidak)
Program Babysiter ;
Uses WinCrt ;
Var
Nama,Jk,Umur,Ket : String ;
Begin
Writeln (' Program Seleksi
babysiter ');
Writeln ('
************************* ');
writeln ;
Writeln ('Syarat:');
writeln (' - Berjenis
Kelamin Perempuan ');
Writeln ;
Writeln ;
Write ('Inputkan nama :'); Readln (Nama);
Write ('Inputkan Jenis Kelamin(L/P):') ;Readln (Jk);
Write ('Inputkan Umur :'); Readln (Umur);
If Jk='P' then
Ket := 'ANDA LULUS' else Ket := 'ANDA TIDAK MEMENUHI SYARAT';
Writeln ;
Writeln ('Nama : ',Nama);
Writeln ('Jenis Kelamin : ',Jk);
writeln ('Umur : ',Umur,'Thn');
writeln ('Keterangan: ', Ket);
End.
3. Pilihan Jamak
Pilihan jamak adalah penggunaan struktur if..then dengan pilihan
lebih dari 2. Dengan pilihan jamak, statement akan dipilih salah satu yang
sesuai dengan kondisi yang tersedia.
if (kondisi_1) then
pernyataan_1
else
if (kondisi_2) then
pernyataan_2
if (kondisi_3) then
pernyataan_3
else
pernyataan_4
|
Struktur Penulisan :
CONTOH
·
Program penentuan SKS berdasarkan semester
Program SKS;
Uses WinCrt ;
Var
smtr : String[2] ;
Begin
Write (' Inputkan Semester Anda ?'); readln(smtr);
if smtr='1' then
writeln (' Sks Anda : 20 Sks')
else
if smtr='2' then
writeln (' Sks Anda: 21Sks')
else
if smtr='3' then
writeln (' SKS Anda: 22 Sks')
else
Writeln (' Sks Anda : 24 Sks');
end.if
end.if
end.if
end.
STRUKTUR CASE
CONTOH
·
Program Data Pegawai
Program Data_pegawai;
Uses WinCrt;
Var
Nip : String [15];
Nama : string[20];
Gol : Char ;
Gajihpokok: real ;
Tunjangan : real;
Gajihtotal :real ;
begin
Write (' Inputkan NIP :'); readln (Nip);
write (' Inputkan Nama :'); readln (Nama);
Write (' Inputkan Golongan :'); readln (Gol);
Case Gol of
'A': Gajihpokok:=750000 ;
'B': Gajihpokok:=850000 ;
'C':Gajihpokok:=1150000;
'D':Gajihpokok:=1350000;
'E':Gajihpokok:=1500000;
end;
Tunjangan := 0.15 * Gajihpokok;
Gajihtotal := Gajihpokok + Tunjangan ;
writeln ;
writeln ;
Writeln (' NIP Anda :',Nip);
Writeln ( ' Nama Anda :',Nama);
writeln (' Golongan Anda :',Gol);
writeln (' Gajih Pokok Anda :Rp. ',Gajihpokok:2:2);
writeln (' Tunjangan Anda :Rp. ',Tunjangan:2:2);
writeln (' Total Gajih Anda :Rp.',Gajihtotal:2:2);
end.
PERULANGAN
·
Deret 1+2+3+4+5+........+N
(FOR)
program deret;
uses Wincrt ;
Var
i , N ,i, Jumlah :Integer ;
begin
write ('Banyak Data ?'); readln(N);
Jumlah := 0 ;
for i := 1 to N do
begin
write (i);
write ('+');
Jumlah := Jumlah + i ;
end;
writeln ;
Writeln ('Jumlah Deret =',Jumlah);
end.
(WHILE
DO)
Pernayataan ini dilakukan untuk melakukan proses pengulangan bila
kondisi atau syrat tertentu yang terdapat pada awal blok terpenuhi. Proses
pengulangan setelah pernyataan Do dilakukkan bila kondisi pada pernyataan While
terpenuhi. Bila proses pengulangan tersebut terdiri dari beberapa pernyataan,
maka harus dibuat blok dengan diawali pernyataan Begin dan diakhri pernyataan
End.
program deret;
Uses Wincrt ;
var
i,N,Jumlah : Integer ;
Begin
Write ('Banyak Data?'); Readln (N);
i := 1 ;
Jumlah :=0 ;
while i <= N do
begin
write (i);
write ('+');
Jumlah := Jumlah +i;
i := i +1 ;
end;
writeln;
writeln ('Jumlah Deret :',Jumlah);
end.
(REPEAT
UNTIL)
Proses pengulangan terjadi
setelah pernyataan Repeat berakhir pada pernytaan Until. Bila kondisi pada
pernyataan Until masih terpenuhi, proses pengulangan akan dilakukan lagi.
program deret ;
uses Wincrt ;
Var
i,N,Jumlah : Integer ;
begin
write ('Banyak Data ?'); readln (N);
i := 1 ;
Jumlah := 0 ;
Repeat
begin
write (i);
write ('+');
Jumlah := Jumlah + i;
i := i+ 1;
end;
Until i >N;
writeln ;
writeln ('Jumlah Deret:',Jumlah);
end.
ARRAY
Suatu array yang terdiri atas banyak variable
dengan tipe data sama, dimana masing- masing elemen variable mempunyai nilai
indeks. Setiap elemen array mampu untuk menyimpan satu jenis data (yaitu
variable). Suatu aray dinyatakan denag type, sehingga variable yang bekerja
dinyatakna dengan :
A = array [batas bawah..batas atas] of type data
Contoh :
Angka : array [1..10] of integer
Data : array [a..z] of char
Deklarasi dengan menggunakan tipe
Contoh
Type
Angka : 1 ..100
Var
Data : array [Angka] of integer
Array dibedakan menjadi 3 macam, yaitu :
1. Array 1 dimensi
2.Array 2 dimensi
3. Array 3 dimensi
Array 1 Dimensi
Array 1 dimensi merupakan array yang mempunyai satu indeks.
Contoh :
·
Program dimensi 1
program praktek ;
Uses wincrt;
Var lagi:char;
i,j:integer;
arraystr: array[1..25] of string;
Begin
{inisialasi ARRAY}
lagi:='Y';
i:=1;
repeat
clrscr;
write('Masukan nama : '); readln(arraystr[i]);
inc(i);
write('Apakah anda ingin memasukan data lagi (Y/T)?');
lagi:=upcase(readkey);
until lagi<>'Y';
clrscr:
{cetak array}
for j:= 1 to i do begin
writeln(arraystr[j]);
end;
end.
program praktek ;
Uses wincrt;
Var lagi:char;
i,j:integer;
arraystr: array[1..25] of string;
Begin
{inisialasi ARRAY}
lagi:='Y';
i:=1;
repeat
clrscr;
write('Masukan nama : '); readln(arraystr[i]);
inc(i);
write('Apakah anda ingin memasukan data lagi (Y/T)?');
lagi:=upcase(readkey);
until lagi<>'Y';
clrscr:
{cetak array}
for j:= 1 to i do begin
writeln(arraystr[j]);
end;
end.
·
2. Array
2 Dimensi
Array 2 dimensi merupakan array yang mempunyai 2 buah indeks. Array 2 dimensi dipakai untuk mempermudah pengertian tentang posisi, ciri khas, atau arti dari nama variable tersebut.
Contoh :
Array 2 dimensi merupakan array yang mempunyai 2 buah indeks. Array 2 dimensi dipakai untuk mempermudah pengertian tentang posisi, ciri khas, atau arti dari nama variable tersebut.
Contoh :
Var X: Array [1..2,1…3] of integer;
Pernyataan pada contoh diatas berarti bahwa variable X mempunyai 6 suku yaitu :
X [1,1] X [2,1]
X [1,2] X [2,2]
X [1,3] X [2,3]
Untuk membaca atau member nilai pada array 2 dimensi biasanya digunakan struktur control For..To…Do..
Contoh :
For I := 1 to 2 do
For J := 1 to 3 do
Readln (x[I,j]);
3. Array 3 Dimensi
Array 3 dimensi merupakan array yang tersusun atas 3 buah indeks.
Contoh :
Var x :Array [1..2, 1..2, 1..3] of integer
Pernyataan tersebut berarti bahwa variable x mempunyai suku yaitu:
x[1,1,1] x[1,2,1]
x[1,1,2] x[1,2,2]
x[1,1,3] x[1,2,3]
PROCEDURE
Procedure adalah sub program yang menghasilkan output lebih dari satu
atau sekedar melakukan tindakan tertentu .
Contoh
program latih24 ;
uses wincrt ;
procedure aljabar (A,B,C : integer);
var
hitung :real ;
begin
hitung
:=(((A*A)+(B*B)-C)/(2*(A*A)+(B*B)));
writeln(hitung:2:0);
end;
var
AA, BB , CC : Integer ;
begin
write ('inputkan A
');readln (AA);
write ('inputkan B
');readln (BB);
write ('inputkan C
');readln (CC);
aljabar (AA,BB,CC);
end.
FUNGSI
Fungsi adalah pada dasarnya hampir sama dengan procedure yang
membedakannya adalh pada fungsi (nama fungsi) mempunyai type sehingga disebut
pengiriman parameter pada fungsi cenderung secara nilai.
Contoh
Program Keliling_Lingkaran;
Uses Wincrt;
Function Luas ( R: Real) : Real;
Begin
Luas:=Pi*R*R;
end;
Var
Jari : Real;
Begin
Clrscr;
Writeln('Program Untuk Menghitung Keliling Lingkaran');
Writeln;
Write('masukan jari-jari lingkaran = '); Readln(Jari);
Write('luas =',Luas(Jari):0:2);
End.
RECORD
Record
biasanya disusun satu atau lebih field. Setiap field menyimpan dua dari type
dasar tertentu atau dari type bentukan lain yg sudah didefinisikan.
FILE
·
FILE TEXT
File text merupakan bentuk file yang brisi kumpulan dari karakter
yg dibentuk dalam baris-baris dan masing masing baris diakhiri oleh tanda ‘End
Of Line’.
·
FILE BERTIPE
file
bertype dapat diakses secara sequential acces dan juga random acces , artinya
komponen didalam file dapat dibaca atau direkam dimanapun didalam file. Setelah
file variabel dihubungkan dengan eksternal file maka file bertype dapat dibuka
dengan perintah ‘Rewrite’ atau ‘Reset’.
Tidak ada komentar:
Posting Komentar