Monday, March 29, 2010

Manusia dan Penderitaan

seiap manusia pasti akan mengalami ujian dalam hidupnya dan bila ujian itu berat maka manusia akan menamakannya penderitaan . Penderitaan pun dapat berbentuk lahir , batin atau pun lahirbatin .

menurut saya penderitaan itu dapat terjadi dari berbagai hal seperti penderitaan fisik yaitu para tki yang berkerja di luar negeri padahal mereka ingin mendapatkan kehidupan yang lebih layak untuk anak dan keluarganya karena mereka hidup menderita namun di luar sana para majikan yang seenaknya menyiksa para babu mereka tanpa belas kasihan dan sedangkan anak dan keluarga yang ditingal pergi akan merasakn penderitaan mental karena mereka memikirkan ibu ataupun sodara mereka yang berkerja di luar negeri apakan ibu/sodara mereka itu hidup dengan layak disana itu pun merupakan sebuah penderitaan .

mungkin semua orang berfikir kalau uang adalah awal dari semua penderitaan karena apa pun yang dapat menghibur kita dan menjauhkan kita dari penderitaan tidak akan lepas dari uang ataupun materi . padahal bila manusia tersebut mencoba untuk berjuang dan berusaha melakukan hal-hal yang halal untuk menaikan kesejahteraan mereka walaupun akan banyak ujian dalam menempuh itu dan anggap saja itu hanya tantangan dan tidak berhenti berdoa maka ia tidak akan merasa telah mendapatkan penderitaan .

jadi cara yang sangat tepat untuk menghindarkan penderitaan adalah have fun aja dalam menjalani hidup yang udah mulai masuk zaman yang edan dan jangan lupa berdoa ^____^ .


program rekursi 1 dan 2

Program rekursi (bagian 1)


listing program 6.11


program RekursiFaktorial;
uses
crt;

function faktorial(x: integer) : integer ;
begin
if (x=0) then
faktorial := 1
else
faktorial := x * faktorial (x-1);
end;
var
bil, hasil : integer ;
begin
clrscr;
write ('Masukan Bilangan yang akan dihitung : '); readln(bil);
hasil := faktorial(bil);
writeln;
writeln(bil, ' ! = ', hasil);
readln;
end.

output program 6.11




progarm rekursi (bagian 2)

listing program 6.12

program RekursiPerpangkatan;

uses
crt ;

function pangkat(basis, eksp: integer): integer;
begin
if (eksp=0) then
pangkat := 1
else
pangkat := basis * pangkat(basis, eksp-1);
end;

var
hasil : integer;
begin
clrscr;
hasil := pangkat(2, 5);
writeln('2^5 = ', hasil);
readln;
end.

output program 6.12



Monday, March 22, 2010

Manusia dan Harapan

Setiap manusia pasti memiliki harapan, karena manusia yang idak memiliki harapan berarti mausia tersebut mati dalam hidup. harapan- harapan tersebut juga tidak baik karena bila manusia memiliki harapan yang berlebihan maka manusia tersebut akan di tertawakan oleh orang-orang atau seperti pribahasa " Si Pungguk Merindukan Bulan ".

Setiap harapan pun tidak mungkin akan terjadi begitu saja karena harapan pun akan terjadi tergantung dari usaha dari manusianya itu dan juga manusia perlu percaya akan dirinya dan juga kepada tuhannya oleh karena itu kita sebagai manusia tdak boleh berhenti bedoa ke pada tuhan agar terkabulnya harapan manusia tersebut .

Cita-cita dan harapan memiliki persamaan yaitu :
  • keduanya menyangkut masa depan yang belum terjadi
  • Pada umumnya harapan dan cita-cita menyangkut pada keinginan untuk lebih baik atau meningkat.
sebab manusi memiliki harapan adalah kodrat dan kebutuhan hidup , kodrat ialah sifat, keadaan , atau pembawaan alamiah yang sudah terjelma dalam diri manusia sejak manusia diciptakan oleh Tuhan. Misalnya Menangis, bergembira , berfikir, bejalan , berkata , mempunyai keturunan dan sebagainya . Setiap manusia memiliki semua kemampuan itu . dan dengan kodrat menyebabkan manusi memiliki keinginan dan harapan.
Sudah kodratnya seiap manusia memiliki bermacam-macam kebutuhan hidup pada garis besarnya dapat dibedakn menjadi kebutuhan jasmani dan kebutuhan rohani,
Dengan adanya dorongan kodarat dan dorongan kebutuhan hidup itu maka manusia memiliki harapan. Pada hakekatnya harapan itu adalah keinginan untuk memenuhi kebutuhan hidupnya.

