Showing posts with label bahasa pemrograman. Show all posts
Showing posts with label bahasa pemrograman. Show all posts

Friday, August 16, 2013

CONTOH PROGRAM CONSOLE ARITMATIKA SEDERHANA C#

PROGRAM CONSOLE ARITMATIKA SEDERHANA C#



berikut ini adalah kode program aritmatikanya

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int angka1, angka2,pilihan;
double hasil;

Console.WriteLine("=================");
Console.WriteLine("1. Penjumlahan");
Console.WriteLine("2. Pengurangan");
Console.WriteLine("3. Perkalian");
Console.WriteLine("4. Pembagian");
Console.WriteLine("=================");
Console.WriteLine("Pilihan = ");
pilihan = int.Parse(System.Console.In.ReadLine());
Console.WriteLine("Masukkan angka pertama = ");
angka1 = int.Parse(System.Console.In.ReadLine());
Console.WriteLine("Masukkan angka kedua = ");
angka2 = int.Parse(System.Console.In.ReadLine());

switch (pilihan)
{
case 1:
hasil = angka1 + angka2;
Console.WriteLine("Hasil : " + hasil);
break;
case 2:
hasil = angka1 - angka2;
Console.WriteLine("Hasil : " + hasil);
break;
case 3:
hasil = angka1 * angka2;
Console.WriteLine("Hasil : " + hasil);
break;
case 4:
hasil = angka1 / angka2;
Console.WriteLine("Hasil : " + hasil);
break;
default:
Console.WriteLine("Pilihan tidak ada!!");
break;
}
Console.ReadKey();
        }
    }
}

Sunday, July 28, 2013

KELEBIHAN DAN KELEMAHAN C#. NET

Sebelum kita mempelajari bahasa pemrograan C# lebih dalam akan lebih kita mengetahui kelbihan dan kelemahan bahasa C#( dibaca C-Sharp) ini. Berikut ini adalah kelebihan dan kelemahan nya.



Kelebihan C# :

1. Flexible: C# program dapat di eksekusi di mesin computer sendiri atau di transmiskan melalu web dan di eksekusi di computer lainnya
2. Powerful: C# memiliki sekumpulan perintah yang sama dengan C++ yang kaya akan fitur yang lengkap tetapi dengan gaya bahasa yang lebih diperhalus sehingga memudahkan penggunanya
3. Easier to use: C# memodifikasi perintah yang sepenuhnya sama dengan C++ dan memberitahu dimana letak kesalahan kita bila ada kesalahan dalam aplikasi , hal ini dapat mengurangi waktu kita dalam mencari error
4. Visually oriented: The .NET library code yang digunakan oleh C#
menyediakan bantuan yang dibutuhkan untuk membuat tampilan yang complicated dengan frames, dropdown , tabbed windows, group button , scroll bar , background image , dan lainnya
5. Secure: semua bahasa pemprograman yg digunakan untuk kebutuhan internet mesti memiliki security yg benar-benar aman untuk menghindari aksi kejahatan dari pihak lain seperti hacker , C# memiliki segudang fitur untuk menanganinya
6. Memory management lebih mudah karena adanya garbage collector, yg membebaskan memory scr otomatis shg dapat mencegah memory leak
Type safe, konversi implisit dari tipe data hanya mensupport turunan dan operasi dari tipe data yg melebar (misal dari int ke long, kalo int ke short tidak bisa) dan ini dideteksi pas compile.
7. Banyak fungsi yang tersedia di Base Class Library .NET Framework
.NET Framework berkembang cepat dan semakin banyak fitur yg membuat produktivitas kita bertambah, misal:linq.
8. Untuk pengembangan aplikasi bisnis/umum atau enterprise, penggunaan C# akan lebih produktif daripada bila menggunakan C++. Bahasa C# masih merupakan turunan dari bahasa C, tetapi seolah2 dibuat lebih mudah dan produktif seperti Visaul Basic dengan tetap mempertahankan fleksibilitas dan “power” dari bahasa C.
9. Kabarnya Microsoft sedang mengembangkan sistem operasi dengan code name “Singularity” / “Midori” yang akan menggantikan Windows. Sistem operasi ini, API-nya ditulis dengan C# dan merupakan managed code seperti .Net Framework saat ini sehingga tentunya akan mengusung C# sebagai bahasa pemprograman standar. Hal ini akan menambah lagi kelebihan C#


