Anda di halaman 1dari 27

MAKALAH PEMEROGRAMAN KOMPUTER

STRUKTUR DATA & NOTASI ALGORITMA

Disusun oleh :
Kelompok 3
1. Kardo Simanjuntak: 5162331004
2. Ichan M Manurung : 5163331013
3. Wanjul F.Sirait : 5163331028

PENDIDIKAN TEKNIK ELEKTRO


FAKULTAS TEKNIK
UNIVERSITAS NEGERI MEDAN
2018
KATA PENGANTAR

Puji syukur sama-sama kita ucapkan bagi Tuhan Yang Maha Kuasa, atas berkat
dan karuniaNya penulis dapat merealisasikan makalah ini dengan tepat pada waktunya.
Tujuan penulis membuat makaah ini yaitu untuk memenuhi tugas yang diberikan bapak
dosen. Makalah adalah tugas wajib dalam setiap mata kuliah termasuk mata kuliah
PEMEROGRAMAN KOMPUTER. Makalah ini ditujukan untuk mengembangkan
pengetahuan Mahasiswa atau sebagai materi tambahan yang akan dipelajari dalam
jadwal mata kuliah Aljabar teknik, sekaligus pembuatan makalah ini bermaksud untuk
mengembangkan pengetahuan mahasiswa dalam membuat suatu makalah dengan baik
dan benar. dengan adanya pembuatan suatu makalah, maka dari ini Mahasiswa menjadi
terbiasa untuk membaca terlebih dahulu sebuah buku yang akan dijadikan sebagai
sumber topik bahasan dan jikalau materi belum merasa sempurna maka mahasiswa
tersebut akan semakin mencari materi tambahan itu tepatnya bisa terdapat dari berbagai
sumber seperti ,dari internet, surat kabar, dan dari media lainnya. Dengan kebiasaan
membaca berbagai sumber, wawasan Mahasiswa akan semakin luas.

Penulis berterima kasih kepada dosen Pembina matakuliah ini yang telah
memberikan arahan dalam mengerjakan makalah ini. Dalam makalah ini kami sangat
meyakinkan bahwa isi dari makalah ini masih jauh dari yang diharapkan, oleh sebab
itu penyusun sangat mengharapkan saran dan sumbangan pemikiran yang bertujuan
untuk penyempurnaan makalah ini agar menjadi lebih baik lagi. Atas saran dan
sumbangan pemikiran yang diberikan oleh pembaca kami ucapkan terimakasih.

Medan, 1 September 2018

Kelompok 3
DAFTAR ISI

Daftar Isi ............................................................................................................... i


Bab 1 Pendahuluan……………………………………………………………… 1
1.1 Latar Belakang............................................................................................. 2
1.2 Rumusan Masalah ....................................................................................... 2
1.1 Tujuan .......................................................................................................... 2
Bab 2 Pembahasan
2.1 Pengertian Struktur Data ............................................................................. 2
2.2 Pengertian Algoritma................................................................................... 2
2.1.1 Gambaran umun C++ dan Pascal……………………………………… 4
2.1.2 Gambaran Umum C++………………………………………………… 4
2.1.3 Gambaran Umum Pascal………………………………………………… 5
2.2 Tipe Tipe Data , Konstanta, Variabel, & Operator…………………………. 7
2.2.1 Tipe Data………………………….………………………………………. 7
2.2.2 Variabel………………………….………………………………………… 10
2.2.3 Konstanta………………………….……………………………………… 10
2.3 Input dan Output………………………….………………………………… 11
2.3.1 Output………………………….…………………………………………. 11
2.3.2. Input………………………….………………………………………….. 12
2.4 Operator………………………….………………………………………… 13
2.4.1 Operasi Bilangan Bulat………………………….……………………….. 13
2.4.2 Operasi Pecahan………………………….………………………………. 13
2.4.3 Operasi Boolean………………………….……………………………… 14
2.4.4 Operasi Perbandingan………………………….……………………….. 14
2.5 Kondisional………………………….……………………………………. 15
2.5.1 If-then dan if-then-else………………………….……………………… 15
2.5.2 Case of………………………….………………………………………. 15
2.5.3 Operator Ternary………………………….…………………………….. 16
2.6 Pengulangan………………………….…………………………………… 17
2.6.1 Loop For………………………….……………………………………… 17
2.6.2 Loop While………………………….…………………………………… 17
2.6.3. Loop Repeat………………………….…………………………………. 17
PEMBAHASAN MATERI STRUKTUR DATA DAN ALGORITMA 19
3.1 Array………………………………………………………………………. 19
3.1.1 Inisialisasi Array………………………….………………………………. 19
3.1.2 Akses ke dalam Array………………………….……………………… 20
3.1.3 Array Multidimensi………………………….………………………… 20
3.2 String dan Karakter………………………….…………………………… 22
3.3 Fungsi (Lanjutan)………………………….…………………………….. 23
3.4 Class ………………………….………………………….………………… 25

