SlideShare a Scribd company logo
Materi Pascal
PERULANGAN ( LOOPING )
Di dalam bahasa Pascal, dikenal tiga macam
perulangan, yaitu dengan menggunakan
pernyataan For, While-Do, dan Repeat…Until.
1. Struktur Perulangan For
Perulangan dengan pernyataan For digunakan
untuk mengulang pernyataan atau satu blok
pernyataan berulang kali sejumlah yang
ditentukan. Perulangan dengan pernyataan For
dapat berbentuk perulangan positif, perulangan
negatif dan perulangan tersarang.
LOOPING ( FOR )
• Perulangan positif.
For variabel-kontrol:=nilai awal To nilai akhir Do pernyataan
Contoh
Var
I:Integer;
Begin
For I:= 1 to 5 Do Writeln(‘Pascal’);
End.
LOOPING ( FOR )
• Perulangan negatif
For variabel-kontrol:=nilai awal DownTo nilai akhir Do
penyataan
Contoh
Var
I:integer;
Begin
For I:=5 downto 1 do
Begin
Writeln(I);
End;
End.
LOOPING ( FOR )
• Perulangan tersarang
Perulangan tersarang adalah perulangan yang
berbeda di dalam perulangan yang lainnya.
Perulangan yang lebih dalam akan diproses
terlebih dahulu sampai habis, kemudian
perulangan yang lebih luar baru akan akan
bertambah, mengerjakan perulangan yang lebh
dalam lagi mulai dari nilai awalnya dan
seterusnya.
Contoh
Var
I,J:Integer;
Begin
For I:=1 to 5 Do
Begin
For j:=1 to 3 Do
Begin
Write(I:8,J:3);
End;
Writeln;
End;
• End.
Bila program dijakankan
akan menghasilkan:
• 1 1 1 2 1 3
• 2 1 2 2 2 3
• 3 1 3 2 3 3
• 4 1 4 2 4 3
• 5 1 5 2 5 3
LOOPING ( While ... Do )
• Struktur Perulangan While-Do
Perulangan ini menggunakan pernyataan
While—Do. Pernyataan While—Do digunakan
untuk melakukan proses perulangan suatu
pernyataan atau blok pernyataan terus-
menerus selama kondisi ungkapan logika pada
While masih bernilai logika benar.
BU : While kondisi ungkapan Do Pernyataan
Contoh
Var
I:Integer;
Begin
I:=0;
While I<5 Do
Begin
Writeln(I);
I:=I+1;
End;
End.
Bila program dijalankan
akan menghasilkan:
0
1
2
3
4
LOOPING ( Repeat ... Until )
• Struktur Repeat...Until
Struktur Repeat…Until digunakan untuk
mengulang pernyataan-pernyataan atau blok
pernyataan sampai kondisi yang diseleksi di
Until terpenuhi.
Bentuk mumnya adalah:
Repeat pernyataan Until
Contoh
Var
I:Integer
Begin
I:=0;
Repeat
I:=I+1;
Writeln(I);
Until I=5;
End.
Bila program dijalankan
akan menghasilkan:
1
2
3
4
5
Penyeleksian Kondisi
• Dengan menyeleksi suatu kondisi, program
dapat menentukan tindakan apa yang harus
dikerjakan, bergantung dari hasil kondisi yang
diseleksi tersebut. Untuk menyeleksi suatu
kondisi, di dalam bahasa Pascal dapat
dipergunakan pernyataan IF dan CASE.
Penyeleksian Kondisi ( IF )
• Pernyataan IF
Struktur pernyataan IF dapat berupa If—Then
atau If—Then—Else dengan bentuk umum:
If ungkapan Then pernyataan
• Ungkapan adalah kondisi yang akan diseleksi
oleh pernyataan If. Bila kondisi yang diseleksi
terpernuhi, maka pernyataan yang mengikuti
Then akan diproses. Sebaliknya, bila kondisi
tidak terpenuhi, maka yang akan diproses
adalah pernyataan berikutnya
Contoh
Var
Nilai:ral;
Ket : string[11];
Begin
Ket:’Tidak Lulus’;
Write(‘Nilai Ujian = ‘);
Readln(Nilai);
{Penyeleksian kondisi}
If Nilai>60 Then
Ket:=’Lulus’;
Writeln(Ket);
End.
Penyeleksian Kondisi ( IF )
If kondisi Then pernyataan1;
Else pernyataan2;
• Pernyataan1 akan diproses apabila kondisi
benarn(terpenuhi) sedang pernyataan2 akan
diproses apabila kondisi tidak terpenuhi.
Contoh
Var
Nilai:Real;
Begin
Writeln(‘Nilai Ujian = ‘);
Readln(Nilai);
If Nilai>60 Then Writeln(‘Lulus’);
Else Writeln(‘Tidak Lulus’);
End.
Penyeleksian Kondisi ( Case )
• Pernyataan Case
Pernyataan Case dapat berbentuk struktur Case—Of
atau Case—Of…. Else.
Struktur Case—Of mempunyai suatu ungkapan logika
yang disebut dengan selector dan sejumlah
pernyataan yang diawali dengan suatu label
permasalahan yang mempunyai tipe sama dengan
selector. Pernyataan yang mempunyai label
permasalahan yang bernilai sama dengan nilai
selector akan diproses sedang pernyataan yang
lainnya tidak.
Penyeleksian Kondisi ( Case )
• Bentuk dari struktor Case—Of adalah:
Case ungkapan Of
daftar case-label1:pernyataan1;
daftar case-label2:pernyataan2;
daftar case-label3:pernyataan3;
.
daftar case-labeln:pernyataann;
End;
• Daftar case label (label permasalahan) dapat berupa
konstanta, atau range (himpunan) dari konstanta
yang bukan bertipe real.
Contoh
Var
Nilai:Char;
Begin
Writeln(‘Nilai huruf yang didapat = ‘);Readln(Nilai);
Case Nilai of
‘A’:Writeln(‘Sangat Baik’);
‘B’:writeln(‘Baik’);
‘C’:Writeln(‘Cukup’);
‘D’:Writeln(‘Kurang’);
‘E’:Writeln(‘Gagal’);
End; End.
Penyeleksian Kondisi ( Case )
• Struktur Case—Of…Else merupakan pengembangan
dari struktur Case—Of dan juga merupakan
pengembangan dari standar Pascal. Pada struktur
Case—Of bila tidak ada kondisi yang terpenuhi
berarti tidak ada pernyataan di lingkungan Case—Of
yang diproses. Dengan struktur Case—Of…Else, bila
Tidak ada kondisi yang terpenuhi, maka pernyataan
yang akan diproses di dalam lingkungan Case—Of
adalah pernyataan yang ada di Else.
Contoh
Var
Bersih,Beli,potong:Integer;
Begin
Writeln(‘Total Pembelian = ‘); Readln(beli);
Case Beli of
0..1000:potong:=100;
1001..5000:potong:=200;
Else potong:=500;
End;
Bersih:=beli-ptong;
Writeln(‘Potongan = ‘, potongan);
Writeln(‘Jumlah Bersih = ‘, Bersih);
End.
Procedure
• Prosecure adalah suatu program terpisah
dalam blok sendiri yang berfungsi sebagai
subprogram (program bagian). Prosedur
diawali dengan kata cadangan Procedure di
dalam bagian deklarasi prosedur. Prosedur
dipanggil dan digunakan di dalam blok
program yang lainnya dengan menyebutkan
judul prosedurnya.
Procedure
• Prosedur banyak digunakan pada program yang
terstruktur, karena:
1. Merupakan penerapan konsep program modular,
yaitu memecah-mecah program yang rumit menjadi
program-program bagian yang lebih sederhana
dalam bentuk prosedur-prosedur.
2. Untuk hal-hal yang sering dilakukan berulang-ulang,
cukup dituliskan sekali saja dalam prosedur dan
dapat dipanggil atau dipergunakan sewaktu-waltu
bila diperlukan.
Contoh prosedur tanpa acuan
Procedure Hitung;
Var
x,y:real;
Begin
Writeln(‘Nilai x: ‘);
Readln(x);
Y:=x*x;
Writeln(‘Nilai Y= ‘, y:6;2);
End;
Begin
Hitung;
End.
Contoh prosedur secara acuan
Procedure Hitung(var
a,b,c);
Begin
C:=a+b;
Writeln(c);
End;
Var
X,y,z:integer;
Begin
X:=2;Y;=3;
Hitung(x,y,z);
End.
Function
• Fungsi hampir sama dengan prosedur, hanya
fungsi harus dideklarasikan dengan tipenya.
Tipe deklarasi ini menunjukkan tipe hasil dari
fungsi. Tipe tersebut ditulis pada akhir
deklarasi fungsi yang didahului dengn titik
koma, sebagai berikut.
Function namafungsi(daftar_parameter):type;
Contoh
Function Hitung(Var A,B :
integer): integer;
Begin
Hitung := A + B;
End;
Var X,Y : integer;
Begin
Write(‘Nilai X ? ‘);
Readln(X);
Write(‘Nilai Y ? ‘);
Readln(Y);
Writeln;
Writeln(X,’ + ‘,Y,’
=‘,Hitung(X,Y));
End.
Perbedaan fungsi dengan prosedur
1. Pada fungsi, nilai yang dikirimkan balik
terdapat pada nama fungsinya (kalau pada
prosedur pada parameter yang dikirimkan
secara acuan).
2. Karena nilai balik berada di nama fungsi
tersebut, maka fungsi tersebut dapat langsung
digunakan untuk dicetak hasilnya Atau nilai
fungsi tersebut dapat juga langsung
dipindahkan ke pengenal variabel yang lainnya
Rekursif
• Suatu fungsi atau prosedur dalam bahasa
Pascal dapat bersifat rekursif. Artinya, fungsi
atau prosedur tersebut dapat memanggil
dirinya sendiri.
• Berikut ini sebuah contoh fungsi dan prosedur
yang rekursif.
function faktorial (nilai : integer) : integer; begin
if nilai <= 0 then faktorial := 1;
else faktorial := nilai * faktorial (nilai-1)
end;
Var
N : integer;
Begin
Write(‘Berapa faktorial ? ‘);
Readln(N);
Writeln(N,’ faktorial = ‘,faktorial(N):9:0);
End.
Function fibonacci ( n : integer ) : integer;
Begin
If n = 0 then fibonacci := 0
Else
If n := 1 then fibonacci := 1
Else fibonacci := fibonacci (n-1) + fibonacci (n-2);
End;
Var
N : integer;
Begin
Write(‘Berapa banyak ? ‘); Readln(N); fibonacci(n);
End.
Procedure reverse ( num : integer ); Begin
If num < 10 then write(num)
Else begin
Write(num mod 10);
Reverse(num div 10);
End; End;
Var
N : integer;
Begin
Write(‘Berapa nilai ? ‘); Readln(N); reverse(n);
End.
Array ( Larik )Array ( Larik )
Array Satu Dimensi
Array Dua Dimensi
Array Satu DimensiArray Satu Dimensi
Array adalah sekumpulan data yang bertipe sama, yang
anggota-anggotanya dapat diakses berdasarkan nomor
indeks.
Misalnya ada 26 huruf, kita sebut saja array Abjad,
adalah sekumpulan 26 buah karakter yang berisi nama-
nama abjad latin. Anggota pertama adalah ‘A’, anggota
kedua adalah ‘B’ dan seterusnya hingga anggota ke 26
adalah ‘Z’.
• Dalam notasi algoritma kita tuliskan :
Abjad : array [1..26] of character
Pemberian nilainya bisa dilakukan dengan cara,
pertama pengisian satu-satu berdasarkan nomor
indeks :
Abjad [1]  ‘A’
Abjad [2]  ‘B’ dst sampai Abjad [26]  ‘Z’
• Dalam notasi algoritma , indeks array dimulai dari 1,
artinya jika kita punya array dengan 26 anggota,
indeksnya mulai dari 1,2,3…sampai 26.
• Berikut penulisan array dengan menggunakan
turbo Pascal:
Abjad : array [1..26] of char;
Contoh pemberian nilai untuk array diatas
dengan menggunakan bahasa Pascal adalah :
Abjad [1] := ‘A’;
Abjad [2] := ‘B’ dst sampai Abjad [26] := ‘Z’
Program Nama_array;
Uses winrt;
Type
nameType = String[50];
ageType = 0..150; { age range: from 0 to 150 }
Var
name : nameType;
age : ageType;
Begin
Write('Enter your name: ');
Readln(name);
Write('Enter your age: ');
Readln(age);
Writeln;
Writeln('Your name:', name);
Writeln('Your age :', age);
Readln;
End.
Contoh 1.1
Program P002;
uses wincrt;
var abjad : array [1..50] of char;
i,maks : integer;
begin
clrscr;
write ('Masukan jumlah data karakter : ');
readln(maks);
for i:=1 to maks do
begin
write ('Masukan karakter ke ',i,' : ');
readln(abjad[i]);
end;
write ('Karakter yang dinput : ');
for i:=1 to maks do
begin
write (abjad[i],’ ‘);
end;
readln;
end.
Contoh 1.2
Program P003;
uses wincrt;
var angka:array [1..50] of integer;
i,maks:integer;
begin
clrscr;
write ('Masukan jumlah data : ');
readln(maks);
for i:=1 to maks do
begin
write ('Masukan angka ke ',i,' : ');
readln(angka[i]);
end;
write ('Angka yang dinput : ');
for i:=1 to maks do
begin
write(angka[i]);
end;
readln;
end.
Contoh 1.3
Program Contoh_Deklarasi_Array_Beragam;
Uses winCrt;
Var
NPM :array[1..20] of string[10];
Nama :array[1..20] of string[25];
Nilai : array[ 1. .20] of real;
Umur : array[1 . .20] of byte;
banyak,i : integer;
Begin
ClrScr;
Write('Isi berapa data array yang diperlukan :');
Readln(banyak);
For i := 1 to banyak Do
Begin
Write('NPM =');Readln(NPM[i]);
Write('Nama =');readln(Nama[i]);
Write('Nilai=');readln(Nilai[i]);
Write('Umur =');readln(Umur[i]);
End;
{cetak varibel array}
Writeln('NPM NAMA NILAI UMUR ');
For i:= 1 to banyak Do
Begin
Writeln(Npm[i]:1 0,Nama[i] :25,Nilai[i] :3:2,' ',Umur[i] :3); End;
Readln;
End.
Contoh 1.4
Studi Kasus :
Buat sebuah program perhitungan nilai akhir 5 orang
mahasiswa ?
Input : nama, tugas, quiz, uts, dan uas
Proses : nilai = 10%*tugas + 20%*quiz + 30%*uts+ 40%*uas.
Output : nama, dan nilai ditampilan menurut index
Program Studi_Kasus;
Uses wincrt;
Var Nama:array[1..5]of string;
I,Tugas,Quiz,UTS,UAS:integer;
Nilai:array[1..5]of real;
Begin
for I:=1 to 5 do
begin
Clrscr;
write('Masukan Nama : ');readln(Nama[I]);
write('Masukan Tugas : ');readln(Tugas);
write('Masukan Quis : ');readln(Quiz);
write('Masukan UTS : ');readln(UTS);
write('Masukan UAS : ');readln(UAS);
Nilai[I]:=0.1*Tugas+0.2*Quiz+0.3*UTS+0.4*UAS;
end;
Clrscr;
for I:=1 to 5 do
writeln('Nama : ',Nama[I],' mendapat
nilai :',nilai[i] :5:2);
readln;
End.
Jawaban.
Array Dua Dimensi
Di dalam pascal Array dapat berdimensi lebih dari satu
yang disebut dengan array dimensi banyak
(Multidimensional array).
Array 2 dimensi dapat mewakili suatu bentuk tabel
atau matrik, yaitu indeks pertama menunjukkan baris
dan indeks ke dua menunjukkan kolom dari tabel atau
matrik.
Let us have the 2 dimensional array defined first. Think of a
grid where each box is located by using horizontal and vertical
coordinates just in the example below:
1 2 3 4 5
2
3 3,4
4
5 5,3
An example of a 5 by 5 2D array illustrated on a grid
Contoh Bentuk Tampilan
Var
my2DArray : Array[1..3][1..5] of Byte;
Begin
my2DArray[2][4] := 10;
End.
1 2 3 4 5
2 10
3
Having the vertical axis as the 1st dimension and the horizontal one as the 2nd
dimension, the above example is illustrated as follows:
Program Deklarasi_Array_Dua_Dimensi;
Uses Wincrt;
Var
Tabel : Array [1..3, 1..2] of Integer;
i,j : Integer;
Begin
ClrScr;
Tabel [1,1] :=1;
Tabel [1,2] :=2;
Tabel [2,1] :=3;
Tabel [2,2] :=4;
Tabel [3,1] :=5;
Tabel [3,2] :=6;
For I := 1 to 3 Do
Begin
For J:= 1 to 2 Do
Begin
Writeln ('Elemen ',i,',',j ,'= ',tabel [i,j] );
End;
End;
End.
Contoh 2.1
Program penjumlahan_matrik;
Uses Wincrt;
Var
Matrik1,Matrik2, Hasil : Array[1..3,1..2] of Integer;
i,j : Integer;
Begin
ClrScr;
{ input matrik ke satu }
Writeln(' Elemen matrik satu');
For i := 1 to 3 Do
Begin
For j := 1 to 2 Do
Begin
Write('Elemen baris -',i,' Kolom -',j,'= ');
Readln(matrik1 [i,j]);
End;
End;
Contoh 2.2
{input matrik ke dua}
Writeln('input elemen matrik dua');
For i:= 1 to 3 Do
Begin
For j:= 1 to 2 Do
Begin
Write('Elemen baris -',i,' kolom -',j,'= ');
Readln(matrik2 [i,j]);
End;
End;
Contoh 2.2 cont…
{proses penjumlahan tiap elemen}
For i := 1 to 3 Do
Begin
For j:= 1 to 2 Do
Begin
Hasil[i,j] :=Matrik1 [i,j]+Matrik2[i,j];
End;
End;
Contoh 2.2 cont…
{proses cetak hasil}
For i:= 1 to 3 Do
Begin
For j:= 1 to 2 Do
Begin
Write(Hasil[i,j] :6);
End;
Writeln;
End;
Readln;
End.
Contoh 2.2 cont…

More Related Content

PPTX
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
PPT
Bab Iii Kondisi
PPTX
struktur pengulangan di pascal bagian 2
DOC
Percabangan - Logika dan Algoritma
PPTX
Algo temu 5 statement pemilihan
PDF
Algoritma dan Pemrograman C++ (Perulangan)
PDF
Modul pemrograman pascal toki smansasoo
PPTX
Topik 7 Pemilihan
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
Bab Iii Kondisi
struktur pengulangan di pascal bagian 2
Percabangan - Logika dan Algoritma
Algo temu 5 statement pemilihan
Algoritma dan Pemrograman C++ (Perulangan)
Modul pemrograman pascal toki smansasoo
Topik 7 Pemilihan

What's hot (20)

PPTX
Algo temu 4 struktur dasar algoritma
PPTX
9. algoritma perulangan pada java
PPTX
6. percabangan 2 kondisi
PDF
Teori bahasaautomata
PPTX
CFG dan PARSING - P 5 - Teknik Kompilasi
PPT
P 2 Konsep & Notasi Bahasa - Teknik Kompilasi
PPTX
SLIDE KE:5 NFA
PDF
Teori bahasa-dan-otomata
PDF
5 perulangan
PDF
Tugas kelompok
PPT
Algoritma 1 pertemuan 5
DOC
1999 turbo-pascal
PPTX
Algoritma pemrograman 7
PDF
Manipulasi string
PPTX
Pertemuan 4 - Struktur Kondisi IF
PPT
Teori bahasa dan automata2
PPTX
Pertemuan 3 - Konsep Dasar Pemrograman
PPTX
Konsepsentral - Materi 2 - TBO
PPTX
Algoritma pemrograman 14
PPTX
Algoritma pemrograman 8
Algo temu 4 struktur dasar algoritma
9. algoritma perulangan pada java
6. percabangan 2 kondisi
Teori bahasaautomata
CFG dan PARSING - P 5 - Teknik Kompilasi
P 2 Konsep & Notasi Bahasa - Teknik Kompilasi
SLIDE KE:5 NFA
Teori bahasa-dan-otomata
5 perulangan
Tugas kelompok
Algoritma 1 pertemuan 5
1999 turbo-pascal
Algoritma pemrograman 7
Manipulasi string
Pertemuan 4 - Struktur Kondisi IF
Teori bahasa dan automata2
Pertemuan 3 - Konsep Dasar Pemrograman
Konsepsentral - Materi 2 - TBO
Algoritma pemrograman 14
Algoritma pemrograman 8
Ad

Similar to Pascal (20)

PPT
Pemrograman dasar menggunakan pascal untuk pemula
PPTX
Struktur pemrograman pascal
PPTX
struktur pemrograman pascal - MATA KULIAH STRUKTUR DATA
PPTX
listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
PPTX
PDF
Pascal - Kontrol.txt - Notepad.pdf
RTF
Pascal buku
PDF
Pemrograman pascal bab_i
DOCX
Resume praktikum
PDF
Pascal 4-aturan-penulisan-pascal
PDF
Modul praktikum-algo-pemro
PDF
Alwin pascal-03
DOCX
Ayo membuat program pascal
PDF
Konsep dasar pemrograman pascal
PPT
Pascal01
PDF
Program Pascal
PDF
Pemrograman pascal bab_i
PDF
Makalah prosedur dan fungsi
Pemrograman dasar menggunakan pascal untuk pemula
Struktur pemrograman pascal
struktur pemrograman pascal - MATA KULIAH STRUKTUR DATA
listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
Pascal - Kontrol.txt - Notepad.pdf
Pascal buku
Pemrograman pascal bab_i
Resume praktikum
Pascal 4-aturan-penulisan-pascal
Modul praktikum-algo-pemro
Alwin pascal-03
Ayo membuat program pascal
Konsep dasar pemrograman pascal
Pascal01
Program Pascal
Pemrograman pascal bab_i
Makalah prosedur dan fungsi
Ad

Recently uploaded (20)

PDF
GUIDE BOOK DMH SCHOLARSHIP...............................
DOCX
Modul Ajar Deep Learning Prakarya Kerajinan Kelas 12 SMA Terbaru 2025
DOCX
Modul Ajar Pembelajaran Mendalam PJOK Kelas X Terbaru 2025
PPTX
SISTEM POLITIK DAN PEMERINTAHAN INDONESIA.pptx
PPTX
Pembelajaran-Mendalam-RTL-dan-Umpan-Baliknya.pptx
PPTX
Presentasi Al-Quran Hadits Kelompok XI.1
PDF
Digital Statecraft Menuju Indonesia Emas 2045: Diplomasi Digital, Ketahanan N...
PPTX
Patuh_Terhadap_Norma_PPKn_Kelas_7 oke.pptx
PPTX
1. Bhn Tayang,Kebijaka,Deep Learning,AI & Koding.pptx
DOCX
Modul Ajar Deep Learning PKN Kelas 10 SMA Terbaru 2025
PPTX
Modul 4 Asesmen-dalam-Pembelajaran-Mendalam.pptx
PPTX
Materi Besaran, Satuan, Pengukuran.pptx
PDF
System Requirement Enterprise Resource Planning Peternakan Ayam dan Daftar Ju...
PPTX
PPT Akidah Akhlak Kelompok 1 X-8 (4).pptx
DOC
RPP Deep Learning _ MGMP Wilayah 1 (1).doc
PDF
LK Modul 3 - Menentukan Pengalaman Belajar Herpina Indah Permata Sari (2).pdf
PPTX
! Keterampilan Digital dalam orgnasisasi.pptx
PDF
2021 KREATIFITAS DNA INOVASI DALAM BERWIRAUSAHA.pdf
PPTX
Perubahan Pengertian_Istilah _Pelatihan "Ketentuan TERBARU Pengadaan Pemerin...
PDF
Sosialisasi Menu DAK NF TA 2026 Promkeskom.pdf
GUIDE BOOK DMH SCHOLARSHIP...............................
Modul Ajar Deep Learning Prakarya Kerajinan Kelas 12 SMA Terbaru 2025
Modul Ajar Pembelajaran Mendalam PJOK Kelas X Terbaru 2025
SISTEM POLITIK DAN PEMERINTAHAN INDONESIA.pptx
Pembelajaran-Mendalam-RTL-dan-Umpan-Baliknya.pptx
Presentasi Al-Quran Hadits Kelompok XI.1
Digital Statecraft Menuju Indonesia Emas 2045: Diplomasi Digital, Ketahanan N...
Patuh_Terhadap_Norma_PPKn_Kelas_7 oke.pptx
1. Bhn Tayang,Kebijaka,Deep Learning,AI & Koding.pptx
Modul Ajar Deep Learning PKN Kelas 10 SMA Terbaru 2025
Modul 4 Asesmen-dalam-Pembelajaran-Mendalam.pptx
Materi Besaran, Satuan, Pengukuran.pptx
System Requirement Enterprise Resource Planning Peternakan Ayam dan Daftar Ju...
PPT Akidah Akhlak Kelompok 1 X-8 (4).pptx
RPP Deep Learning _ MGMP Wilayah 1 (1).doc
LK Modul 3 - Menentukan Pengalaman Belajar Herpina Indah Permata Sari (2).pdf
! Keterampilan Digital dalam orgnasisasi.pptx
2021 KREATIFITAS DNA INOVASI DALAM BERWIRAUSAHA.pdf
Perubahan Pengertian_Istilah _Pelatihan "Ketentuan TERBARU Pengadaan Pemerin...
Sosialisasi Menu DAK NF TA 2026 Promkeskom.pdf

Pascal

  • 2. PERULANGAN ( LOOPING ) Di dalam bahasa Pascal, dikenal tiga macam perulangan, yaitu dengan menggunakan pernyataan For, While-Do, dan Repeat…Until. 1. Struktur Perulangan For Perulangan dengan pernyataan For digunakan untuk mengulang pernyataan atau satu blok pernyataan berulang kali sejumlah yang ditentukan. Perulangan dengan pernyataan For dapat berbentuk perulangan positif, perulangan negatif dan perulangan tersarang.
  • 3. LOOPING ( FOR ) • Perulangan positif. For variabel-kontrol:=nilai awal To nilai akhir Do pernyataan Contoh Var I:Integer; Begin For I:= 1 to 5 Do Writeln(‘Pascal’); End.
  • 4. LOOPING ( FOR ) • Perulangan negatif For variabel-kontrol:=nilai awal DownTo nilai akhir Do penyataan Contoh Var I:integer; Begin For I:=5 downto 1 do Begin Writeln(I); End; End.
  • 5. LOOPING ( FOR ) • Perulangan tersarang Perulangan tersarang adalah perulangan yang berbeda di dalam perulangan yang lainnya. Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian perulangan yang lebih luar baru akan akan bertambah, mengerjakan perulangan yang lebh dalam lagi mulai dari nilai awalnya dan seterusnya.
  • 6. Contoh Var I,J:Integer; Begin For I:=1 to 5 Do Begin For j:=1 to 3 Do Begin Write(I:8,J:3); End; Writeln; End; • End. Bila program dijakankan akan menghasilkan: • 1 1 1 2 1 3 • 2 1 2 2 2 3 • 3 1 3 2 3 3 • 4 1 4 2 4 3 • 5 1 5 2 5 3
  • 7. LOOPING ( While ... Do ) • Struktur Perulangan While-Do Perulangan ini menggunakan pernyataan While—Do. Pernyataan While—Do digunakan untuk melakukan proses perulangan suatu pernyataan atau blok pernyataan terus- menerus selama kondisi ungkapan logika pada While masih bernilai logika benar. BU : While kondisi ungkapan Do Pernyataan
  • 9. LOOPING ( Repeat ... Until ) • Struktur Repeat...Until Struktur Repeat…Until digunakan untuk mengulang pernyataan-pernyataan atau blok pernyataan sampai kondisi yang diseleksi di Until terpenuhi. Bentuk mumnya adalah: Repeat pernyataan Until
  • 11. Penyeleksian Kondisi • Dengan menyeleksi suatu kondisi, program dapat menentukan tindakan apa yang harus dikerjakan, bergantung dari hasil kondisi yang diseleksi tersebut. Untuk menyeleksi suatu kondisi, di dalam bahasa Pascal dapat dipergunakan pernyataan IF dan CASE.
  • 12. Penyeleksian Kondisi ( IF ) • Pernyataan IF Struktur pernyataan IF dapat berupa If—Then atau If—Then—Else dengan bentuk umum: If ungkapan Then pernyataan • Ungkapan adalah kondisi yang akan diseleksi oleh pernyataan If. Bila kondisi yang diseleksi terpernuhi, maka pernyataan yang mengikuti Then akan diproses. Sebaliknya, bila kondisi tidak terpenuhi, maka yang akan diproses adalah pernyataan berikutnya
  • 13. Contoh Var Nilai:ral; Ket : string[11]; Begin Ket:’Tidak Lulus’; Write(‘Nilai Ujian = ‘); Readln(Nilai); {Penyeleksian kondisi} If Nilai>60 Then Ket:=’Lulus’; Writeln(Ket); End.
  • 14. Penyeleksian Kondisi ( IF ) If kondisi Then pernyataan1; Else pernyataan2; • Pernyataan1 akan diproses apabila kondisi benarn(terpenuhi) sedang pernyataan2 akan diproses apabila kondisi tidak terpenuhi.
  • 15. Contoh Var Nilai:Real; Begin Writeln(‘Nilai Ujian = ‘); Readln(Nilai); If Nilai>60 Then Writeln(‘Lulus’); Else Writeln(‘Tidak Lulus’); End.
  • 16. Penyeleksian Kondisi ( Case ) • Pernyataan Case Pernyataan Case dapat berbentuk struktur Case—Of atau Case—Of…. Else. Struktur Case—Of mempunyai suatu ungkapan logika yang disebut dengan selector dan sejumlah pernyataan yang diawali dengan suatu label permasalahan yang mempunyai tipe sama dengan selector. Pernyataan yang mempunyai label permasalahan yang bernilai sama dengan nilai selector akan diproses sedang pernyataan yang lainnya tidak.
  • 17. Penyeleksian Kondisi ( Case ) • Bentuk dari struktor Case—Of adalah: Case ungkapan Of daftar case-label1:pernyataan1; daftar case-label2:pernyataan2; daftar case-label3:pernyataan3; . daftar case-labeln:pernyataann; End; • Daftar case label (label permasalahan) dapat berupa konstanta, atau range (himpunan) dari konstanta yang bukan bertipe real.
  • 18. Contoh Var Nilai:Char; Begin Writeln(‘Nilai huruf yang didapat = ‘);Readln(Nilai); Case Nilai of ‘A’:Writeln(‘Sangat Baik’); ‘B’:writeln(‘Baik’); ‘C’:Writeln(‘Cukup’); ‘D’:Writeln(‘Kurang’); ‘E’:Writeln(‘Gagal’); End; End.
  • 19. Penyeleksian Kondisi ( Case ) • Struktur Case—Of…Else merupakan pengembangan dari struktur Case—Of dan juga merupakan pengembangan dari standar Pascal. Pada struktur Case—Of bila tidak ada kondisi yang terpenuhi berarti tidak ada pernyataan di lingkungan Case—Of yang diproses. Dengan struktur Case—Of…Else, bila Tidak ada kondisi yang terpenuhi, maka pernyataan yang akan diproses di dalam lingkungan Case—Of adalah pernyataan yang ada di Else.
  • 20. Contoh Var Bersih,Beli,potong:Integer; Begin Writeln(‘Total Pembelian = ‘); Readln(beli); Case Beli of 0..1000:potong:=100; 1001..5000:potong:=200; Else potong:=500; End; Bersih:=beli-ptong; Writeln(‘Potongan = ‘, potongan); Writeln(‘Jumlah Bersih = ‘, Bersih); End.
  • 21. Procedure • Prosecure adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian). Prosedur diawali dengan kata cadangan Procedure di dalam bagian deklarasi prosedur. Prosedur dipanggil dan digunakan di dalam blok program yang lainnya dengan menyebutkan judul prosedurnya.
  • 22. Procedure • Prosedur banyak digunakan pada program yang terstruktur, karena: 1. Merupakan penerapan konsep program modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur. 2. Untuk hal-hal yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waltu bila diperlukan.
  • 23. Contoh prosedur tanpa acuan Procedure Hitung; Var x,y:real; Begin Writeln(‘Nilai x: ‘); Readln(x); Y:=x*x; Writeln(‘Nilai Y= ‘, y:6;2); End; Begin Hitung; End.
  • 24. Contoh prosedur secara acuan Procedure Hitung(var a,b,c); Begin C:=a+b; Writeln(c); End; Var X,y,z:integer; Begin X:=2;Y;=3; Hitung(x,y,z); End.
  • 25. Function • Fungsi hampir sama dengan prosedur, hanya fungsi harus dideklarasikan dengan tipenya. Tipe deklarasi ini menunjukkan tipe hasil dari fungsi. Tipe tersebut ditulis pada akhir deklarasi fungsi yang didahului dengn titik koma, sebagai berikut. Function namafungsi(daftar_parameter):type;
  • 26. Contoh Function Hitung(Var A,B : integer): integer; Begin Hitung := A + B; End; Var X,Y : integer; Begin Write(‘Nilai X ? ‘); Readln(X); Write(‘Nilai Y ? ‘); Readln(Y); Writeln; Writeln(X,’ + ‘,Y,’ =‘,Hitung(X,Y)); End.
  • 27. Perbedaan fungsi dengan prosedur 1. Pada fungsi, nilai yang dikirimkan balik terdapat pada nama fungsinya (kalau pada prosedur pada parameter yang dikirimkan secara acuan). 2. Karena nilai balik berada di nama fungsi tersebut, maka fungsi tersebut dapat langsung digunakan untuk dicetak hasilnya Atau nilai fungsi tersebut dapat juga langsung dipindahkan ke pengenal variabel yang lainnya
  • 28. Rekursif • Suatu fungsi atau prosedur dalam bahasa Pascal dapat bersifat rekursif. Artinya, fungsi atau prosedur tersebut dapat memanggil dirinya sendiri. • Berikut ini sebuah contoh fungsi dan prosedur yang rekursif.
  • 29. function faktorial (nilai : integer) : integer; begin if nilai <= 0 then faktorial := 1; else faktorial := nilai * faktorial (nilai-1) end; Var N : integer; Begin Write(‘Berapa faktorial ? ‘); Readln(N); Writeln(N,’ faktorial = ‘,faktorial(N):9:0); End.
  • 30. Function fibonacci ( n : integer ) : integer; Begin If n = 0 then fibonacci := 0 Else If n := 1 then fibonacci := 1 Else fibonacci := fibonacci (n-1) + fibonacci (n-2); End; Var N : integer; Begin Write(‘Berapa banyak ? ‘); Readln(N); fibonacci(n); End.
  • 31. Procedure reverse ( num : integer ); Begin If num < 10 then write(num) Else begin Write(num mod 10); Reverse(num div 10); End; End; Var N : integer; Begin Write(‘Berapa nilai ? ‘); Readln(N); reverse(n); End.
  • 32. Array ( Larik )Array ( Larik ) Array Satu Dimensi Array Dua Dimensi
  • 33. Array Satu DimensiArray Satu Dimensi Array adalah sekumpulan data yang bertipe sama, yang anggota-anggotanya dapat diakses berdasarkan nomor indeks. Misalnya ada 26 huruf, kita sebut saja array Abjad, adalah sekumpulan 26 buah karakter yang berisi nama- nama abjad latin. Anggota pertama adalah ‘A’, anggota kedua adalah ‘B’ dan seterusnya hingga anggota ke 26 adalah ‘Z’.
  • 34. • Dalam notasi algoritma kita tuliskan : Abjad : array [1..26] of character Pemberian nilainya bisa dilakukan dengan cara, pertama pengisian satu-satu berdasarkan nomor indeks : Abjad [1]  ‘A’ Abjad [2]  ‘B’ dst sampai Abjad [26]  ‘Z’ • Dalam notasi algoritma , indeks array dimulai dari 1, artinya jika kita punya array dengan 26 anggota, indeksnya mulai dari 1,2,3…sampai 26.
  • 35. • Berikut penulisan array dengan menggunakan turbo Pascal: Abjad : array [1..26] of char; Contoh pemberian nilai untuk array diatas dengan menggunakan bahasa Pascal adalah : Abjad [1] := ‘A’; Abjad [2] := ‘B’ dst sampai Abjad [26] := ‘Z’
  • 36. Program Nama_array; Uses winrt; Type nameType = String[50]; ageType = 0..150; { age range: from 0 to 150 } Var name : nameType; age : ageType; Begin Write('Enter your name: '); Readln(name); Write('Enter your age: '); Readln(age); Writeln; Writeln('Your name:', name); Writeln('Your age :', age); Readln; End. Contoh 1.1
  • 37. Program P002; uses wincrt; var abjad : array [1..50] of char; i,maks : integer; begin clrscr; write ('Masukan jumlah data karakter : '); readln(maks); for i:=1 to maks do begin write ('Masukan karakter ke ',i,' : '); readln(abjad[i]); end; write ('Karakter yang dinput : '); for i:=1 to maks do begin write (abjad[i],’ ‘); end; readln; end. Contoh 1.2
  • 38. Program P003; uses wincrt; var angka:array [1..50] of integer; i,maks:integer; begin clrscr; write ('Masukan jumlah data : '); readln(maks); for i:=1 to maks do begin write ('Masukan angka ke ',i,' : '); readln(angka[i]); end; write ('Angka yang dinput : '); for i:=1 to maks do begin write(angka[i]); end; readln; end. Contoh 1.3
  • 39. Program Contoh_Deklarasi_Array_Beragam; Uses winCrt; Var NPM :array[1..20] of string[10]; Nama :array[1..20] of string[25]; Nilai : array[ 1. .20] of real; Umur : array[1 . .20] of byte; banyak,i : integer; Begin ClrScr; Write('Isi berapa data array yang diperlukan :'); Readln(banyak); For i := 1 to banyak Do Begin Write('NPM =');Readln(NPM[i]); Write('Nama =');readln(Nama[i]); Write('Nilai=');readln(Nilai[i]); Write('Umur =');readln(Umur[i]); End; {cetak varibel array} Writeln('NPM NAMA NILAI UMUR '); For i:= 1 to banyak Do Begin Writeln(Npm[i]:1 0,Nama[i] :25,Nilai[i] :3:2,' ',Umur[i] :3); End; Readln; End. Contoh 1.4
  • 40. Studi Kasus : Buat sebuah program perhitungan nilai akhir 5 orang mahasiswa ? Input : nama, tugas, quiz, uts, dan uas Proses : nilai = 10%*tugas + 20%*quiz + 30%*uts+ 40%*uas. Output : nama, dan nilai ditampilan menurut index
  • 41. Program Studi_Kasus; Uses wincrt; Var Nama:array[1..5]of string; I,Tugas,Quiz,UTS,UAS:integer; Nilai:array[1..5]of real; Begin for I:=1 to 5 do begin Clrscr; write('Masukan Nama : ');readln(Nama[I]); write('Masukan Tugas : ');readln(Tugas); write('Masukan Quis : ');readln(Quiz); write('Masukan UTS : ');readln(UTS); write('Masukan UAS : ');readln(UAS); Nilai[I]:=0.1*Tugas+0.2*Quiz+0.3*UTS+0.4*UAS; end; Clrscr; for I:=1 to 5 do writeln('Nama : ',Nama[I],' mendapat nilai :',nilai[i] :5:2); readln; End. Jawaban.
  • 42. Array Dua Dimensi Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array). Array 2 dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik.
  • 43. Let us have the 2 dimensional array defined first. Think of a grid where each box is located by using horizontal and vertical coordinates just in the example below: 1 2 3 4 5 2 3 3,4 4 5 5,3 An example of a 5 by 5 2D array illustrated on a grid Contoh Bentuk Tampilan
  • 44. Var my2DArray : Array[1..3][1..5] of Byte; Begin my2DArray[2][4] := 10; End. 1 2 3 4 5 2 10 3 Having the vertical axis as the 1st dimension and the horizontal one as the 2nd dimension, the above example is illustrated as follows:
  • 45. Program Deklarasi_Array_Dua_Dimensi; Uses Wincrt; Var Tabel : Array [1..3, 1..2] of Integer; i,j : Integer; Begin ClrScr; Tabel [1,1] :=1; Tabel [1,2] :=2; Tabel [2,1] :=3; Tabel [2,2] :=4; Tabel [3,1] :=5; Tabel [3,2] :=6; For I := 1 to 3 Do Begin For J:= 1 to 2 Do Begin Writeln ('Elemen ',i,',',j ,'= ',tabel [i,j] ); End; End; End. Contoh 2.1
  • 46. Program penjumlahan_matrik; Uses Wincrt; Var Matrik1,Matrik2, Hasil : Array[1..3,1..2] of Integer; i,j : Integer; Begin ClrScr; { input matrik ke satu } Writeln(' Elemen matrik satu'); For i := 1 to 3 Do Begin For j := 1 to 2 Do Begin Write('Elemen baris -',i,' Kolom -',j,'= '); Readln(matrik1 [i,j]); End; End; Contoh 2.2
  • 47. {input matrik ke dua} Writeln('input elemen matrik dua'); For i:= 1 to 3 Do Begin For j:= 1 to 2 Do Begin Write('Elemen baris -',i,' kolom -',j,'= '); Readln(matrik2 [i,j]); End; End; Contoh 2.2 cont…
  • 48. {proses penjumlahan tiap elemen} For i := 1 to 3 Do Begin For j:= 1 to 2 Do Begin Hasil[i,j] :=Matrik1 [i,j]+Matrik2[i,j]; End; End; Contoh 2.2 cont…
  • 49. {proses cetak hasil} For i:= 1 to 3 Do Begin For j:= 1 to 2 Do Begin Write(Hasil[i,j] :6); End; Writeln; End; Readln; End. Contoh 2.2 cont…