Kekurangan C# :

Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai
 Bagi pemula pada umumnya akan kesulitan menggunakan pointer

Monday, June 10, 2013

Kompiler VB.Net( compiler VB.Net)



Untuk memahami pengembangan Visual Basic dalam lingkungan .Net, pertama-tama kita tentu saja harus memahami beberapa komponen dari lingkungan .Net dan bagaimana mereka berinteraksi.

Program Visual Basic .Net dicompile dan berjalan didalam kerangka kerja .Net. Mesin untuk mengeksekusi perintah-perintah yang dibuat oleh visual basic dikenal dengan nama common language runtime (CLR). CLR bertugas untuk meloading dan mengeksekusi perintah (kode) dan juga menangani masalah manajemen memori, keamanan, dan tipe-tipe data.
Pada level teratas dari semua ini adalah bahasa visual basic sendiri, atau bahasa-bahasa lain yang digunakan untuk membuat kode-kode perintah yang nantinya mengacu pada CLR. Kompiler VB mengambil kode-kode yang ditulis oleh programmer dan kemudian membuat intermediate language (IL) . Sebagai contoh, file-file DLL dan EXE mengandung IL yang dimengerti oleh CLR. Setiap kode yang dibuat untuk dijalankan dalam CLR dikenal sebagai managed code,karena kode tersebut berjalan dibawah kontrol dari CLR. Managed code adalah sebuah IL , karena setengahnya merupakan high level language (VB) dan setengahnya lagi adalah bahasa tingkat rendah (assembly / bahasa mesin).


Pada saat run-time, CLR mengkompile IL kedalam bentuk native code pada saat program berjalan dengan menggunakan kompiler Just-In-Time (JIT). Kompiler JIT membuat native code sesuai dengan spesifikasi CPU, jadi kita bisa membuat IL dari VB kemudian mengkompilenya untuk komputer dengan arsitektur yang berbeda. Ini kelihatan seolah-olah pemborosan karena mengkompile kode yang sangat banyak pada saat run time, padahal sebenarnya kompiler JIT tidak mengkonversi semua IL menjadi native code, namun hanya mengkonversi yang dibutuhkan / yang akan gunakan.


Keuntungan dari mengkompile dengan menggunakan JIT adalah ruang kerja dari aplikasi bisa dikurangi, karena penggunaan memori komputer untuk memproses intermediate code jauh lebih kecil. Didalam mengeksekusi aplikasi, hanya kode-kode yang dibutuhkan yang dikompile. Kode yang tidak digunakan, seperti kode untuk memprint jika si pengguna tidak memprint maka tidak akan dikompile oleh JIT, selanjutnya CLR bisa mengoptimasi eksekusi program on the fly pada saat run time. Sebagai contoh, dalam platform Windows, CLR mungkin mencari jalan untuk mengurangi page fault dalam memory manager dengan mengatur kembali kode yang sudah dikompile di memori, dan ini bisa dilakukan semua pada saat run time. Dikatan, ada waktu ketika hasil kompilasi JIT bisa meningkatkan performance komputer. Dalam kasus ini, kita bisa menggunakan native image generation (NGen) untuk mencompile IL di tempat program tersebut berjalan
Dapat dilihat, bahwa teknologi CLR menggantikan file-file runtime VB dan juga mengeliminir penggunaan dari COM, DCOM, MTS, or COM+. Aplikasi VB sekarang berjalan dalam konteks CLR, jadi tidak dibutuhkan lagi kumpulan dll yang cukup merepotkan, tentu saja VB net masih bisa menggunakan COM components jika nanti dibutuhkan melalui fitur .NET

download wordnya disini
http://adf.ly/QJm4y



source :www.maniavb.com

Friday, May 24, 2013

Program VB.Net 2008 dengan Database Acces 2007

Karena sibuk otak-atik VB.NET 2008 dengan database MS.Acces 2007 yang hampir pusing dibikinnya. 
 Database (DBMS) saya gunakan Ms.Acces 2007 (extension  .accdb). Berikut saya share dech programnya. Programnya bertemakan data karyawan pada suatu perusahaan.