BAB III Penutu[


3.1 Kesimpulan .................................................................................................. 2
3.2 Saran ............................................................................................................ 2

Daftar Pustaka

LAMPIRAN
BAB I

PENDAHULUAN

1.1 Latar Belakang

Pemograman dalam struktur data ada beberapa macam. Salah satunya adalah
pemograman C++. Dalam pemograman ini biasanya menggunakan berbagai variable
misalnya Struktur data, pointer, Array, Linked List, stack, queue, tree, pohon biner (binari
tree) dan graph / matrik penjajian data.

Makalah ini akan membahas variabel tersebut dimana variable mempunyai ciri
dan umum yang berbeda sesuai dengan tipe file yang di gunakan pembaca. Pemograman
ini merupakan pemograman yang berbeda dari pemograman lainnya misalnya VB, Delphi
atau Pascal namun perbedaan juga tidak begitu signifikan pada pemograman pascal.

1.2 Rumusan Masalah

Makalah ini akan membahas tentang :

1. Konsep dasar struktur data


2. Pointer
3. Array (1 dimensi, 2 dimensi dan multi/banyak)
4. Linked List,
5. Stack
6. Queue
7. Tree
8. Pohon biner (binari tree)
9. Graph / matrik penjajian data.
BAB II

PEMBAHASAN

Komputer pada dasarnya merupakan mesin yang tidak bisa apa-apa. Kita harus
memberikan serangkaian instruksi kepada komputer agar mesin ‘pintar’ ini dapat
memecahkan suatu masalah. Langkah-langkah yang perlu dilakukan dalam
memberikan instruksi kepada komputer untuk memecahkan masalah inilah yang
dinamakan pemrogaman komputer. Adapun langkah-langkah pemrogaman komputer
adalah sebagi berikut: mendefinisikan masalah, menentukan solusi, memilih algoritma,
menulis program, menguji program, menulis dokumentasi, serta merawat program.

Sebelum membuat program, hendaknya kita membuat Flow Chart atau


Pseudocode, sehingga memudahkan kita untuk memahami algoritma serta
memudahkan kita dalam membuat program. Program yang ditulis juga harus jelas,
nyata,dankomplit.

Pada bahasa pemrograman tingkat tinggi, seperti Pascal dan C++, telah tersedia
jenisdata standar integer, yang merupakan jenis data untuk menyimpan bilangan bulat.
Secara algoritmik, jenis data integer tidak mempunyai batas nilai maksimum maupun
batas nilai minimum, namun tidak demikian halnya dalam implementasi pada bahasa
pemrograman. Sebagai contoh pada bahasa Turbo Pascal dan Turbo C, jenis data integer
terbesar diimplementasikan dalam 4 byte data, yang berarti membatasi nilainya dari
2147483648 sampai dengan 2147483647. Pembatasan nilai ini akan meningkatkan
efisiensi kompilator, tetapi di sisi yang lain akan membatasi perhitungan yang bisa
dilakukan. Secara praktis hal ini diatasi dengan menggunakan jenis data real (atau float
pada bahasa C) untuk melakukan perhitungan dengan bilangan bulat yang cukup besar,
akan tetapi solusinya tidak selalu memuaskan. Jenis data real seringkali tidak bisa
dipergunakan pada perhitungan yang menuntut kecermatan tinggi.
1.1 Pengertian Struktur Data

Struktur data adalah cara menyimpan atau merepresentasikan data didalam komputer
agar bisa dipakai secara efisien. Sedangkan data adalah representasi dari fakta dunia
nyata. Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau
direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol.

Struktur Data, meliputi:


a) Struktur data sederhana, misalnya array dan record.
b) Struktur data majemuk, yang terdiri dari:
Linier :Stack,Queue,sertaListdan Multilist.
Non Linier : Pohon Biner dan Graph.
Pemakaian struktur data yang tepat didalam proses pemrograman akan menghasilkan
algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan
lebih efisien dan sederhana.

