Sabtu, 26 Maret 2016

Nachrul hasyat _tugas2

TIPE DATA DAN NAMA

Pendahuluan
Tipe adalah pola representasi data dalam komputer
Tipe data dapat dikelompokkan menjadi dua macam:
  1) Tipe dasar àtipe yang dapat langsung dipakai

  2) Tipe bentukan àhasil bentukan dari tipe dasar

Tipe Dasar
Bilangan logika
Bilangan bulat
Bilangan riil
Karakter
String

Bilangan Logika
¢Nama TipeBoolean
¢Domain Nilai:
  > benar (true): biasanya dinyatakan dengan angka 1
  > salah (false):biasanya dinyatakan dengan angka 0
¢Konstantatrue dan false
¢Operasi àbiasanya disebut sebagai operasi logika atau operasi boolean. Operator logika yangumum digunakannotandor dan xor
¢Tabel kebenaran (truth table):
Tipe Data dan Nama Algoritma dan Pemrograman-01


Bilangan Bulat
Nama TipeInteger
Domain Nilaimisal pada kompilator Turbo Pascal, dapat direpresentasikan ke dalam limamacam tipe:
Tipe Data dan Nama Algoritma dan Pemrograman-02


¢Konstantakonstanta untuk nilai bertipe bilangan bulat harus ditulis tanpa mengandung titikdesimal.
  Contoh : 15, -7, 0, 677
¢Operasi:
1) Operasi Aritmatikaoperasi aritmatika terhadap bilangan bulat dengan sembarang operatoraritmatika menghasilkan nilai yang bertipe bilangan bulat juga.
  Macam-macam operator aritmatika :
  + - * div mod
2) Operasi Perbandingan operasi perbandingan terhadap bilangan bulat dengan salah satuoperator relasional menghasilkan nilai boolean (true atau false).
  Macam-macam operator perbandingan :
  <  ≤  >  ≥  =  ≠


Bilangan Riil
Nama TipeReal
Domain Nilaimisal pada kompilator Turbo Pascal, dapat direpresentasikan ke dalam empatmacam tipe:
Tipe Data dan Nama Algoritma dan Pemrograman-03

¢Konstanta : untuk nilai bertipe bilangan riil harus ditulis dengan mengandung titikdesimal.
  Contoh : 0.15; -7.566+E9; 0.0; 677.1
¢Operasi :
1) Operasi Aritmatikaoperasi aritmatika terhadap bilangan riil dengan sembarangoperator aritmatika menghasilkan nilai yang bertipe bilangan riil juga.
  Macam-macam operator aritmatika :
  + - * div mod
2) Operasi Perbandingan operasi perbandingan terhadap bilangan riil dengan salah satuoperator relasional menghasilkan nilai boolean (true atau false).
  Macam-macam operator perbandingan :
  <  ≤  >  ≥  ≠


Karakter
¢Nama Tipe : Char
¢Domain Nilai : adalah semua huruf di dalam alfabet (‘a’..’z’, ‘A’..’Z’), angka desimal (0..9), tandabaca (‘.’, ‘:’, ‘!’, ‘?’, dan lain-lain), operator aritmetik (‘+’, ‘-‘, ‘*’, ‘/’), dan karakter-karakterkhusus seperti (‘$’, ‘#’, ‘@’, ‘^’, ‘~’, dan lain-lain). Daftar karakter yang lengkap dapat dilihatdi dalam buku-buku yang memuat tabel ASCII.
¢Konstanta : konstanta untuk nilai bertipe karakter harus diapit oleh tanda petik tunggal.
  Contoh : ‘A’; ‘8’; ‘.’; ‘$’
¢Operasi : operasi perbandingan terhadap karakter dengan salah satu operator relasionalmenghasilkan nilai boolean (true atau false).
  Macam-macam operator perbandingan :

  <  >    =  

String
¢Nama Tipe : String
¢Domain Nilai : adalah deretan karakter yang didefinisikan pada ranah karakter.
¢Konstanta : konstanta untuk nilai bertipe string harus diapit oleh tanda petik tunggal.
  Contoh : ‘Bangkalan’; ‘ABCDE’; ‘1234’; ‘y’
¢String kosong (null) adalah string yang panjangnya noldan dilambangkan dengan
  ‘  ’ è (string kosong adalah sama dengan karakter kosong)
¢Operasi :
1) Operasi Penyambungan
  Operator : +
  Contoh : ‘Teknik’+‘Informatika’ = ‘TeknikInformatika