Program data karyawan dengan database Ms Acces
Download program disini

download script programnya disini

klik skip adf atau lewati iklan  untuk menuju link download

Saturday, January 5, 2013

Memberi Nomor Baris Source Kode pada Microsoft Visual C++

Cara memberi nomor baris kode program pada halaman source kode Microsoft Visual C++

1. Buka program script program yang sudah ada.
2. Pilih tab menu Tool lalu pilih Option. Maka akan muncul kotak dialog Option. 


3. Pilih Text editor >> C++. Pada Option C++ pilih general lalu centang line number lalu klik Ok


4. Maka tampilan akan bernomor sesuai panjang kode programnya

Friday, December 21, 2012

Program Virtual Class Aritmatika Visual C++

// virtual kelas menggunakan menu pilihan.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>
using namespace std;
class matematika
{public :virtual void perhitungan()
{cout<<" perhitungan matematika seperti umumnya"<<endl;
}
};
class penambahan : public matematika
{public:void perhitungan()
{
double a,b,c;
cout<<"perhitungan seperti penambahan"<<endl;
cout<<"Input bilangan A : " ;cin>>a;
cout<<"Input bilangan B : " ;cin>>b;
c=a+b;
cout<<" hasilnya adalah  "<<c<<endl;
}
};
class pengurangan : public matematika
{public:void perhitungan()
{
double a,b,c;
cout<<"perhitungan seperti pengurangan"<<endl;
cout<<"Input bilangan A : " ;cin>>a;
cout<<"Input bilangan B : " ;cin>>b;
c=a-b;
cout<<" hasilnya adalah  "<<c<<endl;
}
};
class perkalian : public matematika
{public:void perhitungan()
{
double a,b,c;
cout<<"perhitungan seperti perkalian"<<endl;
cout<<"Input bilangan A : " ;cin>>a;
cout<<"Input bilangan B : " ;cin>>b;
c=a*b;
cout<<" hasilnya adalah  "<<c<<endl;
}
};
class pembagian : public matematika
{public :void perhitungan()
{
double a,b,c;
cout<<"perhitungan seperti pembagian"<<endl;
cout<<"Input bilangan A : " ;cin>>a;
cout<<"Input bilangan B : " ;cin>>b;
if (b=0) {c=0;} else{
c=a/b;}
cout<<" hasilnya adalah  "<<c<<endl;
}
};
int main()
{
char ulang;
do{system( "cls");
int pilih;
matematika *hitung[5];
hitung[0]=new matematika();
hitung[1]=new penambahan();
hitung[2]=new pengurangan();
hitung[3]=new perkalian();
hitung[4]=new pembagian();
cout<<" 1. penambahan"<<endl;
cout<<" 2. pengurangan"<<endl;
cout<<" 1. perkalian"<<endl;
cout<<" 1. pembagian"<<endl;
cout<<endl<<endl;
cout<<"masukkan pilihan Anda [1..4] !  ";cin>>pilih;
if (pilih==1){
hitung[0]->perhitungan();
hitung[1]->perhitungan();
}else if (pilih==2){
hitung[0]->perhitungan();
hitung[2]->perhitungan();
}else if (pilih==3){
hitung[0]->perhitungan();
hitung[3]->perhitungan();
}else {
hitung[0]->perhitungan();
hitung[4]->perhitungan();}
cout<<endl<<endl;
cout<<"Mau mengulang lagi...? " ;cin>>ulang;
}while ((ulang=='y')||(ulang='Y'));

return 0;
}

Thursday, July 26, 2012

fungsi pascal

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 ; 

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 

Penulisan judul fungsi yang menggunakan parameter dengan pengiriman 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. 
Contoh program : 
Function Fungsi1 (X : integer ) : integer ; 
Function 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. 

Monday, July 23, 2012

Pemrograman Terstruktur