1.2 Pengertian Algoritma

Algoritma merupakan tahapan-tahapan untuk mencapai hasil. Jadi Algoritma tidak


selalu berhubungan dengan Ilmu Komputer. Misalkan cara membuat cake. Pertama kita
harus mempersiapkan adonan cake. Kemudian apabila adonan tersebut telah jadi,
panaskan oven. Kemudian taruh adonan cake tersebut kedalam Loyang yang telah
dioleskan mentega dan ditaburi sedikit tepung. Apabila adonan tersebut telah
dimasukkan kedalam Loyang,masukkan Loyang yang berisi adonan cake tersebut
kedalam oven yang telah di tentukan suhunya tadi. Tunggulah kira-kira setengah jam.
Maka adonan cake tersebut akan menjadi kue cake.
Di sini saya bukan membahas tentang kue cake, tapi saya hanya memberi
gambaran logis tentang pengertianAlgoritma yang sebenarnya. Yang dapat kita ambil
dari contoh di atas adalah untuk menghasilkan sesuatu,maka diperlukan proses. Proses
tersebut terdiri dari tahapan-tahapan yang logis. Jadi menurut pemikiran saya,secara
umum Inti dari algoritma adalah tahapan-tahapan logis yang harus dipenuhi untuk
mencapai suatu hasil.

Sekarang saya akan membahas Algoritma menurut pengertian ilmu Komputer.


Algoritma dalam ilmu Komputer adalah urut-urutan yang logis dan tepat untuk
memecahkan permasalahan yang menggunakan Komputer dengan bahasa
pemrograman yang telah ditentukan seperti bahasa pascal, Visual Basic, C, atau yang
lainnya. Untuk membuat sebuah program, seseorang harus memiliki daya pikir yang
bagus. Dan untuk menghasilkan sebuah program yang berbeda dengan yang lainnya,
maka orang tersebut harus memiliki kreativitas.

Kata Algoritma berasal dari bahasa arab yaitu Algorism yang berarti proses
menghitung dengan angka arab. Sedangkan Algorist adalah orang yang menghitung
dengan menggunakan angka arab. Sebenarnya, Algoritma itu sendiri berasal dari nama
seorang ahli matematika dari Uzbekistan yaitu Abu Abdullah Muhammad Ibn Musa al-
Khwarizmi yang dibaca oleh orang barat menjadi Algorism.
2.1 GAMBARAN UMUM C++ DAN PASCAL
2.1.1 Gambaran Umum C++
Beberapa hal yang perlu diingat mengenai bahasa C++:
a) Komentar dalam C++ menggunakan /* … */ untuk memuat beberapa baris
sekaligus ataumenggunakan // untuk mengabaikan semua karakter di sebelah
kanannya sebanyak 1 baris.
b) Sebuah program dalam C++ harus memiliki fungsi bernama main(), fungsi ini
adalahfungsi spesial karena di situlah main program kita.
c) Dalam C++ sebenarnya juga tidak ada procedure, procedure didefinisikan
sebagai functionyang mengembalikan nilai void.
d) Setiap baris perintah harus diakhiri dengan titik koma ‘;’ kecuali yang diawali
dengan kres‘#’.
e) Blok program diawali kurung-kurawal-buka ‘{’ dan diakhiri kurung-kurawal-
tutup ‘}’.
f) Bahasa C++ juga bahasa yang case-sensitive, jadi perhatikan dalam penamaan
variabel,type, maupun pemanggilan fungsi-fungsi yang sudah ada.
g) Perintah terakhir di dalam main() yaitu return 0 digunakan untuk
mengindikasikan bahwa
h) program tersebut sukses berjalan.