2) Operasi Perbandingan
  Operasi perbandingan terhadap string dengan salah satu operator     relasional menghasilkannilai boolean (true atau false).
  Macam-macam operator perbandingan :
  <  ≤  >  ≥  =  ≠


Tipe bentukan
Tipe bentukan adalah tipe yang dibentuk (dan diberi namadari satu atau lebih tipe dasar.Operasi terhadap komponen bertipe dasar dilakukan seperti yang didefinisikan pada tipedasarOperasi terhadap keseluruhan tipe mungkin didefinisikan atau tidak.
Dalam notasi algoritmasebuah tipe bentukan berupa komposisi elemen dituliskan dengannotasi
Tipe Data dan Nama Algoritma dan Pemrograman-04

Contoh Tipe Bentukan
Contoh : type Titik
  { type titik menyatakan absis dan ordinat real pada sumbu kartesian }
  type Titik : record <x:real,y:real>
  Jika dideklarasikan :
  P : Titik { artinya : P adalah sebuah Titik }
  Cara mengacu/mengakses nilai elemen yang tersimpan dalam P adalah :
  P.x { menghasilkan absis bertipe real }
  P.y { menghasilkan ordinat bertipe real }
¢Domain nilai : <realreal>
¢Konstanta : < 1.3 , 2.2 > ; < 0.01 , 100.01 >
¢Operator :
  > Operator terhadap Titik harus dibuat
  > Operasi real terhadap P.x dan P.y

Contoh lain : type Jam { type Jam menyatakan representasi jam dalam notasi hh:mm:ssdengan hh bernilai [0..23], mm bernilai [0..59] dan ss bernilai [0..59] }
  type Jam : record
  <hh : integer, {0..23} { jam }
     mm : integer, {0..59} { menit }
     ss : integer {0..59} { detik }>
  Jika dideklarasikan :
  J : Jam { artinya : J adalah sebuah Jam }
  Cara mengacu/mengakses nilai elemen yang tersimpan dalam J adalah :
  J.hh { menghasilkan bagian jam bertipe integer {0..23} }
  J.Mm { menghasilkan bagian menit bertipe integer {0..59} }
  J.ss { menghasilkan bagian detik bertipe integer {0..59} }
¢Domain nilai : <integerintegerinteger>
¢Konstanta : < 1, 0, 6 > ; < 17, 10, 31 >
¢Operator :
  > Operator terhadap Jam harus dibuat
  > Operasi integer terhadap J.hh, J.mm dan J.ss


Sekilas tentang ...
Komputerpada umumnya mengenal 3 jenis datayaituNumerikKarakterdan Logika
Dan Java mengenal 2 jenis tipe data:
Tipe data primitif è tipe data yang diadopsi dari tipe data klasik (diadopsi dariberbagai bahasa pemrograman pendahulu Java), seperti: Pascal dan C++
Tipe data objek è tipe data berbentuk class yang merupakan ciri khas daripemrograman PBO, yg disediakan dengan tujuan utk mendukung operasional tipedata primitif


Adapun beberapa tipe data yg sering digunakan dalam Java:
Tipe Data dan Nama Algoritma dan Pemrograman-05



Java juga mengengal istilah Literal..
adalah nilai variabel/attribute atau nilai konstanta atau nilai objek data.
tiga besaran literal dalam java yaitu angkakarakterdan string. 
angka terdiri dari byte, short, int, long, float, double, dan boolean (dianggap angka     true = 1 atau false = 0). 

Tabel jangkauan dan ukuran
dari semua tipe data dalam Java
Tipe Data dan Nama Algoritma dan Pemrograman-06


Nama
Peubah (variable)
Konstanta (constant)
Tipe bentukan
Nama Fungsi
Nama Prosedur

Nama Peubah
Peubah adalah tempat penyimpan data di dalam memori yang isinya dapat diubah
Contoh :
Tipe Data dan Nama Algoritma dan Pemrograman-07


Nama Konstanta
Konstanta adalah tempat penyimpan data di dalam memori yang isinya tetap dantidak dapat diubah
Contoh :
Tipe Data dan Nama Algoritma dan Pemrograman-08

Nama tipe bentukan
Nama tipe bentukan diberikan oleh pembuat program
Contoh :
Tipe Data dan Nama Algoritma dan Pemrograman-09
Nama Fungsi dan Prosedur
Konversi_Real_Integer adalah nama fungsi.
Tipe Data dan Nama Algoritma dan Pemrograman-10
¢Tukar adalah nama prosedur.
Tipe Data dan Nama Algoritma dan Pemrograman-11

Rangkuman
Tipe data dapat dikelompokkan menjadi dua macamyaitu tipe dasar (bilangan logika,bilangan bulatbilangan riilkarakter dan string) dan tipe bentukan
Ada lima macam nama yang digunakan untuk mengidentifikasikan dalam algoritmayaituPeubah (variable), Konstanta (constant), Tipe bentukanNama Fungsi dan NamaProsedur




KONSTANTA 
Adalah suatu identitas memori untuk menampung nilai atau informasi yang bersifat tetap dan tidak dapat diubah ubah.


Contoh :
Void main(){ 
const a = 3.14; 
cout << “a= “<
getch(); 
}

Dalam program demo dibawah ini akan memberikan tambahan penjelasan tentang implementasi tipe data, variabel dan konstanta.

/**-----------------------------------------------------------
Program.cpp : inisialisasi variabel dengan nilai ditentukan
----------------------------------------------------------**/
#include <iostream.h>
#include <conio.h>
void main(){
int a = 100;
int b = 200;
cout<< "A + B = " <<a+b;
getch();
}

maka hasil eksekusinya adalah sebagai berikut :
A + B = 300

Berikutnya memberikan inisial terhadap variabel dengan suatu ungkapan juga diperkenankan, contoh :
float duaphi = 2* 3.14;

jadi nilai dari variabel tersebut diatas adalah hasil kali 2 dari phi

contoh program :

maka akan menampilkan Isi duaphi = 6.28

Pembuatan variabel tidak selalu di bagian awal program, tapi boleh dimana saja sebelum dipanggil atau dioperasikan.

Contoh Program :

Konstanta
Berbeda dengan variabel, konstanta merupakan wadah yang dapat menyimpan nilai tetap selama eksekusi program. Untuk membedakan dengan variabel maka nama konstanta harus menggunakan huruf capital. C++ menyediakan 2 cara untuk membuat konstanta:

cara 1
Menggunakan keyword const
Contoh :

const float PHI = 3.14;

cara 2
Menggunakan #define
Contoh :
#define PHI 3.14

Keuntungan menggunakan #define apabila dibandingkan dengan const adalah kecepatan kompilasi, karena sebelum kompilasi dilaksanakan, kompiler pertama kali mencari symbol #define (oleh sebab itu mengapa # dikatakan prepocessor directive) dan mengganti semua Phi dengan nilai 3.14.

Contoh Program:

/*----------------------------------------------------
* Program.cpp :
* contoh program untuk mencari
* luas dan keliling lingkaran
* ----------------------------------------------------*/
#include <iostream.h>
#include <conio.h>
void main() {
clrscr();
const float PHI = 3.13;
float jari2, luas, keliling;
cout << "Masukkan nilai Jari-jari : "; cin >> jari2;
luas = 0.5 * PHI * jari2 * jari2;
keliling = 2 * PHI * jari2;
cout << "Luas Lingkaran : " << luas << endl;
cout << "Keliling Lingkaran : " << keliling;
getch();
}
Tipe Data
Borland C++ memiliki 7 tipe data dasar yang dapat digunakan, untuk lebih lengkapnya perhatikan tabel berikut:






Untuk mengetahui ukuran memori dari tipe data, anda dapat menggunakan fungsisizeof() seperti program di bawah ini:

/*----------------------------------------------------
* Program.cpp :
* program untuk menentukan ukuran memori dari
* tipe data
*----------------------------------------------------*/
#include <iostream.h>
#include <conio.h>
void main() {
clrscr();
cout << "Ukuran char : " << sizeof(char) << endl;
cout << "Ukuran int : " << sizeof(int) << endl;
cout << "Ukuran long : " << sizeof(long) << endl;
cout << "Ukuran float : " << sizeof(float) << endl;
cout << "Ukuran double : " << sizeof(double) << endl;
cout << "Ukuran long double : " << sizeof(long double) << endl;
getch();
}
Sedangkan ulasan mengenai jangkauan tipe data integer selengkapnya ada disini :

Jangkauan tipe data Integer dan unsign integer(klik)

Tipe data yang berhubungan dengan bilangan bulat adalah char, int, long. Sedangkan lainnya berhubungan dengan bilangan pecahan.

Terdapat juga beberapa tipe data tambahan yang dimiliki oleh Borland C++. Tipe data tambahan ini diberi kata unsigned di depan nama tipe data.

Unsigned digunkana bila data yang digunakan hanya data yang positif saja. Berikut beberapa tipe data tambahan yang dapat Anda gunkana, diantaranya adalah:




Contoh Program:


/*----------------------------------------------------
* Program.cpp :
* mendeklarasikan beberapa variabel dengan tipe
* data berbeda
*----------------------------------------------------*/
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
void main() {
clrscr();
char kar1 = 66; char kar2 = 'A';
char kar3[30] = "Stmik El-Rahma Yogyakarta";
cout << "Isi kar1 = " << kar1 << '\n';
cout << "Isi kar2 = " << kar2 << '\n';
cout << "Isi kar3 = " << kar3 << '\n';
int bil_int1 = 32767;
int bil_int2 = 32768;
int bil_int3 = -1;
unsigned int bil_int4 = -1;
cout << "Isi bil_int1 = " << bil_int1 << '\n';
cout << "Isi bil_int2 = " << bil_int2 << '\n';
cout << "Isi bil_int3 = " << bil_int3 << '\n';
cout << "Isi bil_int4 = " << bil_int4 << '\n';
float bil_f1 = 1.23e2; float bil_f2 = 123.0;
cout << "Isi bil_f1 = " << bil_f1 << '\n';
cout << "Isi bil_f2 = " << bil_f2 << '\n';
float bil_f3 = 56.0123456789123456789123456789;
double bil_d1 = 56.0123456789123456789123456789;
long double bil_ld = 56.0123456789123456789123456789;
cout << setprecision(20); // mengatur presisi tampilan
cout << "Isi bil_f3 = " << bil_f3 << '\n';
cout << "Isi bil_d1 = " << bil_d1 << '\n';
cout << "Isi bil_ld = " << bil_ld << '\n';
getch();



VARIABEL
Variabel adalah suatu wadah yang digunakan untuk menampung nilai atau informasi. Nilai variabel dapat berubah-ubah ketika program dijalankan.
dengan kata lain variabel adalah suatu memori dengan identitas tertentu untuk menampung nilai atau informasi baik yang tetap maupun yang berubah – ubah.

Mendeklarasikan Variabel
Prosedur penerapan variabel dalam program utama haruslah dideklarasikan terlebih dahulu, pengertian deklarasi dalam pemrograman c++ adalah melakukan inisialisasi variabel dengan nama dan tipe data yang digunakan, sehingga nantinya dapat dikenali oleh program. Adapun caranya adalah sebagai berikut :

Namun adakalanya dalam mendeklarasikan sebuah variabel langsung disertai dengan nilainya dan adakalanya yang tidak, sebagai contoh :
int jumlah;
jumlah = 10;
Dua pernyataan seperti diatas sebenarnya dapat disingkat melalui pendefinisian yang disertai penugasan nilai, sebagi berikut :
int jumlah = 10;
Contoh :
Void main(){ 
Int a=2; 
cout << “a= “<
getch();

Algoritma & Pemrograman : FUNGSI

Blok fungsi hampir sama dengan blok prosedur, hanya fungsi harus dideklarasikan dengan tipenya. Tipe deklarasi ini menunjukkan tipe hasil dari fungsi.

Bentuk umum :
FUNCTION identifier (daftar parameter) : type ;
Blok fungsi juga diawali dengan kata cadangan Begin dan di akhiri dengan kata cadangan End dan titik koma.

Perbedaan fungsi dengan prosedur adalah :
- Pada fungsi, nilai yang dikirimkan balik terdapat pada nama fungsinya ( kalau pada prosedur pada parameter yang dikirimkan secara acuan).
- 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 variable yang lainnya.
- Pada prosedur, nama prosedur tidak dapat digunakan lagsung, yang dapat langsung digunakan adalah parameternya yang mengandung nilai balik.

1.1 Fungsi Tanpa Parameter
Fungsi yang tanpa parameter berarti nilai balik yang akan dihasilkan merupakan nilai yang sudah pasti. Karena tidak menggunakan parameter, maka hasil fungsi tersebut tidak dapat diatur dari modul yang menggunakannya, karena tidak ada parameter yang dikirimkan. Fungsi tanpa parameter jarang dipergunakan.
Contoh program :
Type Huruf = string [6] ;
Function Garis : Huruf ;
Begin
Garis : = ‘======’ ;
End ;
Begin
Writeln (Garis) ; Writeln (‘Pascal’) ; Writeln (Garis) ;
End.

Output program :
======
Pascal
======
Keterangan program :
Fungsi “Garis” hanya menghasilkan nilai yang sudah pasti yaitu : “======”.

1.2 Parameter Dalam Fungsi
Parameter dalam fungsi dapat dikirimkan secara nilai atau secara acuan.
Contoh penulisan parameter dengan pengiriman secara nilai :
Function Hitung (A, B : integer ) : integer ;
Contoh program :
Function Terbesar(X, Y : real ) : real ;
Begin
If X > Y Then
Terbesar : = X
Else
Terbesar : = Y ;
End ;
Var
Nilai1 , Nilai2 : real ;
Begin
Write (‘Nilai pertama =’ ) ; readln (Nilai1) ;
Write (‘Nilai kedua = ‘ ) ; readln (Nilai2) ;
Writeln (‘Nilai terbesar adalah =’, Terbesar (Nilai1, Nilai2) : 9 : 3 ) ;
End.
Output program :
Nilai pertama = 12.356
Nilai kedua = 55.182
Nilai terbesar adalah = 55.182
secara acuan adalah dengan menambahkan kata cadangan var.
Contoh penulisan :
Function Hitung ( Var A, B : integer ) : integer ;
Pengiriman parameter secara acuan akan mengakibatkan perubahan nilai parameter di fungsi juga merubah nilai parameter di modul yang mengirimkannya. Fungsi yang menggunakan pengiriman parameter secara acuan ini mirip dengan prosedur, yaitu parameter yang dikirmkan secara acuan tersebut dapat di manfaatkan sebagai hasil balik.

1.3 Fungsi Pangkat
Pascal tidak menyediakan fungsi untuk perpangkatan tinggi, yang ada hanya fungsi standar Sqr, yaitu pemngkatan kuadrat saja. Bila akan melakukan perpangkatan lebih dari pangkat dua, maka harus dibuat program tersendiri.

1.4 Fungsi Memanggil Dirinya Sendiri
Proses fungsi memanggil dirinya sendiri juga merupakan proses recursion.
Contoh program :
Function Faktorial (Nilai : integer ) : real ;
Begin
If Nilai = 0 Then
Faktorial : = 1
Else
Faktorial : = Nilai * Faktorial (Nilai – 1 ) ;
End ;
Var
N : integer ;
Begin
Write (‘Berapa factorial ?’) ;
Readln (N) ;
Writeln (N, ‘faktorial =’, Faktorial(N) : 9 : 0 ) ;
End.
Output program :
Berapa factorial ? 5
5 faktorial = bbbbbb120
ket : b = blank

1.5 Fungsi Memanggil Fungsi Yang Lain
Fungsi yang di panggil letaknya harus berada di atas fungsi yang memanggilnya.
Contoh program :
Function Fungsi2 (Y : integer) : integer ;
Begin
Fungsi2 : = Y * 2 ;
End ;
Function Fungsi1 ( X : integer ) : integer ;
Begin
Fungsi1 : = Fungsi2 (X) + 5 ;
End ;
Begin
Writeln (Fungsi1(3)) ;
End.

1.6 Acuan Forward Pada Fungsi
Fungsi dapat dideklarasikan terpisah dengan bloknya. Deklarasi fungsi yang terpisah dengan blok fungsinya dipergunakan kata cadangan Forward dan blok fungsinya juga di deklarasikan ulang, tetapi tidak perlu menyebutkan parameternya.

1.7 Fungsi Tersarang
Merupakan fungsi yang letaknya berada di dalam fungsi yang lainnya.
Fungsi2 ( Y : integer ) : integer ;
Begin
Fungsi2 : = Y * 2 ;
End ;
Begin
Fungsi1 : = Fungsi2 (X) + 5 ;
End ;
Begin
Writeln (Fungsi1 (3)) ;
End.

1.8 Fungsi Standar

1.8.1 Fungsi Standar Aritmatika
Ada Abs, ArcTan, Cos, Exp, Franc, Int, Ln, Pi, Sin, Sqr dan Sqrt
Penjelasan :
- Abs (x) ;
Memutlakkan suatu nilai yang ditunjukkan oleh argument x. dapat berupa tipe real atau integer.
- Exp (x : real ) : real ;
Untuk menghitung nilai pangkat dari bilangan e. dapat berupa real atau integer dan hasil dari fungsinya adalah real.
- Ln (x : real ) : real ;
Untuk menghitung nilai logaritma alam dari nilai x. tipe datanya real atau integer dan hasil fungsinya adalah real.
- Int (x : real) : real ;
Untuk menghasilkan nilai integer dari x. hasil dari fungsi adalah tipe real dengan nilai yang berupa pembulatan ke bawah dari nilai x.
- Franc (x : real ) : real ;
Untuk mendapatkan nilai pecahan dari argument x. Argumen x dapat berbentuk real atau integer dan hasilnya adalah real.
- Sqr (x) ;
Untuk menghitung nilai pangkat kuadrat dari argument x.
- Sqrt (x : real ) : real ;
Untuk menghitung nilai akar dari argument x. dapat real dan integer dan hasil dari fungsinya adalah real.
- Pi
Akan menghasilkan nilai PI sebesar 3, 14.

1.8.2 Fungsi Standar Transfer
Digunakan untuk merubah suatu nilai ke bentuk nilai yang lain. Yang tersedia adalah fungsi standar Chr, Ord, Round dan trunc.
Penjelasan :
- Chr (x : byte) : char ;
Untuk merubah nilai dari byte x ke bentuk karakter yang sesuai dengan kode ASCII.
- Ord (x) : longint ;
Untuk merubah nilai x ke bentuk nilai longint yang sesuai dengan kode ASCII. Fungsi ini kebalikan dari fungsi standar Chr.
- Round (x : real) : longint ;
Untuk membulatkan nilai dari real x ke nilai longint yang terdekat. Bila nilai pecahan sama dengan atau lebih besar dari 0,5 akan dibulatkan ke atas, sedangkan bilai nilai pecahan lebih kecil dari 0,5 akan dibulatkan ke bawah.
- Trunc (x : real) : longint ;
Untuk membulatkan nilai dari real x ke nilai longint terkecil, atau dengan kata lain membulatkan ke bawah.

1.8.3 Fungsi Standar Lainnya
Terdiri dari : Hi, Lo, Random, SizeOf, Swap, UpCase, ParamCount dan ParamStr.
Penjelasan :
- Hi (x) : byte ;
Untuk mengisi low order byte dari hasil fungsi dengan high order byte dari ungkapan integer x. high order byte dari hasil fungsi akan bernilai nol. Tipe hasil dari fungsi ini adalah byte.
- Lo (x) : byte ;
Untuk mengisi low order byte dari hasil fungsi dengan low order byte dari ungkapan integer x. high order byte dari hasil fungsi akan bernilai nol. Tipe hasil dari fungsi ini adalah byte.
- Swap (x) ;
Untuk membalik bit-bit di low order byte menjadi high order byte dan sebaliknya dari ungkapan x. ungkapan x dapat berupa tipe integer atau word.
- Random [ (range : word ) ] ;
Untuk menghasilkan angka random berkisar dari nilai lebih besar atau sama dengan nol dan lebih kecil dari satu. Bila range tidak disebutkan, hasil dari fungsi ini adalah real. Bila range disebutkan, hasilnya adalah word.
- SizeOf (x) : word ;
Untuk menunjukkan besarnya byte yang digunakan oleh suatu variable x. hasilnya adalah word.
- UpCase (Ch : char ) : char ;
Untuk merubah argument suatu karakter yang ditunjukkan oleh Ch menjadi bentuk karakter huruf besar ( upper case ).
- ParamCount: word ;
Untuk mengetahui jumlah parameter yang dikirimkan lewat promt DOS
- ParamStr (index) : string ;
Untuk menerima parameter yang dikirmkan lewat promt DOS, index adalah ungkapan dengan tipe word, dan akan menghasilkan parameter ke index yang dikirmkan tersebut.

PROSEDUR

1.  Pendahuluan
Seperti yang sudah dipelajari pada Mata Kuliah Algoritma dan Pemrograman 1 tentang teknik bagaimana menyelesaikan suatu permasalahan, dimana suatu permasalahan hendaknya dapat dibagi bagi terlebih dahulu menjadi submasalah submasalah dengan tujuan agar permasalahan tersebut tampak lebih sederhana dan dapat dipecahkan modul permodul

Berkaitan dengan hal diatas, Teknik menggunakan Prosedur  ini dapat dijadikan sebagai salah satu cara mengimplementasikan pemecahan suatu Submasalah. Sebuah prosedur memiliki nama prosedur dan parameter ataupun tanpa parameter. Parameter dalam prosedur diimplementasikan dengan cara mendeklarasikan  variable lokal beserta tipe datanya. Sebuah prosedur dapat digunakan berkali kali dan memungkinkan untuk menggunakan parameter yang berbeda selama sesuai dengan tipe data yang telah dideklarasikan.Prosedur merupakan bagian yang terpisah dari program dan dapat diaktifkan dimanapun didalam program. Prosedur dibuat sendiri bilamana program akan dibagi-bagi menjadi beberapa blok-blok modul. Prosedur dibuat didalam program dengan cara mendeklarasikannya dibagian deklarasi prosedur. Menggunakan kata cadangan Procedure.

2. Tujuan Instruksional Umum
1     Mengetahui komponen utama dalam pemrograman prosedural
3. Tujuan Instruksional Khusus
2   Memahami dan mampu membuat program(algoritma) yang modular melalui prosedur.
3    Memahai penggunaan parameter dan jenis-jenisnya, serta dapat menerapkan dengan tepat dalam sebuah prosedur.
4. Kegiatan Praktikum

1.  Pendeklarasian prosedur
Prosedur mempunyai nama dan baris baris statement yang merupakan implementasi prosedur tersebut. Sebuah prosedur juga dapat mempunyai satu atau lebih parameter dan kadangkala kita pun dapat mendeklarasikan sebuah prosedur tanpa parameter. Parameter dalam prosedur dapat dibagi menjadi 2, yaitu Parameter Input dan Parameter Output Pendeklarasian prosedur artinya menuliskan nama prosedur, mendeklarasikan nama-nama konstanta, variabel dan tipe (jika ada), dan menjabarkan rangkaian statement yang dilakukan. Aturan penamaan prosedur sama dengan aturan penamaan variable. Seperti sudah dijelaskan diatas bahwa prosedur tidak harus memiliki parameter, prosedur tanpa parameter dapat mendapatkan masukan berupa konstanta atau variable global, dan dapat menghasilkan keluaran yang diisikan kepada variable global juga




1.1 Prosedur Tanpa Parameter    
Notasi algoritmik dan notasi bahasa Pascal untuk mendefinisikan prosedur adalah:
Notasi Algoritmik
Notasi Bahasa Pascal
procedure NamaProsedur
procedureNAMA_PROSEDUR;
ALGORITMA :
badan prosedur, berisi urutan instruksi}
(*ALGORITMA*)
begin
badan prosedur, berisi urutan instruksi}
end;

Contoh Kasus:
Diinginkan sebuah aplikasi mampu menampilkas tulisan seperti dibawah ini


Maka aplikasi diatas dapat diselesaikan dengan program dibawah ini
Tanpa Prosedur
Menggunakan Prosedur
Program Pro_TulisString;
uses
    wincrt;
Begin
 Writeln('Selamat Datang');
 Writeln('Mahasiswa');
 Writeln('STMIK IKMI Cirebon');
 Writeln;
 Writeln('Selamat Datang');
 Writeln('Mahasiswa');
 Writeln('STMIK IKMI Cirebon');
 Writeln;
 Writeln('Selamat Datang');
 Writeln('Mahasiswa');
 Writeln('STMIK IKMI Cirebon');
 Writeln;
End.

Program Pro_TulisString;
uses
    wincrt;
  procedure TulisKata;
  Begin
   Writeln('Selamat Datang');
   Writeln('Mahasiswa');
   Writeln('STMIK IKMI Cirebon');
   Writeln;
  End;
Begin
 TulisKata;
 TulisKata;
 TulisKata;
End.

Contoh diatas menggambarkan bahwa penggunaan prosedur akan berdampak alur program tampak lebih logis dan efisien
1.2      Prosedur Melibatkan Parameter Input
Notasi algoritmik dan notasi bahasa Pascal untuk mendefinisikan prosedur yang melibatkan Parameter Input adalah:
Notasi Algoritmik
Notasi Bahasa Pascal
procedureNamaProsedur(ParameterInput);
procedureNamaProsedur(NamaVariabel : Tipedata);
DEKLARASI
NamaVariabel : TipeData ;
var
NamaVariabel : TipeData
ALGORITMA :
badan prosedur, berisi urutan instruksi}
(*ALGORITMA*)
Begin
badan prosedur, berisi urutan instruksi}
 End;