Ide Pemrograman Terstruktur pertama kali diungkapkan oleh Professor Edsger Djikstra dari Universitas Eindhoven sekitar tahun 1965. Professor Djikstra dalam papernya mengusulkan bahwa pernyataan GOTO seharusnya tidak dipergunakan didalam program terstruktur. Pernyataan tersebut ditanggapi oleh HD. Millis yang menyatakan bahwa pemrograman terstruktur tidak hanya dihubungkan dengan tidak digunakannya pernyataan GOTO, tetapi oleh strukturnya. Struktur programlah yang menentukan program yang terstruktur menggunakan pernyataan GOTO atau tidak.
Pemrograman Terstruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program.
Prinsip dari pemrograman terstruktur adalah bahwa Apabila kita sudah sampai pada langkah tertentu, kita tidak boleh mengeksekusi langkah sebelumnya. Hal  ini dikecualikan pada langkah-langkah untuk proses berulang
B.     Tujuan Pemrograman Terstruktur
Tujuan dari pemrograman terstruktur dapat diuraikan sebagai berikut :
a. Untuk meningkatkan kualitas dan kehandalan program
b. Untuk memudahkan pemahaman terhadap isi program
c. Untuk menyederhanakan program
d. Untuk maintenance (pemeliharaan) program
e. Untuk meningkatkan produktifitas program

Sifat-sifat dari pemrograman terstruktur dapat diuraikan sebagai berikut :
a. Memuat teknik pemecahan masalah yang logis dan sistematis
b. Memuat algoritma yang efisien, efektif dan sederhana
c. Program disusun dengan logika yang mudah dipahami
d. Tidak menggunakan perintah GOTO
e. Biaya pengujian program relatif rendah
f. Memiliki dokumentasi yang baik
g. Biaya perawatan dan dokumentasi yang dbuthkan relatif rendah 

Artikel versi full download disini

Sunday, April 29, 2012

ARRAY dan Contoh Programnya pada Pascal

Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan menunjukkan nilai indexnya atau subskript. Array dapat bertipe data sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data tersebut.
Contoh:
Var
Untai : array[1..50] of Integer;
Pada contoh Array dengan nama untai telah dideklarasikan dengan tipe integer, dengan jumlah elemen maksimum 50 elemen, nilai dari elemen array tersebut diatas harus bertipe integer.

Contoh Program :
Program Contoh_Array_Input;
Uses Crt;
Var
Bilangan : array[1..50] of Integer;
Begin
ClrScr;
Bilangan[1]:=3;
Bilangan[2]:=29;
Bilangan[3]:=30;
Bilangan[4]:=31;
Bilangan[5]:=23;
Writeln('nilai varibel bilangan ke 3 =',Bilangan[3]);
Readln;
End.

Array juga dapat dideklarasikan bersama dengan tipe yang beragam seperti contoh dibawah ini :
Program Contoh_Deklarasi_Array_Beragam;
Uses Crt;
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]:10,Nama[i]:25,Nilai[i]:3:2,' ',Umur[i]:3);
End;
Readln;
End.

Untuk deklarasi array dapat digunakan beberapa cara seperti berikut ini :
Type
Angka = String[20];
Var
Nama : Array [1..50] of Angka;
Begin
.
.
End.

Deklarasi tipe indeks subrange integer Indeks pada array dapat tipe skalar atau subrange, tetapi tidak bisa real.
Contoh:
Var
Nilai : Array[1..10] of Integer;
pada contoh ini array nilai mempunyai 10 buah elemen yaitu dari 1 sampai 10. Array tersebut dapat dideklarasikan dengan type seperti berikut ini :

Type
Skala = 1..10;
Var
Nilai : Array [skala] of Integer;
atau :
Type
Skala = 1..10;
Y = Array[skala] of Integer;
Var
Nilai : Y;
atau :
Type
Y = Array[1..10] of Integer;
Var
Nilai : Y;
atau :
Const
Atas =1;
Bawah = 5;
type
Y = Array[Atas..Bawah] of Integer;
Var
Nilai : Y;