2.1.2 Gambaran Umum PASCAL

Beberapa hal yang perlu diingat mengenai bahasa C:


a) Komentar dalam C menggunakan /* … */ dan bisa memuat beberapa baris
sekaligus.
b) Sebuah program dalam C harus memiliki fungsi bernama main(), fungsi ini
adalah fungsispesial karena di situlah main program kita.
c) Dalam C sebenarnya tidak ada procedure, procedure didefinisikan sebagai
function yang
d) mengembalikan nilai void (void = sesuatu yang tidak ada).
e) Setiap baris perintah harus diakhiri dengan titik koma ‘;’ kecuali yang diawali
dengankres ‘#’.
f) Blok program diawali kurung-kurawal-buka ‘{’ dan diakhiri kurung-kurawal-
tutup ‘}’.
g) Bahasa C adalah bahasa yang case-sensitive, jadi perhatikan dalam penamaan
variabel,type, maupun pemanggilan fungsi-fungsi yang sudah ada.
h) Perintah terakhir di dalam main() yaitu return 0 digunakan untuk
mengindikasikan bahwaprogram tersebut sukses berjalan. Pada beberapa kontes
pemrograman, hal ini merupakansalah satu syarat diterimanya program.
(Program yang tidak me-return exit code 0dianggap mengalami runtime error.)

Deskripsi Pascal C C++


Assignment varx:integer; intx=a+b; intx=a+b;

Increment inc(i)ataui:=i+1 i++atau++i i++atau++i


x:=a+b;
Output writeln(‘i=’,i); printf(“i=%d\n”,i) std::cout<<”i=”<<i<<”\n”;
Input read(i); scanf(“%d”,&i);
; std::cin>>i
operasinumerik vari:integer; inti; inti;
i%10 i%10
idiv10 i/10 i/10
Kondisional imod10 i/10 begin
if(a<>b)then if(a!=b) if(a!=b)
(float)i/10.0 (float)i/10.0
sama:=false; { {

end else sama=0; sama=false;


begin
} }
Pengulangan fori:=1to10do for(i= for(i=1;i<=10;i++)
sama:=true;
else else
begin 1;i<=10;i++) {
end;
{ {
Fungsi fak:=fak*i;
functionplus(x:integer):boolean; {
intplus(intx) fak*=i;
boolplus(intx)

sama=1; sama=true;
end;
begin { fak*=i; }
{
Prosedur proceduretambah(varx:integer); voidtambah(int*x)
} voidtambah(int&x)
}
plus:=(x>=0); } return(x>=0); return(x>=0);
begin { {
end; } }
x:=x+1; *x++; x++;

end; } }
2.2 Tipe Data , Konstanta, Variabel, & Operator
2.2.1 Tipe Data
a) Tipe Data Integer

NilaiMin NilaiMax Pascal C C++

-128 127 shortint Char char

-32,768 32,767 integer Int int

-2,147,483,648 2,147,483,647 longint Long long

0 255 byte unsignedchar unsignedchar

0 65,535 word unsignedint unsignedint

0 4,294,967,295 longword unsignedlong unsignedlong

b) Tipe Data Desimal

Nilainegatif Nilai positif Pascal C C++

+38 -38 -38 +38 real float float

-3.4x10 s/d-3.4x10 3.4x10 s/d3.4x10