Menurut Abraham Maslow sesuai dengan kodratnya harapan manusia atau kebutuhan manusia itu adalah :

  1. Kelangsungan hidup (Survival)
  2. Keamanan (Safety)
  3. hak dan kewajiaban mencintai dan di cintai (be loving and love)
  4. diakui lingkungan (status)
  5. Perwujudan cita-cita (self acualization)

Sunday, March 7, 2010

Perulangan dalam pascal

# Perulangan For
perulangan dengan statement for digunakan untuk mengulang statemen atau suatu blok statement berulang kali. Perulangan dengan statement for dapa berupa perulangan positif dan perulangan negaif.

# Perulangan For positif
contoh :
perulangan positif untuk satu statement :

Uses Crt;
Var
i : Integer;
Begin
For i := 1 To 5 Do
Writeln ('LIKE THIS’);
readln;
END.


Maka bila program diatas dicompile hasilnya :
LIKE THIS
LIKE THIS
LIKE THIS
LIKE THIS
LIKE THIS

Penjelasan : Berati statemen
LIKE THIS akan diulang sebanyak 5 kali yaitu dengan menghitung nilai i dari i ke 1 sampai nilai i terakhir yaitu i ke 5.

# Perulangan For negatif
Perulangan negatif adalah perulangan dengan menghitung (counter) dari besar ke kecil.

Statement yang digu
nakan adalah For-DownTo-Do

contoh :

Uses Crt;
Var
i : Integer;
Begin
For i := 10 DownTo 1 Do
Write (i:3);
readln;
End.


Hasil :
10 9 8 7 6 5 4 3 2 1

# Perulangan For tersarang


Perulangan For tersarang adalah perulangan For yang berada pada perulangan yang lainnya. Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya.

Contoh :

uses crt;
Var
a,b : Integer;

Begin
clrscr;
For a := 1 To 3 Do
Begin
For b := 1 To 2 Do
Write (a :4,b:2);
Writeln;
End;
readln;
End.


Hasil :
1 1 1 2
2 1 2 2
3 1 3 2

# Perulangan While - Do
Penyeleksian kondisi digunakan untuk agar program dapat menyeleksi kondisi, sehingga program dapat menentukan tindakan apa yang harus dikerjakan, tergantung dari kondisi yang diseleksi tersebut. Perulangan While – Do tidak dilakukan jika kondisi tidak terpenuhi.
Contoh :


Uses Crt;
Var i : Integer;
Begin
i := 0;

While < i="5;"> 60 Then
Writeln('Lulus')
Else

Writeln('Tidak lulus');
readln;
End.

Hasil :
Jika kita Memasukan 40 pada varibel nilai, Maka program diatas akan mencetak Tidak lulus.

# Case - Of
Struktur Case – Of mem
punyai suatu ungkapan logika yang disebut dengan selector dan sejumlah statemen yang diawali dengan suatu label permasalahan (case label) yang mempunyai tipe sama dengan selector. Statement yang mempunyai case label yang bernilai sama dengan case label yang bernilai sama dengan nilai selector akan diproses sedang statemen yang lainya tidak.
Bentuk struktur dari Case - Of:

Case Variabel Kondisi Of

Case – Label 1; Statement 1;
Case – Label 2; Statement 2;
Case – Label 3; Statement 3;
Case – Label 4; Statement 4;
........
........

Case – Label n ; Statement n ;
End ;

Daftar Case label dapat berupa konstanta, range dari konstanta
yang bukan bertipe real.

Contoh program ;

Program nilai;
uses crt;

Var
nil : Char ;
Begin
clrscr;
Write ('Nilai Numerik yang didapat :');
Case nil Of
'A': Writeln ('Sangat Baik’);
'B': Writeln('Baik’);
'C': Writeln('Cukup');

'D': Writeln('Kurang');
'E': Writeln('Sangat Kurang');
End;

readln;
End.
hasil :

Nilai Numerik yang didapat : B Input dan hasilnya Baik

TUGAS 5 BUAT PROGRAM KONVERSI SUHU











Monday, March 1, 2010

Tipe Data Pada Pascal

Tipe Data dapat terletak pada deklarasi variabel maupun padadeklarasi tipe.
Pascal menyediakan beberapa macam tipe data, yang terdiri dari :

1. Tipe data sederhana/skalar, terdiri dari :
1.1. Tipe data standar/predefinisi
1.1.1. bulat (integer)
1.1.2. real
1.1.3. karakter
1.1.4. string
1.1.5. logika (boolean)

1.2. Tipe data didefinisikan pemakai :
1.2.1. subjangkauan (subrange)
1.2.2. terbilang (enumerated)

2. Tipe data terstruktur, terdiri dari :

2.1. larik (array)
2.2. rekaman (record)
2.3. berkas (file)
2.4. himpunan (set)
3. Tipe data penunjuk (pointer)

1.1. Tipe data standar
1.1.1. Tipe data integer

Tipe integer adalah bilangan yang tidak mempunyai titik desimal/bilangan pecahan.
Integer terdiri dari beberapa tipe, yaitu :
- byte, dengan jangkauan nilai 0..255
- shortint, dengan jangkauan nilai -128..127
- integer, dengan jangkauan nilai -32768..32767
- word, dengan jangkauan nilai 0..65535
- longint, dengan jangkauan nilai -2147483648..2147483647

Operator yang dapat digunakan pada data tipe integer :
+, penjumlahan
-, pengurangan
*, perkalian
div, pembagian
mod, sisa pembagian

Contoh :
VAR a,b,jumlah1,jumlah2 : INTEGER;
BEGIN
jumlah1:=10;
jumlah2:=3;
a:=jumlah1 DIV jumlah2;
b:=jumlah1 MOD jumlah2;
WRITELN('HASIL A = ',a);
WRITELN('HASIL B =',b);
END.

hasil program : hasil a = 3
hasil b = 1

1.1.2. Tipe data real
Tipe real adalah bilangan yang mengandung pecahan, palingsedikit harus ada satu
digit sebelum dan sesudah titik desimal.
Operator yang dapat digunakan pada data tipe real adalah :
+ penjumlahan
- pengurangan
* perkalian
/ pembagian

Contoh :
VAR nilai1,nilai2,hasil : REAL;
BEGIN
nilai1 := 2.52;
nilai2 := 3.2;
hasil := nilai1 + nilai2;
WRITE('HASIL PENJUMLAHAN = ',hasil:4:2);
END.

Output program, sbb : hasil penjumlahan = 5.72

1.1.3. Tipe data karakter
Nilai data karakter berupa sebuah karakter yang ditulis diantara tanda petik
tunggal, misalnya : 'A', 'b', '@', dan sebagainya. Karakter yang dapat diterima oleh
komputer :
huruf besar/kecil : A,B,C,...,Z / a,b,...,z
digit : 1,2,3,...,9
operator aritmatika : * / + -
tanda baca : , . ; : ? !
simbol khusus : $ @ { } ( ) [ ] % #
spasi

Contoh :
VAR nilai : CHAR;
BEGIN
nilai :='A';
WRITELN('NILAI TERBAIK = ',nilai);
END.
hasilnya : nilai terbaik = A

1.1.4. Tipe data string
Nilai data string adalah satu atau lebih karakteryang terletak diantara tanda
petik tunggal, misal : 'GUNADARMA'. Bila panjang dari suatu string di dalam
deklarasi variabel tidak disebutkan, maka dianggap panjangnya 255 karakter.

Contoh :
VAR kata1 : STRING[5];
kata2 : STING[9];
kata : CHAR;
BEGIN
kata1 :='STMIK';
kata2 :='GUNADARMA';
kata :=' '; { karakter berupa spasi }
WRITELN(kata1,kata,kata2);
END.
hasil : STMIK GUNADARMA

1.1.5. Tipe data boolean
Data tipe boolean mempunyai dua nilai, yaitu True dan False.
Contoh :
VAR
benar : BOOLEAN;
BEGIN
benar := TRUE;
WRITELN('benar = ',benar);
END.

hasil : benar = TRUE

1.2. Tipe data Terdefinisi
1.2.1 Tipe data subjangkauan
Tipe data ini adalah tipe data yang dapat didefinisikan sendiri oleh pemakai. Nilai
data pada tipe ini mempunyai jangkauan tertentu.
Misalkan nilai ujian mempunyai harga 0 sampai 100, maka nilai ujian dapat didefinisikan
sbb :

TYPE
nilai = 0..100;
Contoh :
VAR sks : 1..4;
angkatan : 89..95;
nilai : 'A'..'E';

1.2.2. Tipe data terbilang
Tipe data ini juga dapat didefinisikan sendiri oleh pemakai. Disebut tipe terbilang
karena semua nilai disebut satu persatu.
Contoh :
TYPE hari = (Senin,Selasa,Rabu,Kamis,Jum'at,Sabtu,Minggu);
hari_kerja = (Senin,Selasa,Rabu,Kamis,Jum'at);
situasi = (senang,gembira,sedih,susah);

2.1. Tipe data larik (array)
Larik (array) adalah kumpulan data yang mempunyai tipe data sejenis. Daftar
nomor telpon, daftar kode mata kuliah, vektor, matrik merupakan contoh larik.
Contoh penulisan tipe larik berdimensi satu sbb :
CONST batas = 20;
VAR telpon : ARRAY[1..3] OF STRING[7]; { larik dengan nama telpon
mempunyai 3 data dengan tipe
string }

nilai : ARRAY[1..5] OF INTEGER; { larik dengan nama nilai
mempunyai 5 data dengan tipe
integer }
gaji : ARRAY[1..batas] OF REAL; { larik dengan namagaji mempunyai
20 data dengan tipe real }
Contoh larik yang mempunyai tipe data terbilang atau subjangkauan :
TYPE batas = 0..100;
keadaan = (baru,lama,bagus,jelek);
VAR nilai : ARRAY[1..30] OF 'A'..'B'; { larik dengan nama nilai mempunyai
30 data, dan pengisian data yang
diperbolehkan hanya A, B, C, D,
E }
angka : ARRAY[1..50] OF batas; { larik dengan nama angka
mempunyai 50 data, dan pengisian
data yang diperbolehkan hanya
1,2,3,...,99,100 }
baju : ARRAY[1..10] OF keadaan; { larik dengan nama angka
mempunyai 10 data,dan pengisian
data yang diperbolehkan baru, lama,
bagus, jelek }

Contoh program :
VAR jumlah : INTEGER;
nilai : ARRAY[1..3] OF 'A'..'E';
angka : ARRAY[1..3] OF INTEGER;
BEGIN
nilai[1] := 'C';
nilai[2] := 'B';
nilai[3] := 'A';
angka[1] := 75;
angka[2] := 60;
angka[3] := 90;
jumlah := angka[1]+angka[2]+angka[3];
WRITELN('NILAI = ',angka[2],' MENDAPAT ',nilai[1]);
WRITELN('JUMLAH = ',jumlah);
END.

hasil : nilai 60 mendapat C
jumlah = 225

Contoh penulisan tipe larik berdimensi dua sbb :
VAR tabel : ARRAY[1..3,1..2] OF BYTE; { larik tabel mempunyai 3 baris dan 2
kolom dengan tipe byte }
BEGIN tabel[1,1] := 5; { baris 1, kolom 1 }
tabel[1,2] := 7;
11
tabel[2,1] := 21; { baris 2, kolom 1 }
tabel[2,2] := 18;
tabel[3,1] := 8;
tabel[3,2] := 7;
WRITELN('BARIS 1 KOLOM 2 = ',tabel[1,2]);
END.

hasil : BARIS 1 KOLOM 2 = 7

2.2. Tipe data record dan file
( dibahas pada pembahasan record dan file)

Contoh Program Pascal :
Uses crt;
Var nama:string[20];jabatan:string;
Gaji:longint;
Tunj,ppn,gajibersih:real;
Begin
Clrscr;
Write(‘Nama Karyawan : ‘); readln(nama);
Write(‘Masukkan Jabatan : ‘); readln(jabatan);
If (jabatan=’Direktur’) or (jabatan=’direktur’) then
Begin
Gaji:=3000000;
Tunj:=0.1* gaji;
End
Else If (jabatan=’Manager’) or (jabatan=’manager’) then
Begin
Gaji:=2000000;
Tunj:=0.05* gaji;
End
Else If (jabatan=’Karyawan’) or (jabatan=’karyawan’) then
Begin
Gaji:=1000000;
Tunj:=0.1* gaji;
End
Else
Begin
Gaji:=800000;
Tunj:=0.1* gaji;
End;
Writeln(‘Gaji Bersih : Rp.‘,gaji);
Writeln(‘Tunjangan Jabatan : Rp.‘,tunj:9:2);
Ppn:=0.1*gaji;
Writeln(‘PPN 10 % : Rp.‘,ppn:9:2);
Total:=(gaji+total)-ppn;
Writeln(‘Total Gaji : Rp.‘,total:9:2);
Readln;
End.