Contoh Kasus:
              Program menampilkan karakter bintang
Penyelesaian
Program Proc_KarakterBintang;
uses
    wincrt;
 procedure TulisBintang(n : integer);
 var
  i : integer;
 Begin
  for i := 1 to n do
  Begin
   Write('* ');
  End;
  Writeln;
 End;
Begin
TulisBintang(3);
TulisBintang(4);
TulisBintang(5);
TulisBintang(6);
TulisBintang(7);
End.

         Jika dijalankan akan menghasilkan Output seperti Ini
        


1.2      Prosedur Melibatkan Parameter Input dan Output
Notasi algoritmik dan notasi bahasa Pascal untuk mendefinisikan prosedur yang melibatkan Parameter Input dan Output adalah:
Notasi Algoritmik
procedure NamaProsedur(ParameterInput; var ParameterOutput);
var
NamaVariabel : TipeData
ALGORITMA :
badan prosedur, berisi urutan instruksi}

Notasi Pascal
procedure NamaProsedur(ParameterInput; var ParameterOutput);
DEKLARASI
NamaVariabel : TipeData ;
(*ALGORITMA*)
Begin
badan prosedur, berisi urutan instruksi}
 End;
Contoh Kasus:
Program menghitung besar Gaya jika nilai Massa(m) dan Percepatan(a) diketahui. Dengan Rumus f = m x a
Penyelesaian
program proc_hitung_gaya;
uses
 wincrt;
Var
 massa, percepatan, gaya : real;
 procedure hitunggaya(m,a: real; var f : real);
 Begin
      f := m * a;
     
 End;
Begin
 Write('Masukkan Massa : ');
 readln(massa);
 Write('Masukkan Percepatan : ');
 readln(percepatan);
 hitunggaya(massa, percepatan, gaya);
 write(gaya:2:0);
End.

         

Tidak ada komentar:

Posting Komentar