+308 -308 -308 +308 double double double

-1.7x10s/d-1.7x10 1.7x10s/d1.7x10

c) Tipe Data Karakter & String

Pascal C C++
Typename=string[30]; typedefcharname[31]; typedefstd::stringname;

1. UntukC,tidakada typedata
khususstring,sehinggastringdidefinisikansebagaiarray ofchar.
2. PadaPascal,name:string[30]artinyakarakterdiisidari
name[1]..name[30]sedangkandalamCcharname[31]artinya
karakterdiisidariname[0]..name[30].
3. UntukC++,untukmenggunakantypestringharusada#include<string>diawal.
4. Programharusmenggunakanstd::string.

d) Tipe Data Boolean

Pascal C C++
Type typedefinttabel[11]; typedefinttabel[11];

tabel=array[0..10]of
integer;
Type typedef typedef

matrix=array[0..20,0..30] floatmatrix[21][31]; floatmatrix[21][31];

ofreal;
1. Formatdeklarasinya:typedef<type-elemen><nama-
type>[<banyaknyaelemen+1>];
2. PadaCdanC++ indeksarrayselaludimulaidari0.
3. Jadijikaditulisinttabel[11]artinya adatabel[0]…tabel[10].
4. Contohcara pengaksesan: tabel[2],matrix[5][29]

e) Typedataenumerasi

Pascal C C++

typehari=(senin, typedefenum typedefenum

selasa,rabu,kamis, {senin,selasa, {senin,selasa,rabu,


jumat,sabtu); rabu,kamis,jumat, kamis,jumat,sabtu;
sabtu;
}hari;
}hari;
1. Jadiformat: typedefenum{<elemen-elemen>}<nama-type>;
2. Untuk contoh di atas, pada C dan C++ senin akan bernilai 0, selasa=1,
rabu=2 dst…jika ditulis
typedef enum
maka senin bernilai 3, selasa=7, rabu=8, kamis=9, jumat=10,
sabtu=20.
3. Jadi jika nilai pada elemen tersebut tidak didefinisikan, akan dianggap
+1 dari elemensebelumnya.

f) Typedatapointer

Pascal C C++
typeaddress:^integer; typedefint*address; typedefint*address;
typeaddr:^siswa; typedefsiswa*addr; typedefsiswa*addr;

{typesiswaadadiatas} /*typesiswaadadi //typesiswaadadiatas


atas*/

Ketikakita
menggunakanPascal,kitahampirtidakperluberurusandenganpointer,tapi diC
mautidakmaukitaharusberurusandengantipedatasatuini.

Pointertidak menyimpannilai,pointerhanyamenyimpanalamat memorydarinilai


yangdisimpan,jadibukannilaiitusendiri.MisaladdressP;maka*P=10akan
membuatnilaiyangditunjukolehP berubahmenjadi10,
tapiPitusendiritidakberubah,Ptetap menunjukalamatyang sama.
2.2.2Variabel

SyntaxuntukdeklarasidanassigmentvariabeldalamC&C++berbedadenganPascal.
Pascal C C++
angka:integer; intangka; intangka;
floathasil; floathasil;
hasil:real;
chartabel[11]; chartabel[11];
tabel:array[0..10]ofchar; charnama[31];
std::stringnama;
nama:string[30];
angka:=10; angka=10; angka=10;
hasil:=23.98; hasil=23.98; hasil=23.98;
tabel[7]:=‘S’; tabel[7]=‘S’; tabel[7]=‘S’;

nama:=‘alexander’; strcpy(nama,”alexander”); nama=“alexander”;