I. Deklarasi Type Indeks Skalar
Indeks dari larik dapat berupa tipe skalar.
Contoh. :
Program Deklarasi_Indeks_Array_Skalar;
Uses Crt;
Var
Jum : Array[(jan,feb,mar,apr,mei)] of Integer;
Begin
Jum[jan]:=25;
Jum[feb]:=45;
Jum[mar]:=21;
Jum[apr]:=23;
Jum[mei]:=50;
Writeln('Jumlah nilai bulan maret =',Jum[mar]);
Readln;
End.
dapat juga ditulis :
type
Bln = (jan,feb,mar,apr,mei);
Var
Jum : Array[bln] of Integer;
atau :
type
Bln =(jan,feb,mar,apr,mei);
Var
Jum : Array[jan..mei] of Integer;

II. Deklarasi Konstanta Array
Array tidak hanya dapat berupa suatu varibel yang dideklarasikan di bagian deklarasi variabel, tetapi dapat juga berupa konstanta (const).
Contoh Program :
Program Contoh_Deklarasi_Array_Konstan;
Uses Crt;
Const
Tetap : Array[1..4] of Integer=(7,10,21,20);
Var
i : Integer;
Begin
For i:= 1 to 4 Do
Writeln('Nilai Konstan array ke ',i:2,' =',Tetap[i]);
Readln;
End.
konstanta array dapat juga berupa ketetapan dalam bentuk karakter seperti berikut.
Contoh Program :
Program Contoh_Konstan_Array_Char_;
Uses Crt;
Const
Huruf : Array[0..5] of Char=('A','B','C','D','E','F');
Var
i : Integer;
Begin
For i:= 0 to 5 Do
Writeln('Nilai konstan array ke',i:2,' = ',Huruf[i]);
Readln;
End.
Konstanta array dapat juga berupa string seperti berikut ini.
Contoh Program :
Program Constanta_Array_String;
Uses Crt;
Type
A = Array [1..5] of String;
Const
Nama : A = ('basic','pascal','cobol','paradox','dbase');
Var
i : Integer;
Begin
For i:= 1 to 5 Do
Writeln('Nilai Array ke-',i:2,'= ',Nama[i]);
readln;
end.

Dalam pascal string merupakan array dari elemen- elemen karakter seperti berikut :
Contoh Program :
Program String_Adalah_Array_Tipe_Char;
Uses Crt;
Var
Nama : string;
i : Integer;
Begin
Nama:='Turbo Pascal';
For i:= 1 to Length(nama) Do
Writeln('Elemen ',i,' dari ',Nama,'= ',Nama[i]);
Readln;
End.

contoh program bilangan prima dengan menggunakan bantuan array.
Contoh program :
Program Mencari_Bilangan_Prima_Dengan_Array;
Uses Crt;
Var
Prima : Array[1..100] of Integer;
i,j : Integer;
bil : Integer;
Begin
ClrScr;
For i := 2 to 100 Do
Begin
Prima[i]:=i;
For j:= 2 to i-1 Do
Begin
bil := (i mod j); {* i dibagi j dicek apakah 0*}
If bil = 0 then Prima[i]:=0; {*jika habis dibagi,berarti bkn prima*}
End;
If Prima[i]<> 0 Then Write(Prima[i],' '); {*cetak array yg prima*}
End;
Readln;
End.

Contoh pengurutan data dengan metode buble sort, yaitu dengan cara penukaran, dapat dilihat pada contoh dibawah ini :
Contoh Program :
Program Penggunaan_Array_Untuk_Sortir_Buble_Sort;
Uses Crt;
Var
nil1 : Array[1..100] of Integer;
n,i,j,dum : Integer;
Begin
ClrScr;
Write('mau isi berapa data acak (integer) ='); readln(n);
For i := 1 to n Do
Begin
Write('Data Ke ',i,':');Readln(nil1[i]);
End;
{* penyapuan proses}
for i:= 1 to n-1 do
begin
for j:= i to n do
begin
if nil1[j]begin
dum:=nil1[j];
nil1[j]:=nil1[i];
nil1[i]:=dum;
end;
end;
end;
writeln;
writeln('Hasil Sortir');
for i := 1 to n do
write(nil1[i]:3);
readln;
end.


III. Array Dua Dimensi
Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array), disini akan dibahas array 2 dimensi saja. 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.
1 2
1 2 3
Untuk mengetahui cara mendeklarasikan dari penggunaan aray dua dimensi dapat dilihat pada listing program dibawah ini .