Jikapada Pascalbagianuntukdeklarasivariabelharusdiawalidenganvardanberada
sebelummainprogram,halinitidakadadalamC& C++,kitabisamendeklarasikan
variabeldi manapun.
a) Aturanpenamaanvariabel:
a. case-sensitive
b. diawalidenganhuruf
c. bolehterdiridarihuruf,angka,atauunderscore‘_’
d. tidakbolehadavariabelganda,maupunkonflikdenganreservedword
b) Operatoruntukassignmentadalah‘=’jadijangansampaitertukardenganoperatorko
mparasi‘==’.
c) PadaC&C++kitabisa
menyingkatdeklarasidanassignmentsekaligus,contoh:intangka=10;floathasil=2
3.98;Formatdeklarasivariabelsangatmiripdenganformatdeklarasitype.Bedanyah
anyatidakadanyakatakuncitypedef.

2.2.3Konstanta

Pascal C C++

constpi= Ada2cara: Ada2cara:

3.1415926; constfloatpi=3.1415926; constfloatpi=3.1415926;

atau: atau:

#definepi3.1415926 #definepi3.1415926
PadaC&C++konstantabiasaharustetap dideklarasikantype-nya.
a. #defineadalah makro,dimana
fungsinyamiripfind&replacepadatexteditor.
b. Formatnya:#define<nama><nilai>,carakerjanyaadalah
mencari<nama>di seluruhcodedanmengubahnyamenjadi<nilai>.

2.3InputdanOutput
2.3.1Output

Pascal C C++

write(‘Apakabar?’); printf(“Apakabar?”); std::cout<<“Apakabar?”;


writeln(‘Baik- printf(“Baik-baik saja\n”); std::cout<<“Baik-baik
baik saja’); saja\n”
vari:integer; inti; inti;

... ... ...


writeln(‘nilai i adalah printf(“nilai i adalah std::cout << “nilai i adalah

’,i); %d\n”,i); ” << i << “\n”;


var c:char; f: real; char c; float f; char c; float f;

... ... ...

writeln(‘c = ’,c,’ f = printf(“c = %c f = std::cout << “c = ” << c <<


UntukC,perlu#include<stdio.h>diawal program. “f = ” << f << “\n”;
’,f); %f\n”,c,f);
UntukC,outputmenggunakanfungsiprintf(printformatted)
Formatnya:printf(“<stringbesertaformatvariabel>”,<variabel>[,<variabel>,...])
;
Jadi,bentukdarikeluarandituliskanduluformatnyasebagaiparameterpertamaprintfdalamb
entukstring(diapitolehpetik).
Yangmembedakantextbiasa denganformatvariabeladalahtanda%. Daftar
formatyangada:
%iatau%d Int
%liatau%ld Long
%u unsignedint
%ul unsignedlong
%c Char
%f Float
%lf longfloat
%s String

Selain format,adakarakter-karakterkhusus,contoh:‘\n’untukakhir baris


a. UntukC++,perlu#include<iostream>di awalprogram.
b. UntukC++,outputmenggunakanstd::cout
c. Karakter-karakterkhususpadaCjuga berlakupadaC++.

2.3.2.Input

Pascal C C++

var i:integer; inti; floatf; inti; floatf;


charcc; charcc;
f:real;

read(i);
cc:char; scanf(“%d”,&i); std::cin>>i;
read(f); scanf(“%f”,&f); std::cin>>f;
read(cc); scanf(“%c”,&cc); std::cin>>cc;

UntukC,perlu#include<stdio.h>diawal program.
a. UntukC,inputmenggunakanscanf(scanformatted).
Formatyangdigunakanhampirsamadenganprintf,namunsetelahstring
format,yangdiisibukannamavariabel,
melainkanpointerdariarraytersebut.Makanyauntuk
memasukkannilaidesimal(%f)kedalamvariabelfdigunakanpointerf(&f).
b. UntukC++,perlu#include<iostream>di awalprogram.
c. UntukC++,inputmenggunakanstd::cin.
2.4Operator
2.4.1OperasiBilanganBulat

Operatoryangdigunakanpadabilanganbulatdanmenghasilkanbilanganbulatjuga:
Definis Pascal C C++
Penjumla
i + + +
Penguran
han - - -
Perkalian
gan * * *
Hasilbagi div / /
Sisa bagi mod % %
Incremen inc(x); x++;atau++x x++;atau++x
xt x+a inc(x,a); x+=a;
; x+=a;
;
Decreme dec(x); x--;atau–-x; x--;atau--x;
xnt x- a dec(x,a); x-=a; x-=a;

a) Adaperbedaanantarax++dengan++xdanantara x--dengan--xmeskipunhasiL
akhirnya sama.
b) Jikadijalankan:intx=1;printf(“%d”,x++);makayangkeluaradalahangka1.Nila
ixsetelahituadalah 2.Tapijika
dijalankan:intx=1;printf(“%d”,++x);makayangkeluaradalah2.
Nilaixsetelahituadalah 2.
c) Begitujuga denganx-- dan--x.

2.4.2OperasiPecahan

Operatoryangdigunakanpadabilanganpecahandanmenghasilkanpecahanjuga:
Definisi Pascal C C++
Penjuml + + +
Pengura
ahan - - -
Perkalia
ngan * * *
Pembag
n / / /
ian
PadaC&C++,operatorpembagi‘/’
menggunakanlambangyangsama.Jika/dioperasikan
pada2buahbilanganbulat,maka
otomatismenjadioperasidiv,sedangkanjikasalahsatu operand-
nyapecahanmakaotomatismenjadioperasipembagianbiasa.
2.4.3OperasiBoolean

Operatoryangdigunakanuntukmemanipulasitrue danfalse:
Definisi Pascal C C++
Negasi Not ! !
Konjungsi And && &&
Disjungsiinklu Or || ||
Disjungsiekslu
sif Xor ^ ^
sif

2.4.4OperasiPerbandingan

Operatoryangdigunakanuntukmembandingkannilaibilangandenganbilanganlain:
Jangansampaitertukarantara operatorassignment‘=’denganoperatorpembanding‘==’.
Definisi Pascal C C++
Samadengan = == ==
Tidaksamadengan <> != !=
Kurangdari < < <
Kurangdarisama dengan <= <= <=
Lebihdari > > >
Lebihdarisamadengan >= >= >=

HaliniseringterjadipadaorangyangterbiasadenganPascaldanberalihkeC.
2.5Kondisional
2.5.1If-thendanif-then-else
Pascal C C++
if(a>b)then begin if(a>b) if(a>b)

a:=b; { {

end; a=b; a=b;


if((ymodx)=0) if((y%x)==0) if((y%x)==0)
} }
thenbegin { {
write(‘Divisible’); end
printf(“Divisible”); std::cout<<“Divisible”;
else
} }
begin write(‘Not
else else
divisible’);
{ {
end;
a) Syntaxif..then..elsedalamC&C++sama
printf(“Not persis. std::cout<<“Not
b) BedanyadenganPascaladalahtidakadanyakeywordthenjadiinstruksisetelahif()ak
divisible”); divisible”;
an dilaksanakanjikatrue.
} }

2.5.2Caseof
Pascal C C++

casebulanof switch(bulan) switch(bulan)

1:begin...end; { {

2:begin..end; case1:... case1:...

... break; break;

end; case2:... case2:...

break; break;

... ...

} }
casebulanof switch(bulan) switch(bulan)

1,3,5,7,8,10,12: { {

begin case1: case1:

days:=31; case3: case3:

end; ... ...

4,6,9,11: case12: case12:

begin days=31; days=31;

days:=30; break; break;

end; case4: case4:

2: ... ...

begin case11: case11:

... days=30; days=30;

end; pada C & C++ sama persis.


Syntax case..of break; break;

a) Pada
end; C & C++, harus menggunakan
case2: keyword switch dancase2:
case.
b) Pada C & C++ harus digunakan perintah break karena jika tidak ada
... perintah yang ada di bawahnya.
break,switch akanmembaca sisa ...

} }
2.5.3OperatorTernary
Adacaralainuntuk menuliskanif..then..elseyaitudenganoperatorternary‘?’.
Formatnya:<kondisi>?<if-true>:<if-false>
Contoh:x=(a<b)?a:b;
jikaa =5danb=7 maka barisiniakanmenjadix= a;
tapijikaa= 10danb=5 maka barisiniakanmenjadix=b;
Barisdiatassetaradenganif(a<b){x=a;}else{x=b;};
Keunggulandariternaryadalahsingkat,tetapikelemahannyaadalahtidakbisauntukkondi
si yangagakkompleks.
2.6Pengulangan
2.6.1LoopFor
Pascal C C++
vari:integer; inti; inti;