Contoh Program:
Program Deklarasi_Array_Dua_Dimensi;
Uses Crt;
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;
Readln;
End.


IV. Alternatif Deklarasi Array Dua Dimensi.
Ada beberapa cara dalam mendeklarasikan array dua dimensi, beberapa cara tersebut dapat dilihat dibawah ini :
Contoh :
Var
Tabel : Array[1..3] of Array[1..2] of Byte;
atau :
Type
Matrik = Array[1..3,1..2] of Byte;
Var
Tabel : Matrik;
atau :
Type
Baris = 1..3;
Kolom = 1..2;
Matrik = Array[Baris,Kolom] of Byte;
Var
Tabel : Matrik;
atau :
Type
Baris = 1..3;
Kolom=1..2;
Matrik= Array[Baris] of Array[Kolom] of Byte;
Var
Tabel : Matrik;
Dibawah ini akan diberikan listing program penggunaan array dua dimensi dalam aplikasi penjumlahan matrik :
Contoh Prorgam:
Program Penjumlahan_Matrik;
Uses Crt;
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;
{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;
{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;
{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.


V. Array Sebagai Parameter
Array dapat digunakan sebagai parameter yang dikirimkan baik secara nilai (by value) atau secara acuan (by reference) ke procedure atau ke function. Procedure yang menggunakan parameter berupa array harus dideklarasikan di dalam judul procedure yang menyebutkan parameternya bertipe array.

Contoh Program :
Program Contoh_Pengiriman_Parameter_Array_Di_Procedure;
Uses Crt;
Const
Garis ='---------------------------------------------------';
Type
Untai = Array[1..10] of String[15];
Bulat = Array[1..10] of Integer;
Huruf = Array[1..10] of Char;
Var
i,Banyak : Integer;
Procedure Proses(Nama:Untai;Nilai:Bulat);
Var
Ket : String;
Abjad : Char;
Begin
Writeln(Garis);
Writeln('Nama Nilai Abjad Keterangan');
Writeln(Garis);
For i := 1 to Banyak Do
Begin
If Nilai[i] > 90 Then
Begin
Abjad:='A';
Ket :='Istimewa';
End;
If (Nilai[i]<90) And (Nilai[i]>70) Then
Begin
Abjad:='B';
Ket :='Memuaskan';
End;
If (Nilai[i]<70) And (Nilai[i]>60) Then
Begin
Abjad:='C';
Ket :='Cukup';
End;
If (Nilai[i]<60) And (Nilai[i]>45) Then
Begin
Abjad:='D';
Ket :='Kurang';
End;
If Nilai[i]< 45 Then
Begin
Abjad:='E';
Ket :='Sangat kurang';
End;
Writeln(Nama[i]:15,' ',Nilai[i]:4,' ',Abjad,' ',Ket:15);
End;
Writeln(Garis);
End;
Procedure Masuk_Data;
Var
Nama : Untai;
Nilai : Bulat;
Begin
Write('Banyak data =');Readln(Banyak);
For i:= 1 to Banyak Do
Begin
ClrScr;
Writeln('Data ke - ',i);
Write('Nama =');readln(Nama[i]);
Write('Nilai =');readln(Nilai[i]);
End;
Proses(Nama,Nilai);
End;
{modul Utama}
Begin
Masuk_Data;
Readln;
End. 

Saturday, October 22, 2011

Download Turbo Pascal Windows 7(TPW)

Belajar Bahasa pemrograman memang sulit butuh ketelitian dan ketekunan, di dunia SI dan TI kita akan berkecimpung dengan namanya bahasa pemrograman.


Setiap bahasa pemrograman mempunyai aturan tersendiri.Untuk itu kita perlu belajar programa dasar sebelum belajar tingkat lanjut/visual pemrograman. Salah satu program dasar yang sering di gunakan adalah Turbo Pascal. Turbo Pascal sesorang bisa dikatakan sebagai landasan pemrograman. Setiap yang berkecimpung di dunia IT wajib memahami bahasa pemrograman ini. Itu makanya di bangku kuliah Ti dan SI ini jadi mata kuliah wajib.Turbo Pascal ini merupakan dasar utama bahasa Pemrogrman Delphi.
Download Turbo Pascal untuk windows 7 di sini