... ... ...

fori:=1to10do for(i=1;i<=10;i++) for(i=1;i<=10;


SyntaxfordalamC& C++sama persis.
begin { i++)
Format:for(<initialvalue>;<stopcondition>;<incremental>){}
... ... {

end; } ...
2.6.2LoopWhile
}

Pascal C C++

varfound:boolean; unsignedcharfound; boolfound;

... ... ...

while(notfound)do while(!found) while(!found)

begin { {

... ... ...

a) end;
Syntax while dalam C}& C++ sama persis. }
b) Format: while (<kondisi-lanjut>) {}
c) Tidak ada keyword do pada while, deretan perintah setelah while() itulah yang
akandieksekusi.
2.6.3. Loop Repeat

Pascal C C++

Repeat do do

... { {

until(i>j); ... ...

} }

while(i<=j); while(i<=j);
RepeatuntildalamC&C++adalahdo..whiledansyntaxnyasamauntukC
maupunC++.
a) Format:do{}while(<kondisi-lanjut>);
Keyworddo..whiletidakbertindaksebagaibegin..endsehinggadiperlukan{dan}ji
kainginmengeksekusibeberapabarisperint
BAB III

PENUTUP

A. Kesimpulan

Data adalah representasi dari fakta dunia nyata. Fakta atau keterangan tentang kenyataan yang
disimpan, direkam atau direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol.
Pengertian data ini menyiratkan suatu nilai yang bisa dinyatakan dalam bentuk konstanta / variable.
Konstanta digunakan untuk menyatakan nilai tetap sedangkan variable digunakan dalam program
untuk menyatakan nilai yang dapat berubah-ubah selang eksekusi berlangsung.

Struktur data adalah cara menyimpan atau merepresentasikan data didalam komputer agar bisa
dipakai secara efisien. Sedangkan data adalah representasi dari fakta dunia nyata. Fakta atau
keterangan tentang kenyataan yang disimpan, direkam atau direpresentasikan dalam bentuk tulisan,
suara, gambar, sinyal atau simbol.

B. Saran

 Bagi pembaca di harapkan mengamalkan ilmu yang di dapat setelah membaca makalah ini.
 Dan jika makalah saya ada kata – kata yang tidak berkenan di hati anda saya minta maaf
DAFTAR PUSTAKA

1. Heriyanto, Imam, Budi Raharjo (2003). Pemrograman Borland C++ Builder. Informatika
2. Bandung.. Indrajit, Richardus Eko. Manajemen Sistem Informasi dan Teknologi Informasi.
Indrajit, Richardus Eko. Kajian Strategis Analisa Cost-Benefit Investasi Teknologi Informasi. Lidya,
Leoni, rinaldi Munir (2002). Algoritama dan Pemrograman dalam Bahas Pascal dan C.
3. Informatika Bandung. Sanjaya, Dwi (2005). Asyiknya Belajar Struktur Data di Planet
C++. Elex Media
4. Komputindo. Solichin, Achmad (2003). Pemrograman Bahasa C dengan Turbo C. Materi Kuliah
Struktur Data - Tree Structure.pdf
5. Modul Praktikum “Struktur Data” Laboratorium Dasar Komputer. Program Ilmu Komputer
Universitas Sriwijaya 2006. Copyright@PIK-Unsri Maret 2006.pdf
6. IlmuKomputer.Com. Wahono, Romi Satria(2003). Cepat MahirBahasa. IlmuKomputer.Com

Anda mungkin juga menyukai