Anda di halaman 1dari 60

LAPORAN

PEMROGRAMAN DATA SPASIAL LANJUT

Diajukan untuk memenuhi persyaratan dalam menyelesaikan Mata


Kuliah Pemrograman Data Spasial Lanjut.
Yang dibina oleh :
Ir. Jasmani, M.Kom.

DISUSUN OLEH:

Eko Haryanto (17.25.028)


Muhammad Zhorif Nasri (17.25.038)
Vikanisa Rahmadany (17.25.067)
Kevinsano Teniwut (17.25.079)

JURUSAN TEKNIK GEODESI DAN GEOINFORMATIKA

FAKULTAS TEKNIK SIPIL DAN PERENCANAAN

INSTITUT TEKNOLOGI NASIONAL

MALANG

2020
LEMBAR PERSETUJUAN
LAPORAN PEMROGRAMAN DATA SPASIAL LANJUT

Laporan Pemrograman Data Spasial Lanjut ini dapat diajukan sebagai


syarat kelulusan mata kuliah Pemrograman Data Spasial Lanjut di Jurusan Teknik
Geodesi, Fakultas Teknik Sipil dan Perencaan, Institut Teknologi Nasional
Malang tahun ajaran 2019/2020.
Persetujuan ini diberikan kepada :
Nama : Eko Haryanto (17.25.028)
Muhammad Zhorif Nasri (17.25.038)
Vikanisa Rahmadany (17.25.067)
Kevinsano Teniwut (17.25.079)
Jurusan : Teknik Geodesi S-1
Laporan ini disetujui oleh dosen pembimbing mata kuliah Pemrograman
Data Spasial Lanjut di Institut Teknologi Nasional Malang.

Dosen Pembimbing

Ir. Jasmani, M.Kom

ii
KATA PENGANTAR

Puji syukur kami panjatkan kepada Tuhan Yang Maha Esa, karena atas
limpahan rahmat dan karunia-NYA sehingga kami dapat menyelesaikan laporan
mata kuliah Pemrograman Data Spasial Lanjut tepat pada waktunya.
Laporan Pemrograman Data Spasial Lanjut ini kami tulis sebagai bentuk
fisik dari hasil perkuliahan dan praktikum mata kuliah Pemrograman Data Spasial
Lanjut yang telah dilaksanakan selama ini.
Dalam penulisan laporan ini tentunya masih banyak kekeliruan yang
terjadi tanpa kami sadari. Untuk itu, kami mengharapkan kritik dan saran yang
bersifat membangun dari para pembaca agar kesalahan-kesalahan yang ada tidak
terulang kembali dalam penulisan laporan selanjutnnya.
Dalam tahap penulisan laporan ini kami mendapatkan banyak bimbingan,
kritik, dan saran dari berbagai pihak yang sangat membantu terselesainya laporan
Pemrograman Data Spasial Lanjut ini. Untuk itu, kami mengucapkan terima kasih
kepada :
1. Kedua orang tua kami yang telah banyak memberikan semangat, doa,
dan bantuan baik moral maupun material dalam penulisan laporan ini.
2. Bapak Ir. Jasmani, M.Kom selaku dosen pengampu mata kuliah
Pemrograman Data Spasial Lanjut atas arahan dan bimbingannya
selama ini.
3. Teman-teman mahasiswa jurusan Teknik Geodesi atas support, saran,
dan masukkannya demi terselesaikannya laporan ini.

Malang, April 2020

Penulis

iii
DAFTAR ISI

Lembar Asistensi...........................................................................................................i
Lembar Persetujuan.....................................................................................................ii
Kata Pengantar.............................................................................................................iii
Daftar Isi........................................................................................................................iv
BAB I Pendahuluan.....................................................................................................1
1.1 Latar Belakang............................................................................................1
1.2 Tujuan Praktikum.......................................................................................2
1.3 Batasan Praktikum......................................................................................2
BAB II Dasar Teori.......................................................................................................3
2.1 Pengenala Bahasa C++...............................................................................3
2.2 Fitur-fitur C++................................................................................................... 4
2.3 Struktur Kode proram C++.........................................................................5
2.4 Aturan Bahasa C++.....................................................................................7
2.5 Perintah Dasar C++...........................................................................................7
2.6 Elemen Dasar Bahasa Pemograman C++…………………….......................9
2.7 Tipe Kata Dasar..........................................................................................13
2.8 Pointer,Array(Tipe gabungan)....................................................................13
2.9 Perulangan/Looping....................................................................................15
2.10 Operator....................................................................................................17
2.11 Pengambilan Keputusan...........................................................................21
2.12 Microsoft Visual Basic Studio..................................................................22
BAB III Pelaksanaan praktikum.................................................................................23
3.1 Langkah dalam Membat Lembar Kerja C++,Proses Build, dan Proses
Debug...........................................................................................................23
3.2 Project Program Biodata.............................................................................26
3.3 Project Program Perhitungan........................................................................... 27
3.4 Project Program Pointer Array........................................................................ 27
3.5 Project Program Looping................................................................................. 28
3.6 Project program if else...................................................................................... 29

iv
BAB IV Hasil dan Pembahasan..................................................................................30
4.1 Program sederhana Untuk Menampilkan Biodata......................................30
4.2 Program Perhitungan..................................................................................32
4.3 Program Pointer Array.....................................................................................34
4.4 Program Looping.............................................................................................. 36
4.5 Program If Else...........................................................................................38
BAB V Penutup..................................................................................................................... 41
5.1 Kesimpulan.................................................................................................41
5.2 Saran................................................................................................................... 42
Daftar Pustaka..............................................................................................................43
Lampiran

v
BAB I
PENDAHULUAN

1.1 Latar Belakang


Bahasa pemrograman atau biasa dikenal dengan bahasa komputer
merupakan sekumpulan instruksi standar yang digunakan untuk
memerintahkan sebuah komputer. Instruksi ini berisi sintaks dengan
bahasa yang dapat dimengerti oleh sebuah komputer. Bahasa ini
memungkinkan seorang programer dapat menentukan secara pasti data-
data yang akan diolah oleh komputer dan jenis langkah yang akan diambil
pada situasi tertentu.
Dalam perkembangannya terdapat tiga jenis tingkatan dalam
bahasa pemrograman, diantaranya yaitu, bahasa pemrograman tingkat
rendah, bahasa pemrograman tingkat menengah, dan bahasa pemrograman
tingkat tinggi. Bahasa pemrograman tingkat rendah merupakan bahasa
pemrograman yang sangat sulit untuk dimengerti, hal ini dikarenakan
instrtuksi pada bahasa ini menggunakan bahasa mesin. Bahasa
pemrograman tingkat menengah merupakan bahasa yang memungkinkan
programer sudah mulai bisa menggunakan bahasa sehari-hari meskipun
masih terdapat banyak perintah yang menggunakan inisial atau singkatan.
Bahasa pemrograman tingkat tinggi merupakan bahasa yang paling mudah
dimengerti dari ketiga bahasa ini, hal ini dikarenakan bahasa tingkat tinggi
sudah terstruktur dengan baik dan menggunakan bahasa sehari-hari.
Seorang programer dapat menggunakan beberapa macam bahasa
tingkat tinggi diantaranya yaitu C++, C#, Visual Studio, COBOL, Fortran,
pascal, dan lain sebagainya. Pada kenyataannya, masih banyak kalangan
yang belum paham cara membuat bahasa pemrograman dengan baik dan
benar walaupun sudah tersedianya bahasa tingkat tinggi sebagai bahasa
yang paling mudah untuk dimengerti. Untuk itu, pada laporan ini akan
dibahas lebih khusus mengenai bahasa pemrograman tingkat tinggi C++
dengan tipe data yakni Array, Pointer, Function, Class, dan pemrograman
C# untuk pembuatan aplikasi dalam geodesi.
1.2 Tujuan Praktikum
Tujuan dari pelaksanaan dan pembuatan laporan praktikum
pemrograman data spasial lanjut ini adalah :
1. Mahasiswa dapat memahami dan mengaplikasikan mengenai
Pemrograman Data Spasial Lanjut.
2. Agar Mahasiswa dapat membuat bahasa pemrograman C++ dan C#
dari suatu persoalan yang ada.
3. Agar Mahasiswa dapat mengetahui komponen-komponen dari C++
dan C#.
4. Mahasiswa dapat menggunakan software Microsoft Visual Studio
dan Def C++ dengan baik dari membuat project sampai membuat
bahasa pemrogramannya.
5. Mahasiswa dapat membuat bahasa pemrograman dengan tipe data
array pada C++.
6. Mahasiswa dapat membuat bahasa pemrograman dengan tipe data
pointer pada C++.
7. Mahasiswa dapat membuat bahasa pemrograman dengan tipe data
function pada C++.
8. Mahasiswa dapat membuat bahasa pemrograman dengan tipe data
class pada C++.
9. Mahasiswa dapat membuat bahasa pemrograman Aplikasi dalam
Geodesi pada C#.

1.3 Batasan Praktikum


Adapun batasan-batasan yang penyusun buat pada laporan
pemrograman data spasial lanjut ini adalah :
1. Pembuatan bahasa pemrograman dengan tipe data array pada C++.
2. Pembuatan Bahasa pemrograman dengan tipe data pointer pada C++.
3. Pembuatan Bahasa pemrograman dengan tipe data function pada C++.
4. Pembuatan Bahasa pemrograman dengan tipe data class pada C++.
5. Pembuatan Bahasa pemrograman Aplikasi dalam Geodesi pada C#.

2
BAB II
DASAR TEORI

2.1 Pemrograman Data Spasial


Merupakan sebuah bidang yang mempelajari tentang perangkat
lunak untuk memproses suatu data spasial. Data spasial adalah sebuah data
yang berorientasi geografis dan memiliki sistem koordinat tertentu sebagai
dasar referensinya. Saat ini data spasial menjadi media penting untuk
perencanaan pembangunan dan pengelolaan sumber daya alam yang
berkelanjutan pada cakupan wilayah nasional, regional maupun lokal.
Pemanfaatan data spasial semakin meningkat setelah adanya teknologi
Penginderaan Jauh dan Sistem Informasi Geografi.
Pemrograman atau penataolahan adalah proses menulis, menguji
dan memperbaiki (debug), dan memelihara kode yang membangun suatu
program komputer. Kode ini ditulis dalam berbagai bahasa pemrograman.
Tujuan dari pemrograman adalah untuk memuat suatu program yang dapat
melakukan suatu perhitungan atau 'pekerjaan' sesuai dengan keinginan si
pemrogram. Untuk melakukan pemrograman, diperlukan keterampilan
dalam algoritma, logika, bahasa pemrograman, dan pada banyak kasus,
pengetahuan-pengetahuan lain seperti matematika. Pemrograman adalah
suatu seni dalam menggunakan satu atau lebih algoritma yang saling
berhubungan dengan menggunakan suatu bahasa pemrograman tertentu
sehingga menjadi suatu program komputer. Bahasa pemrograman yang
berbeda mendukung gaya pemrograman yang berbeda pula. Gaya
pemrograman ini biasa disebut paradigmaa pemrograman. (Wikipedia.org)
Pengelolaan, pemrosesan dan analisa data spasial biasanya
bergantung dengan model datanya. Pengelolaan, pemrosesan dan analisa
data spasial memanfaatkan pemodelan SIG yang berdasar pada kebutuhan
dan analitiknya.

2.2 Pengenalan Bahasa C++


Bahasa C++ adalah bahasa pemrograman yang dapat dikatakan
berada di antara bahasa beraras rendah dan beraras tinggi. Bahasa beraras

3
rendah artinya bahasa yang berorientasi pada mesin dan beraras tinggi
berorientasi pada manusia.
Bahasa C++ basisnya adalah pengembangan dari bahasa C, selain
itu C++ juga mendukung bahasa pemrograman berorientasi objek.
Sebenarnya bahasa ini dari awal dikembangkan untuk menulis program
sistem operasi sebuah komputer maupun kompiler. Karena bahasa C++
mengembangkan C sebelumnya maka kemampuannya C++ diperbaiki dan
ditingkatkan daripada bahasa C.
Asal muasal bahasa C++ adalah mulai awal tahun 1980, Bjarne
Stroustrup dari AT & T Bell Laboratories mulai mengembangkan bahasa
C. Pada tahun 1985, lahirlah secara resmi bahasa baru hasil pengembangan
C yang dikenal dengan nama C++. Sebenarnya bahasa C++ mengalami
dua tahap evolusi. C++ yang pertama, dirilis oleh AT&T Laboratories,
dinamakan cfront. C++ versi kuno ini hanya berupa kompiler yang
menterjemahkan C++ menjadi bahasa C. Pada evolusi selanjutnya,
Borland International Inc. mengembangkan kompiler C++ menjadi sebuah
kompiler yang mampu mengubah C++ langsung menjadi bahasa mesin
(assembly). Sejak evolusi ini, mulai tahun 1990 C++ menjadi bahasa
berorientasi obyek yang digunakan oleh sebagian besar programmer
professional.
C++ sangat populer, tidak hanya karena gabungan antara aras
tinggi dan aras rendah, tetapi juga karena sifat portabilitas yang
dimilikinya, ini artinya C++ dapat ditulis pada satu jenis komputer dan
dapat dijalankan pada jenis komputer lain yang berbeda. Hal ini biasanya
membutuhkan kompiler ulang pada jenis sistem komputer yang akan
digunakan, tetapi program yang ditulis tersebut tidak ada perubahan. Salah
satu sistem operasi yang ditulis dengan menggunakan C++ adalah X-
Window sistem dan sistem operasi yang dimiliki oleh Macintosh.
2.2.1 Fitur-fitur C++
Merupakan salah satu bahasa pemrograman yang paling
banyak digunakan di dunia dan hampir semua program di dunia
dibuat dengan menggunakan C/C++.

4
 Portable. Karena memiliki banyak kompiler yang berjalan di
berbagai platform dan secara eksklusif menggunakan Standar
Library C++ yang akan berjalan pada banyak platform dengan
tidak adanya perubahan fungsi-fungsi pada Library C++.
 Mendukung Manifest dan Inferred Typing. Fitur tersebut sudah
ada semenjak kelahiran C++ pertama hingga C++ Modern saat
ini, C ++ memungkinkan fleksibilitas dan juga menyediakan
kesederhanaan dalam menulis program.
 C++ Menawarkan banyak pilihan paradigmaa. Beberapa adalah
paradigma yang sangat terkenal dalam C++ adalah
menawarkan dukungan luar biasa untuk Pemrograman
Prosedural, Generik, Berorientasi Objek (OOP) dan masih
banyak paradigma yang memberikan kemudahan untuk
programmer C++.
 Memiliki dukungan Library yang luar biasa. C++ memiliki
Standar Library C++ yang memiliki banyak sekali fungsi dan
tidak hanya itu, banyak juga programmer lain yang
mengembangkan C++ dan membuat Library tambahan yang
sangat berguna.
 Bahasa yang dikompilasi. C ++ mengkompilasi langsung ke
bahasa mesin, yang menjadikanya menjadi salah satu bahasa
pemrograman tercepat di dunia.
 Sekali lagi menawarkan Fleksibilitas dalam mendukung kedua
statis dan dinamis type checking. C++ memungkinkan tipe
conversions untuk diperiksa disaat mengkompilasi program
atau saat jalanya program (run-time).
 C++ merupakan bahasa turunan dari bahasa pemrograman C,
dan C++ dapat menggunakan dan mempunyai semua fasilitas
yang ada dalam bahasa pemrograman C tanpa perubahan
sedikitpun dalam fungsi-fungsi C. dan juga C++ dapat
melakukan pemrograman Assembly langsung di dalam
program yang merupakan fitur turunan dari C.

5
 Dan masih banyak lagi, kalian akan menyadarinya jika sudah
merasakan dan menjadi programmer C++.
2.2.2 Struktur Kode Program C++
#Preprocessor Directive
fungsi utama()
{
    Definisi yang terdiri dari kumpulan pernyataan;
    //komentar
}
Gambar 2.1 Struktur kode program c++
Program C++ selalu tersusun dari 5 (Lima) bagian
utama, yaitu :
1. Preprocessor Directive (Pengarah Kompilator).
2. Declaration (Deklarasi).
3. Definition (Definisi).
4. Statement atau Expressions (Pernyataan atau Ekspresi).
5. Comments (Komentar).
Contoh Dasar Program C++
1 #include <iostream> // Preprocessor Directive (Pengarah
2 Kompilator)
3 int main() //Function utama
4 { //Blok pembuka
5  std::cout<<"Selamat Datang Di Belajar C++"; 
//Pernyataan (Statement)
6 return 0; //Pernyataan
7 } //Blok Penutup
Gambar 2.2 Dasar program c++

1. #Include <iostream> yaitu file-header yang pada dasarnya


digunakan untuk menyatakan bahwa file dari program yang
sedang ditulis menggunakan pustaka (Library) yang di dalamnya
memuat kumpulan keyword dan function. Disebutkan di dalam
kode program bertujuan untuk memberitahu kompiler bahwa file

6
akan menggunakan beberapa fitur yang ada pada pustaka yang
disebutkan.
2. //File-header setelah #include<iostream> adalah komentar,
semua karakter setelah tanda // akan menjadi komentar dan tidak
akan mempengaruhi jalanya program. Komentar digunakan untuk
mempermudah programmer dalam mempelajari program dengan
memberi tanda atau keterangan pada program. Ada dua cara
dalam menggunakan komentar yang pertama adalah dengan tanda
// dan kedua dengan menaruh komentar di antara tanda /* dan */
3. int main() merupakan fungsi utama, fungsi yang akan
dibaca oleh kompilator pertama kali secara otomatis, tidak akan
ada function yang otomatis dibaca oleh kompilator kecuali fungsi
utama int main(), fungsi utama bagaikan sebuah kepala dari
sebuah program yang mengatur arah kompilator. int dalam fungsi
utama adalah sebuah return type integer. Dalam peraturan C++
fungsi utama memang harus menggunakan return type integer.
Dan tepat setelah identifier (identitas) main terdapat sepasang
tanda kurung ( ), itu merupakan tempat dimana kita dapat mengisi
parameter untuk function, tetapi dalam fungsi utama, hal itu tidak
dibutuhkan dan dibiarkan dalam keadaan kosong.
4. Tanda { merupakan sebuah blok pembuka, blok pembuka
memiliki sebuah pasangan yang dinamakan blok penutup, di
dalam contoh program di atas penulis menaruh blok penutup di
baris paling akhir dengan tanda }. Kedua blok tersebut
menyatakan bahwa kode yang diapit oleh mereka adalah satu
ruang lingkup (scope) dan menyatakan bahwa semua kode di
dalam blok tersebut merupakan definsi dari fungsi utama.
5. std::cout<<"Selamat Datang Di Belajar C++"; adalah
sebuah baris pernyataan (Statement) dan merupakan definisi dari
fungsi utama. std::cout merupakan bagian dari library
<iostream>. Berfungsi untuk mencetak sebuah kalimat Selamat
Datang Di BelajarC++ saat program di eksekusi.

7
6. return 0 : merupakan pernyataan pengembalian, untuk
memberitahu kepada sistem operasi bahwa program telah
berakhir secara normal dengan nilai 0 yang berarti tanpa
kesalahan.
2.2.3 Aturan Bahasa C++
Dalam pemrograman C++ tidak ada aturan khusus dalam
penulisan seperti dalam java misalnya dalam java keyword dan
variabel biasanya bersifat key sensitif sedangkan dalam C++ tidak,
hanya saja variabel dan kostanta diharapkan sama dengan yang
dideklarasikan. Berikut beberapa aturan dalam C++ :
 Penulisan setiap akhir dari baris source code harus diakhiri
dengan tanda titik koma (;), kecuali penggunaan file Header
dan deklarasi kostanta.
 Untuk block source code harus diawali dengan tanda kurung
kurawal { dan diakhiri dengan tanda tutup kurung kurawal }.
 Untuk mendeklarasikan lebih dari satu variabel, variabel
tersebut dipisah dengan tanda koma(,).
 Untuk menambahkan pernyataan atau komentar dalam source
code menggunakan tanda // untuk perbaris, sedangkan apabila
banyak maka menggunakan blok /* diakhir pernyataan */.
 Dalam suatu program C++ harus terdapat program utama atau
main program, karena program akan dijalankan mulai dari
main program (Dickynd’s Weblog)
2.2.4 Perintah Dasar C++

a) cin : merupakan sebuah obyek di dalam C++ yang digunakan


untuk memasukkan suatu data dapat berupa teks ataupun
angka. Untuk menggunakan fungsi cin ini, harus menyertakan
file header iostream.
b) cout : merupakan fungsi keluaran untuk menampilkan
informasi di layar. Untuk menggunakan fungsi cout ini, harus
menyertakan file header iostream.h.

8
c) endl : adalah format modifier yang digunakan untuk berganti
baris setelah menampilkan string.
2.2.5 Elemen Dasar Pemrograman C++
a. Identifier
Identifier atau pengenal adalah suatu nama yang biasa
dipakai dalam pemrograman untuk menyatakan variabel,
konstanta, tipe data, dan fungsi. Aturan untuk penulisan
identifier sama dengan aturan dalam pascal, antara lain:
 Tidak boleh dimulai dengan karakter non huruf.
 Tidak boleh ada spasi.
 Tidak boleh menggunakan karakter-karakter ~ ! @ # $ % ^
&*()+`–={}[]:”;‘<>?,./|
 Tidak boleh menggunakan reserved words yang ada dalam
C++.
Identifier, dibagi menjadi dua :
 Konstanta
Konstanta adalah jenis Identifier yang bersifat tetap.
Suatu konstanta harus didefinisikan terlebih dahulu diawal
pemrogram. Konstanta dapat bernilai integner, pecahan,
karakter dan string.
 Variabel
Identifier yang digunakan untuk menampung data
atau informasi.Format deklarasi variabel :

<tipe><nama_variabel>;

<tipe><nama_variabel> = <initial_value>;

Gambar 2.3 format deklarasi variabel

b. Himpunan Karakter
Himpunan Karakter di C++ terdiri atas huruf, digit, simbol,
dan bahkan karakter kontrol (seperti spasi dan *).
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
Gambar 2.4 himpunan karakter huruf

9
Digit : 0 1 2 3 4 5 6 7 8 9

Gambar 2.5 himpunan karakter digit

Simbol dan lain-lain:


\ n *+ Spasi

Gambar 2.6 himpunan karakter simbol


C++ mempunyai cara untuk menyatakan karakter-
karakter yang tidak mempunyai kode tombol (seperti karakter
kontrol).
c. Komentar
Komentar tidak pernah di-compile oleh compiler. Seperti
halnya bahasa pemrograman lainnya, sebuah komentar
digunakan sebagai keterangan dan mempermudah dalam
pemeliharaan. Dalam C++ terdapat 2 jenis komentar, yaitu:
 Jenis 1 :

// Komentar anda diletakkan disini ( hanya bisa perbaris )


Gambar 2.7 contoh komentar jenis 1
 Jenis 2 :

/* Komentar c++ diletakkan di dalam ini


Bisa mengapit lebih dari satu baris */

Gambar 2.8 contoh komentar jenis 2


d. Konstanta
Ada tiga jenis konstanta, yaitu :
1. Konstanta Oktal, digit yang digunakan 0-7.
2. Konstanta Heksadesimal, digit yang digunakan 0-9, A-F.
3. Konstanta Bernama :
 Menggunakan keyword const
Contoh : const float PI = 3.14152965;
Berbeda dengan variabel, konstanta bernama tidak
dapat diubah jika telah diinisialisasi.
 Menggunakan #define
Contoh : #define PI 3.14152965

10
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 PI dengan nilai
3.14152965.
e. Variabel
Variabel adalah simbol dari suatu besaran yang
merepresentasikan suatu lokasi di dalam memori komputer.
Informasi yang tersimpan di dalam lokasi tersebut disebut nilai
variabel. Untuk memperoleh nilai dari suatu variabel digunakan
pernyataan penugasan (assignment statement), yang
mempunyai sintaks sebagai berikut : variable = ekspresi ;
Yang akan diolah terlebih dahulu adalah ekspresi, baru
hasilnya dimasukkan kedalam variabel Tanda “=” adalah
operator penugasan.
2.2.6 Tipe Kata Dasar
Di dalam tabel di bawah ini beberapa tipe Kata dasar yang
terdapat pada C++ beserta keterangannya.

Tipe Keterangan
Char Menyatakan sebuah karakter (bisa berupa huruf seperti A dan a,
digit seperti 0 atau 7, atau simbol seperti * dan &)
Double Menyatakan bilangan titik-mengambang (bilangan real) dengan
ketelitian tinggi
Menyatakan bilangan titik-mengambang (bilangan real) dengan
Float ketelitian rendah
Int Menyatakan bilangan bulat antara -32768 sampai dengan
32767
long Menyatakan bilangan bulat yang berkisar antara -2147483648
int s/d 2147483647

11
Table 2.1 Tipe Kata Dasar

2.3 Pengenalan Bahasa C#


C# adalah bahasa pemrograman baru yang diciptakan oleh
Microsoft yang dikembangkan dibawah kepemimpinan Anders Hejlsberg
yang telah menciptakan berbagai macam bahasa pemrograman termasuk
Borland Turbo C++ dan orland Delphi. Bahasa C# juga telah di
standarisasi secara internasional oleh ECMA. Seperti halnya bahasa
pemrograman yang lain, C# bisa digunakan untuk membangun berbagai
macam jenis aplikasi, seperti aplikasi berbasis windows (desktop) dan
aplikasi berbasis web serta aplikasi berbasis web services.
Pada akhir dekade 1990-an, Microsoft membuat program
Microsoft Visual J++ sebagai percobaan untuk menggunakan Java di
dalam sistem operasi Windows untuk meningkatkan antarmuka dari
Microsoft Component Object Model (COM). Akan tetapi, akibat masalah
dengan pemegang hak cipta bahasa pemrograman Java, Sun
Microsystems, Microsoft pun menghentikan pengembangan J++, dan
beralih untuk membuat pengganti J++. Kompiler dan mmesin vitualnya
sendiri menggunakan sebuah bahasa pemrograman yang bersifat general-
purpose.
Untuk menangani proyek ini, Microsoft merekrut Andres Helsberg,
yang merupakan mantan karyawan Borland, pembuat bahasa Turbo
Pascal, dan Borland Delphi, yang juga mendesain Windows Foundation
Classes (WFC) yang digunakan dalam J++. Sebagai Hasil dari usaha
tersebut, C# pertama kali diperkenalkan pada bulan Juli 2000 sebaga

12
sebuah bahasa pemrograman modern berorientasi objek yang menjadi
sebuah bahasa pemrograman utama di dalam pengembangan di dalam
platform Microsoft .NET Framework.
Bahasa pemrograman C# dibuat berbasiskan bahasa C++ yang
telah dipengaruhi oleh aspek-aspek ataupun fitur bahasa yang terdapat
pada bahasa-bahasa pemrograman lainnya. Pengkodingan sintaks Bahasa
C# dapat dilakukan di dalam beberapa editor (Notepad, Visual Studio 6,
Visual Studio .NET, SharpDevelop, dan yang lainya)
Fitur-fitur yang diambil dari bahasa C++ dan Java adalah desain
berorientasi objek, seperti garbage collection, reflection, akar kelas (root
class), dan juga penyederhanaan terhadap pewarisan jamak (multiple
inheritance). Fitur-fitur tersebut di dalam C# kini telah diaplikasikan
terhadap iterasi, properti, kejadian (event), metadata, dan konversi antara
tipe-tipe sederhana dan juga objek. C# didesain untuk memenuhi
kebutuhan akan sintaksis C++ yang lebih ringkas dan Rapid Application
Development yang tanpa batas (dibandingkan dengan RAD yang terbatas
seperti yang terdapat pada Delphi dan Visual Basic). C# bisa digunakan
untuk membangun berbagai macam jenis aplikasi, seperti aplikasi:
 Aplikasi console.
 Aplikasi berbasis windows (Windows Form).
 Aplikasi ASP.NET (berbasis web).
 Aplikasi Web Services XML.
 Aplikasi berbasis Windows Services .
2.3.1 Struktur Kode Program C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
Static void Main(string[]args)
{

13
Gambar 2.9 struktur kode program C#

a. Keyword using digunakan untuk memberitahu compiler class


apa yang sedang digunakan pada aplikasi.
b. Keyword namespace digunakan untuk mendeklarasikan ruang
lingkup dari class yang dibuat.
c. Class didalam namespace dapat dipanggil dengan
mencantumkan nama spacenya terlebih dahulu.
d. Using system; pada baris pertama mempunyai arti bahwa user
dapat menggunakan clas-class yang ada pada namespace
System.
e. Static menunjukan tipe method void menunjukkan bahwa
method tidak mengembalikan nilai atu objek.
f. Main merupakan nama method utama program C# String
merupakan tipe argumen yang akan diterima sebagai parameter
dari command C#.
g. Args merupakan merupakan array argumen yang dapat
ditambahkan pada saat menggunakan command C# untuk
menjalankan program C#.
2.3.2 Sintaks Dasar C#
a. Perintah Keluaran

Console.Write (“pernyataan dalam


bentuk String”, argument)
b. Cara Menampilkan variable

Console.Write (“Nilai A = {0} , dan


Nilai B = {1}”, A,B)
A,B adalah variabel yang dimasukkan kedalam {0} dan {1}
c. Perintah Membaca inputan

Console.Readline ();

Console.ReadKey();

d. Perintah Konversi

14
Tipedata.Tryparse(variable yang akan
dikonversi, out variable keluaran)
Contoh: int.Tryparse (input, out jumlah) Mengubah isi
dari variabel input yang bertipe data String ke integer, dan
dikeluarkan pada variabel jumlah.

2.3.3 Pengenalan Tipe Data


Tipe data merupakan jenis data yang digunakan pada
program untuk dioperasikan. Pada C# terdapat dua jenis tipe data,
yaitu:
 Tipe data dasar misalkan integer, float, byte, dan sebagainya.
 Tipe data reference misalkan object dan delegates.
Tipe data dasar yang terdapat pada C# adalah:

Gambar 2.10 tipe data dasar C#


Saat kita mendeklarasikan suatu variable dengan tipe data
integer atau int, data tersebut tidak akan bisa diisi dengan huruf.
Kemudian pengisian data tersebut juga tidak menggunakan tanda

15
petik dua (“ ”). Sama halnya dengan double, float, dan decimal,
dimana pengisiannya tidak menggunakan tanda petik dua.
Sedangkan untuk String, harus mendefinisikan suatu nilai dengan
menggunakan tanda petik dua.
2.3.4 Attribute / Variable
a. Variable
Variable adalah nama dari suatu lokasi di memori yang
digunakan untuk menyimpan data sementara. Variable diberi
nama tertentu yang menunjukkan domain yang diwakilinya.
Dalam memberikan nama variable ada beberapa ketentuan yang
harus diperhatikan yaitu:
 Panjang karakter nama variable tidak dibatasi.
 Nama variabel harus diawali dengan huruf, tanda garis bawah
(underscore_) atau tanda $. Selanjutnya dapat diikuti oleh
karakter lain selain operator(*,-,+), dengan kata lain variabel
dapat diawali dengan karakter khusus kecuali operator.
 Tidak diperbolehkan menggunakan kata kunci (keyword)
yang digunakan pada C# (contoh: if, for, while, dll)
 Bersifat case sensitive (membedakan huruf besar dan huruf
kecil).
 Penulisan variable tidak boleh menggunakan spasi.
 Syntax Penulisan variable harus diawali dengan tipe data
terlebih dahulu karena data yang tersimpan dalam variabel
harus memiliki tipe tertentu sebelum digunakan dalam
aplikasi.
Syntax : [tipe_data] [nama_variable]
b. Konstanta
Variable konstanta adalah salah satu jenis variable memiliki
nilai tetap atau tidak dapat diubah. Untuk menuliskan variable
konstanta, sintaksnya adalah:
Syntax : const [tipe_data] [nama_variable]

16
2.4 Array
Array adalah struktur data yang dapat menyimpan sejumlah nilai
bertipe sama, sebagai contoh dapat menciptakan sebuah array yang dapat
menampung 100 nilai bertipe int dan array kedua yang dapat menampung
25 nilai bertipe float. Setiap nilai yang ditugaskan ke array harus bertipe
sama dengan array tersebut. Array juga merupakan variabel yang mampu
menyimpan sejumlah nilai yang bertipe sama. Untuk mendeklarasikan
sebuah array, harus disebutkan tipe dari array yang dibuat misalnya int,
float atau double dan juga ukuran array. Untuk menentukan ukuran array,
perlu ditempatkan jumlah nilai yang dapat disimpan array dalam sebuah
tanda kurung kurawal siku yang terletak sesuai nama array. Deklarasi
berikut sebagai contoh untuk menciptakan array bernama skor yang
mampu menyimpan 100 skor nilai yang bertipe int.
int skor[100];
Pada saat dideklarasikan sebuah array, kompiler C mengalokasikan
memori yang cukup untuk menampung semua elemen sesuai dengan yang
dideklarasikan. Masukan pertama berada pada lokasi 0. Sebagai contoh
berdasarkan array skor, pernyataan berikut menugaskan nilai 80 pada
elemen pertama dari array.
skor[0] = 80;
Karena elemen pertama dari array dimulai dengan offset 0, maka
elemen terakhir dari array adalah satu lokasi sebelum ukuran array.
Berdasarkan array skor diatas, pernyataan berikut menugaskan nilai ke
elemen terakhir dari array.
skor[99] = 75;
Inisialisasi array adalah pemberian nilai default pada array.
Pemberian nilai default ini dilakukan pada saat array dideklarasikan.
Bentuk umum dari inisialisasi array ini adalah sebagai berikut: tipe_data
nama_array [jumlah_elemen] = {nilai1,nilai2,…,nilaiN}
Nilai didalam kurung kurawal disebut dengan Initialization List.

#include <iostream>
using namespace std;
int a[5]={2,4,6,8,10},jumlah=5;
void input(int data,int i) {
a[i] = data; } 17
void tampil(int nElemen) {
for(int i=0; i<nElemen; i++)
cout << a[i] << " ";
Gambar 2.11 contoh program tipe data array
Array Satu Dimensi
Banyak array yang hanya memiliki satu dimensi, seperti
sejumlah orang dari setiap umur. Satu-satunya persyaratan untuk
menentukan elemen adalah usia.
tipe_elemen_array nama_array[jumlah_elemen_array]

misal: float suhu[5];


Setelah suatu array didefinisikan, elemen array dapat diakses
dengan bentuk: nama_array [indeks_array]. Sebagai pemrogram, Anda
harus mengusahakan agar tidak terjadi pengaksesan elemen di luar
jumlah elemen yang didefinisikan. Misalnya, didefinisikan: int
suhu[4];
Harus dipastikan bahwa tidak ada pengaksesan elemen suhu
bernomor di luar 0 sampai dengan 3, karena dapat menyebabkan data
dari variabel atau array lain berubah. Perlu diketahui, C++ tidak akan

18
memberikan pesan kesalahan kalau Anda melakukan pengaksesan
dengan nilai indeks yang berada di luar nilai yang telah didefinisikan.
Array Dua Dimensi
Ada beberapa array dua dimensi, seperti jumlah kantor di setiap
lantai di setiap gedung kampus. Elemen yang dibutuhkan adalah
elemen bangunan dan jumlah lantai.
tipe_elemen_arraynama_array[jumlah_baris_array]
[jumlah_kolom_array];
Array Tiga Dimensi
Beberapa array memiliki tiga dimensi, seperti nilai dalam tiga
dimensi ruang, seperti koordinat x, y, dan z dalam koordinat ruang.
tipe_elemen_array nama_array[ukuran1][ukuran2]...[ukuranN]; misal:
double data_angka[2][3][4];

2.5 Pointer
Pointer adalah tipe data bahasa pemrograman yang nilainya
mengacu untuk menunjuk langsung nilai lain yang tersimpan di tempat
lain dalam suatu memori komputer menggunakan alamat yang ada. Untuk
bahasa pemrograman tingkat tinggi, pointer secara efektif dapat
mengambil tempat pada general purpose registers di bahasa tingkat
rendah seperti bahasa assembly atau kode mesin, tetapi bila memori
tersedia. Pointer adalah implementasi sederhana, lebih konkret tentang tipe
data referensi yang lebih abstrak.
Beberapa bahasa mendukung beberapa jenis pointer, walaupun ada
yang memiliki lebih banyak pembatasan penggunaannya dari pada yang
lain. Sebagai analogi, sebuah nomor halaman dalam buku dapat dianggap
sebagai pointer ke halaman yang sesuai; dereferencing seperti pointer akan
dilakukan dengan membalik ke halaman dengan nomor halaman yang
diberikan.
Dalam ANSI/C, simbol asterisk * digunakan untuk mendeklarasi
sebuah pointer. Bentuk umum pendeklarasian pointer adalah:
tipe_data*nama_pointer; Sebagai contoh: int *p;

19
Simbol asterik * memberitahu kompiler bahwa sebuah pointer
bertipe int dideklarasikan. Pendeklarasian seperti contoh di atas hanya
memberitahukan kompiler bahwa p adalah pointer bertipe int tanpa
memberikan nilai awal apapun kepada p. Jika sebuah pointer tidak diberi
nilai awal secara eksplisit oleh programmer, maka kompiler secara
otomatis memberi nilai NULL sebagai nilai awal kepada pointer tersebut.
Salah satu cara menguji apakah sebuah pointer bernilai NULL adalah:
if(p == NULL) {
:
}
Pointer memiliki 2 operator yakni operator & dan operator *.
Operator &
Operator & merupakan operator alamat. Pada saat
pendeklarasian variabel, user tidak diharuskan menentukan lokasi
sesungguhnya pada memory, hal ini akan dilakukan secara otomatis
oleh kompiler dan operating sistem pada saat run-time. Jika ingin
mengetahui dimana suatu variabel akan disimpan, dapat dilakukan
dengan memberikan tanda ampersand (&) di depan variabel , yang
berarti "address of". Contoh : ted = &input; Penulisan tersebut berarti
akan memberikan variabel ted alamat dari variabel input. Karena
variabel input diberi awalan karakter ampersand (&), maka yang
menjadi pokok disini adalah alamat dalam memori, bukan isi variabel.
Misalkan input diletakkan pada alamat 1776 kemudian
dituliskan instruksi sbb : input = 25; fred = input; ted = &input;
Operator *
Operator * merupakan operator reference. Dengan
menggunakan pointer,kita dapat mengakses nilai yang tersimpan
secara langsung dengan memberikan awalan operator asterisk (*) pada
identifier pointer, yang berarti "value pointed by".
Contoh : beth = *ted; (dapat dikatakan:"beth sama dengan nilai
yang ditunjuk oleh ted") beth = 25, karena ted dialamat 1776, dan nilai
yang berada pada alamat 1776 adalah 25.

20
#include <iostream.h>
#include <conio.h>

void main() {
int x, y; int *px;
x = 89;
y = x;
px = &x;
cout << "Nilai x = " << x << endl;
cout << "Nilai y = " << y << endl;
cout << "Alamat px = " << px << endl;
cout << "Nilai px = " << *px << endl;

getch();
}
Gambar 2.12 contoh program tipe data pointer

2.6 Function
Sebuah function berisi sejumlah pernyataan yang dikemas dalam
sebuah nama. Nama ini selanjutnya dapat dipanggil beberapa kali di
beberapa tempat dalam program. Tujuannya:
1. Memudahkan dalam mengembangkan program. Program dibagi
menjadi beberapa subprogram kecil, sehingga hal ini menjadi kunci dalam
pembuatan program terstruktur.
2. Menghemat ukuran program, karena beberapa perintah yang sama dan
dijalankan beberapa kali dalam program dapat dijadikan satu kali saja
dalam suatu function, kemudian function tersebut dapat dipanggil berulang
kali. Contoh Function I:

#include <iostream.h>
#include <conio.h>
void garis(); // prototype function
void main() // main function
{
clrscr();
garis(); // panggil function
cout << “NIM NAMA MAHASISWA” << endl;
garis(); // panggil function
21
cout << “M0197001 Vikanisa “ << endl;
garis(); // panggil function
Gambar 2.13 contoh program tipe data function

Contoh di atas menggambarkan bagaimana membuat function


untuk membuat garis. Nama functionnya adalah garis. Untuk membuat
suatu function, diperlukan suatu prototype dari function tersebut.
Prototype function memiliki sintaks sbb: returned_value_data_type
nama_function (argumen); Seperti halnya dalam Pascal, suatu function
dapat mengembalikan (return) suatu nilai (value) yang tergantung tipe
datanya. Tipe data value yang dikembalikan inilah yang dimaksud dengan
returned_value_data_type.
Sedangkan argumen merupakan parameter-parameter yang akan
diolah dalam function tersebut. Argumen boleh ada boleh tidak, sesuai
kebutuhan. Apabila parameter argumennya lebih dari satu, cara
penulisannya sbb:
tipe_data param1, tipe_data param2, ...
Contoh penulisan prototype function:
- double kuadrat(int x);
- float luas_segitiga(float alas, float tinggi);
- int jumlah_bil(int x, int y, int z);
Apabila suatu function tidak mengembalikan nilai, maka

22
returned_value_data_type nya diisi void.
Setelah prototype function dibuat, selanjutnya membuat function
tersebut secara detail. Suatu function disebut juga subprogram, oleh karena
itu strukturnya juga sama dengan struktur program utama. Pada contoh
function garis () di atas, detail dari function tersebut adalah:

void garis() // detail function


{
int i;
for(i=0;i<=40;i++)
{
cout << “-”;
}
cout << endl;
}

Gambar 2.14 contoh detail tipe data function

2.7 Class
Suatu tipe data yang didalamnya berisi data (element variable) dan
sebuah fungsi (element functions dalam sebuah struktur yang sama). Class
di dalam C++ adalah suatu tipe data yang didalamnya berisi data (element
variable) dan sebuah fungsi (element functions) dalam sebuah struktur
yang sama. Jika suatu class mendefinsikan class yang sudah ada maka
class baru tersebut disebut class turunan. Sebuah class dikatakan sebagai
class turunan jika class berisikan data dan fungsi anggota yang sama pada
class dasar. Beberapa class dasar yang tidak durunkan yaitu destructor,
constructor, dan beberapa fungsi lainnya yang menyebabkan overlord
operator assignment. Bentuk Class secara umum :

Class NamaClass{

private:
members1;

protected:
members2;

public:
members3; };
23
Gambar 2.15 bentuk umum tipe data class
 Private : Sebuah class yang hanya dapat diakses oleh class yang sama.
 Public : Sebuah class yang dapat diakses oleh class yang sama bisa juga
oleh turunannya.
 Protected : Sebuah class yang dapat diakses oleh class manapun.

2.8 Debugging
Debugging adalah proses menemukan dan menyelesaikan cacat
atau masalah dalam program komputer yang mencegah operasi yang salah
dari perangkat lunak komputer atau sistem. Taktik debugging dapat
melibatkan debugging interaktif, analisis aliran kontrol, pengujian unit,
pengujian integrasi, analisis file log, pemantauan di tingkat aplikasi atau
sistem, dump memori, dan pembuatan profil .
Istilah "bug" dan "debugging" secara populer dikaitkan dengan
Admiral Grace Hopper di tahun 1940-an. [1] Ketika dia sedang
mengerjakan komputer Mark II di Universitas Harvard, rekan-rekannya
menemukan seekor ngengat terjebak dalam sebuah relay dan dengan
demikian menghalangi operasi, di mana dia mengatakan bahwa mereka
"men-debug" sistem. Namun, istilah "bug", dalam arti "kesalahan teknis",
berawal setidaknya pada tahun 1878 dan Thomas Edison (lihat bug
perangkat lunak untuk diskusi lengkap). Demikian pula, istilah
"debugging" tampaknya telah digunakan sebagai istilah dalam aeronautika
sebelum memasuki dunia komputer. Memang, dalam sebuah wawancara
Grace Hopper mengatakan bahwa dia tidak menciptakan istilah itu.
Ngengat ini cocok dengan terminologi yang sudah ada, jadi ia selamat.
Sebuah surat dari J. Robert Oppenheimer (direktur proyek bom atom
"Manhattan" WWII di Los Alamos, NM) menggunakan istilah itu
dalam surat kepada Dr. Ernest Lawrence di UC Berkeley, tertanggal 27
Oktober 1944, [2] mengenai rekrutmen staf teknis tambahan.

24
Entri Kamus Bahasa Inggris Oxford untuk "debug" mengutip
istilah "debugging" yang digunakan dalam referensi untuk pengujian
mesin pesawat dalam sebuah artikel 1945 dalam Journal of the Royal
Aeronautical Society. Sebuah artikel di "Airforce" (Juni 1945 hal. 50)
juga merujuk pada debugging, kali ini kamera pesawat terbang. Bug
Hopper ditemukan pada 9 September 1947. Programmer komputer tidak
mengadopsi istilah ini hingga awal 1950-an. Artikel seminar oleh Gill [3]
pada tahun 1951 adalah diskusi mendalam paling awal tentang kesalahan
pemrograman, tetapi tidak menggunakan istilah "bug" atau "debugging".
Di perpustakaan digital ACM , istilah "debugging" pertama kali digunakan
dalam tiga makalah dari Pertemuan Nasional ACM 1952 [4] [5] [6].. Pada
tahun 1963 "debugging" adalah istilah yang cukup umum untuk disebutkan
secara sepintas tanpa penjelasan pada halaman 1 manual CTSS [7].
(Wikipedia.org)
BAB III
PELAKSANAAN PRAKTIKUM

3.1 Membuat Array dengan Menggunakan C++


Berikut adalah tahapan dalam pembuatan program dengan tipe data
array yang berupa perhitungan penjumlahan dua buah matriks pada C++
yaitu :
1. Membuka software Def C++  File  New  Source File.

Gambar 3.1 Tampilan Awal Software Def C++

25
2. Masukkan coding pada lembar baru di dalam Def C++.

Gambar 3.2 Tampilan Coding pada lembar def C++


3. Kemudian Pilih menu execute  compile.

Gambar 3.3 Tampilan langkah melakukan compile pada def C++


4. Berikut adalah hasil Tampilan setelah dilakukannya Compile. Di
dalam menu tersebut berfungsi untuk mengetahui apakah terdapat
terjadi kesalahan pada coding atau tidak sebelum dilakukannya
running/debugging.

Gambar 3.4 Tampilan Hasil dari compile


5. Ketika telah dilakukan compile (tidak terdapat error), selanjutnya
adalah pilih menu execute  run.

26
Gambar 3.5 Tampilan langkah melakukan run pada def C++
6. Tampilan ini adalah hasil run atau debugging pada coding perhitungan
penjumlahan dua buah matriks dengan menggunakan Array.

Gambar 3.6 Tampilan Hasil run atau debugging pada coding

3.5 Membuat Program Aplikasi dalam Geodesi dengan Menggunakan C#


Berikut adalah tahapan dalam pembuatan program Aplikasi dalam
Geodesi yang berupa perhitungan tinggi terbang di atas MSL
(photogrammetry : parallax) pada C# yaitu :
1. Bukalah software Microsoft Visual Studio 2010  New Project.

27
Gambar Tampilan awal Microsoft visual studio 2010
2. Langkah selanjutnya adalah pada tampilan New Project  Installed
templates  Other Languages  Visual C#  Pilih Windows Forms
Application  Isi nama file pada kolom name kemudian pilih tempat
penyimpanan yang diinginkan pada kolom location  OK.

Gambar tampilan new project Microsoft visual studio 2010


3. Akan muncul tampilan form seperti gambar di bawah ini.

28
Gambar Tampilan form pada Microsoft visual studio 2010
4. Selanjutnya pilih menu view  toolbox.

Gambar Tampilan Tahapan membuka toolbox


5. Berikut adalah tampilan menu toolbox. Pada toolbox digunakan untuk
melakukan desain pada form yang akan dibuat. Di sini kelompok kami
memilihi tools : Label (Penamaan untuk kolom yang tersedia), Textbox
kolom nilai yang dapat di-input), dan Button (untuk memroses nilai
yang telah diinput).

29
Gambar Tampilan Menu Toolbox
6. Untuk mengedit desain atau font pada form, label, text box, dan button
dengan cara contoh klik item label maka akan muncul tampilan seperti
di bawah ini.

Gambar Tampilan properties items


7. Hasil desain yang telah dibuat pada form untuk program aplikasi
dalam geodesi berupa perhitungan tinggi terbang di atas MSL.

30
Gambar Tampilan hasil desain menggunakan tools yang telah dipilih
8. Kemudian masuk ke dalam tampilan coding seperti gambar di bawah
ini. Pada desain (gambar ), klik dua kali pada tools button 
masukkan kode program perhitungan tinggi terbang di atas MSL
seperti tampilan di bawah ini.

Deklarasi Awal

Kode program yang dimasukkan

Gambar Tampilan edit memasukkan kode program pada coding


9. Kemudian lakukan build solution untuk mengecek apakah terdapat
error sebelum debugging. Dengan cara pilih menu build  build
solution.

31
Gambar Tampilan langkah melakukan build solution
10. Berikut hasil dari dilakukannya build solution. Menunjukkan bahwa
tidak terdapat eror dalam coding.

Gambar Tampilan hasil dari build solution


11. Langkah selanjutnya melakukan debugging. Dengan cara pilih menu
debug  debugging.

Gambar Tampilan langkah melakukan debugging


12. Tampilan hasil dari debugging pada coding perhitungan tinggi terbang
di atas MSL dengan menggunakan C#.

Gambar Tampilan hasil debugging program C#


Langkah dalam Membuat Lembar Kerja C++ , Proses Build, dan

32
Proses Debug
Tahapan pembuatan lembar kerja c++ adalah sebagai berikut:
1. Membuka software Microsoft Visual Studio 2010  New Project.

Gambar 3.1 Tampilan awal Microsoft Visual Studio 2010


2. Pilih Visual C++  Empty Project  isi nama project pada kolom
Name  isi lokasi project pada kolom Location  OK.

Gambar 3.2 Tampilan untuk mengisi nama dan lokasi project

3. Pilih Toolbar Project  klik Add New Item.

33
Gambar 3.3 Tampilan untuk memilih new item
4. Pilih Visual C++  C++ File (.cpp)  isi kembali nama
projectAdd.

Gambar 3.4 Tampilan C++ File (.cpp)


5. Berikut program sederhana berisikan biodata yang telah diketik pada
lembar kerja Microsoft Visual Studio 2010.

Gambar 3.5 Tampilan kerja microsoft visual studio 2010


6. Setelah script selesai diketik lalu pilih Build  Build Solution (Ctrl +
Shift + B)

34
Gambar 3.6 Tampilan Build
7. Ini berarti program yang ditulis tidak mengandung kesalahan.

Gambar 3.7 Tampilan Build


8. Untuk membuka hasil dari script pilih Debug Start Debugging.

Gambar 3.8 Tampilan Start Debugging

9. Hasil dari program yang ditulis.

35
Gambar 3.9 Tampilan hasil debugging

BAB IV
HASIL DAN PEMBAHASAN

4.1 Pembuatan Pemrograman dengan Tipe Data Array Pada C++


a) Hasil Program

Gambar 4.1 Tampilan Hasil penjumlahan dua buah matrik (Array) pada C++

b) Pembahasan Program

#include <iostream>
using namespace std;
int main(void) {
int t, i, A[3][4],B[3][4],C[3][4];
for(t=0; t<3; t++)
for(i=0; i<4; i++)
A[t][i] = (t*4)+i+1;
cout << "MATRIK A" << endl;
for(t=0; t<3; t++)
{
for(i=0; i<4; i++)
cout <<A[t][i] << " ";
cout << endl;
}
for(t=0; t<3; t++)
for(i=0; i<4; i++)
B[t][i] = (t*4)+i+1;
cout << endl;
36
cout << "MATRIK B" << endl;
for(t=0; t<3; t++)
{
for(i=0; i<4; i++)
cout <<B[t][i] << " ";
Gambar 4.2 Coding penjumlahan dua buah matrik (Array) pada C++
1. #include <iostream> adalah kalimat yang diawali dengan tanda (#)
adalah preprocessor directive.
2. Using namespace std; adalah sebuah penyingkat atau penyederhana
dari notasi yang ada dalam library iostream seperti std::cout menjadi
cout, std::endl, menjadi endl dan lainnya.
3. Int main adalah yang mengatakan pada kompiler bahwa ada sebuah
fungsi bernama main, yang mana fungsi itu mengembalikan sebuah
integer.
4. Void menyatakan tipe kosong dan digunakan untuk: pertaman untuk
mendeklarasikan fungsi yang tidak mengembalikan nilai apapun. Serta
fungsi kedua adalah untuk mendeklarasikan fungsi yang tidak
menerima parameter apapun.
5. For merupakan salah satu bentuk fungsi perulangan, digunakan untuk
melaksanakan pernyataan berulang kali terhadap sejumlah nilai yang
telah ditetapkan.
6. Cout digunakan untuk menampilkan kalimat atau data ke layar.
7. Tanda kurung kurawal ({}) merupakan tanda yang menandakan awal
dan akhir fungsi dalam program di atas dan menghentikan perintah
lainnya.
8. Return 0; merupakan perintah untuk mengembalikan program ke nol
atau semula lagi.

37
Pembuatan Pemrograman Aplikasi dalam Geodesi Pada C#
a) Hasil Program

Gambar 4.1 Tampilan Hasil perhitungan dari sebuah rumus


Tinggi Terbang di atas MSL pada C#
b) Pembahasan Program
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace siap
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public Double h, f, B, p, H;

private void button1_Click(object sender, EventArgs e)


{
h = Convert.ToDouble(textBox1.Text);
f = Convert.ToDouble(textBox2.Text);
B = Convert.ToDouble(textBox3.Text);
p = Convert.ToDouble(textBox4.Text);

H = h + (B * f / p);

textBox5.Text = H.ToString();

private void Form1_Load(object sender, EventArgs e)


{

private void label10_Click(object sender, EventArgs e)


{

}
}
}
Gambar 4. Coding Hasil perhitungan dari sebuah rumus

38
Tinggi Terbang di atas MSL pada C#
a) Using System menyertakan class utama ke dalam program.
b) Namespace std; adalah sebuah penyingkat atau penyederhana dari
notasi yang ada dalam library iostream seperti std::cout menjadi cout,
std::endl, menjadi endl dan lainnya.
c) Class merupakan statement untuk mengelompokkan code berdasarkan
nama kelas.
d) Partial Class adalah tindakan yang berfungsi untuk membagi Class,
Struct, Interface maupun method menjadi dua atau lebih.
e) Public adalah variabel dapat diakses pada semua kelas yang
menggunakan kelas yang berisi variabel tersebut.
f) Private hanya dapat diakses oleh metode dalam kelas itu sendiri.
g) Void menyatakan tipe kosong dan digunakan untuk: pertaman untuk
mendeklarasikan fungsi yang tidak mengembalikan nilai apapun. Serta
fungsi kedua adalah untuk mendeklarasikan fungsi yang tidak
menerima parameter apapun.
h) Initialize Component() adalah metode yang otomatis dibuat ketika
kamu membuat aplikasi seperti ketika kamu menambahkan checkbox
ke formmu.
i) Double berfungsi untuk menampilkan angka-angka desimal seperti
pada contoh gambar di atas yang menampilkan angka desimal.
j) Convert To Double adalah Mengkonversi suatu nilai tertentu ke
sebuah angka floating dengan presisi double.
k) String adalah object class dalam C# sehingga akan mempunyai
properti serta method class.
l) Tanda kurung kurawal ({}) merupakan tanda yang menandakan awal
dan akhir fungsi dalam program di atas dan menghentikan perintah
lainnya.
m) Object Sender adalah parameter yang disebut Pengirim yang berisi
referensi ke kontrol / objek yang mengangkat peristiwa.
n) EventArgs e adalah parameter yang disebut e yang berisi data
peristiwa.

39
o) Keterangan Variabel :
 h = elevasi.
 B = Air Base.
 f = Panjang Fokus.
 p = Paralaks.
 H = Tinggi Terbang.
p) Rumus Tinggi Terbang di atas MSL :

(CHAPTER 8 : Stereoscopic Parallax)

40
 //perhitugan_koordinat_titik_detail.cpp
Baris ini digunakan untuk memberikan suatu judul atau
penjelasan mengenai program apa yang dibuat itu sendiri.
 #include<iostream>
Merupakan prosesor pengarah yang mengatakan kepada
kompiler untuk meletakan kode dari header file iostream ke
dalam program agar dapat mengakses banyak fungsi seperti
fungsi cout.
 #include <math.h>
Diperlukan pada program yang menggunakan operasi
matematika, misal sqrt untuk mencari akar, pow untuk mencari
kuadrat.
 Int main
Menggunakan tanda int yang mengatakan pada kompiler
bahwa ada sebuah fungsi bernama main, di mana fungsi itu
mengembalikan sebuah integer.
 Tanda kurung kurawal({})
Merupakan tanda yang menandakan awal dan akhir fungsi
dalam sebuah program. Dalam kurung kurawal di atas berisikan
statment yang akan dimunculkan pada layar monitor sesuai
dengan perintah cout.
 Using namespace std;
Merupakan sintak yang digunakan sebagai perintah awal
menjalankan program.
 cout
Perintah cout yang digunakan berfungsi untuk
menampilkan hasil statment pada layar saat debugging. Pada
contoh di atas akan menampilkan statmen untuk memasukkan
panjang, luas, dan tinggi balok yang kemudian diikuti dengan
fungsi cin.

41
 cin
Merupakan perintah masukkan yang di-input melalui
keyboard. Pada saat debuging akan muncul hasil di layar sesuai
perintah cout untuk memasukkan nilai. Contohnya kita
memasukan angka 5 sebagai panjang balok.
 Double
Menggunakan sintak double yang berfungsi untuk
menampilkan angka-angka desimal seperti pada contoh gambar di
atas yang menampilkan angka desimal.
 System (“pause”)
Baris ini memberikan instruksi kepada program untuk
menghentikan proses eksekusi sampai user menekan sembarang
tombol. Selain itu, baris ini juga akan menampilkan teks
“Press any key to continue...”
 Return 0;
Merupakan perintah untuk mengembalikan program ke nol
atau semula lagi.

4.3 Program Pointer Array


a) Hasil Program
Hasil pembuatan program pointer array dapat dilihat pada gambar
berikut :

Gambar 4.5 Hasil program pointer array

42
b) Pembahasan Program
Analisa hasil program pointer array dijelaskan sebagai berikut:

Gambar 4.6 Struktur program pointer array

 //PointerArray.cpp
Baris ini digunakan untuk memberikan suatu judul atau
penjelasan mengenai program apa yang dibuat itu sendiri.
 #include <iostream>
Merupakan sebuah prosesor pengarah yang mengatakan
kepada kompiler untuk meletakan kode dari header file
iostream ke dalam program agar dapat mengakses banyak
fungsi seperti fungsi cout.
 Int main()
Menggunakan tanda int yang mengatakan pada
kompiler bahwa ada sebuah fungsi bernama main, yang mana
fungsi itu mengembalikan sebuah integer.
 Tanda kurung kurawal({})
Merupakan tanda yang menandakan awal dan akhir
fungsi dalam program di atas dan menghentikan perintah
lainnya.

43
 Using namespace std;
Merupakan sintak yang digunakan sebagai perintah
awal menjalankan program.
 System (“pause”)
Baris ini memberikan instruksi kepada program untuk
menghentikan proses eksekusi sampai user menekan sembarang
tombol. Selain itu, baris ini juga akan menampilkan teks
“Press any key to continue...”
 cout
Merupakan perintah keluar yang dapat mengeluarkan
hasil di layar pada proses debug. Pada contoh di atas akan
menghasilkan deret angka pada layar.
 For
Merupakan perintah untuk menampilkan deret angka.
 Return 0;
Merupakan perintah untuk mengembalikan program ke
nol atau semula lagi.

4.4 Program Looping


a) Hasil Program Looping
Hasil pembuatan program Looping dapat dilihat pada gambar berikut:

Gambar 4.7 Hasil program looping

b) Pembahasan Program Looping

44
Analisa Hasil program if else dijelaskan sebagai berikut :

//ProgramLooping.cpp
#include <iostream> //direktif preposesor
int main() //header fungsi
{ //permulaan badan fungsi
using namespace std;
char huruf; //menampilkan karakter
huruf
cout<<"\n\n\t\t Urutan Huruf dari Huruf Z-A\n";//pesan yang akan
ditampilkan
cout<<"\t ========\n\n"; //pesan yang akan
ditampilkan
cout << "\t"; //pesan yang akan
ditampilkan
for (huruf='Z'; huruf>='A'; huruf--) //untuk melakukan perulangan
huruf
{
cout << huruf << " "; //pesan yang akan
ditampilkan
}
cout << "\n"; //pesan yang akan
ditampilkan
cout << "\n\n\t Terima Kasih Telah
Menggunakan Program ini\n";//pesan yang akan
ditampilkan
system ("pause"); //menghentikan tampilan
eksekusi
return 0;} //memberhentikan fungsi main

Gambar 4.8 struktur program looping

 //ProgramLooping.cpp
Baris ini digunakan untuk memberikan suatu judul atau
penjelasan mengenai program apa yang dibuat itu sendiri.
 #include <iostream>
Merupakan sebuah prosesor pengarah yang mengatakan
kepada kompiler untuk meletakan kode dari header file iostream
ke dalam program agar dapat mengakses banyak fungsi seperti
fungsi cout.
 Int main
Menggunakan tanda int yang mengatakan pada
kompiler bahwa ada sebuah fungsi bernama main, yang mana
fungsi itu mengembalikan sebuah integer.
 cout

45
Merupakan perintah keluar yang dapat mengeluarkan
hasil pada proses debug. Hasil pengulangan setelah debugging
yaitu seperti pada contoh di atas.
 Tanda kurung kurawal({})
Merupakan tanda yang menandakan awal dan akhir
fungsi dalam program di atas dan menghentikan perintah lainnya.
 for (huruf='Z'; huruf>='A'; huruf--)
Untuk mengulang satu pernyataan huruf.
 Using namespace std;
Merupakan sintak yang digunakan sebagai perintah
awal menjalankan program.
 System (“pause”)
Baris ini memberikan instruksi kepada program untuk
menghentikan proses eksekusi sampai user menekan sembarang
tombol. Selain itu, baris ini juga akan menampilkan teks
“Press any key to continue...”
 Return 0;
Merupakan perintah untuk mengembalikan program ke
nol atau semula lagi.

4.5 Program If Else


a) Hasil Program
Hasil program if else dapat dilihat pada gambar berikut :

Gambar 4.9 hasil program if else

46
b) Pembahasan Program
Analisa Hasil program if else dijelaskan sebagai berikut :
//if-else.cpp
#include <iostream> //Direktif preprosesor
const int tinggi_badan=160;
int main() //header fungsi
{
using namespace std;
int t; //menampilkan angka
integer
cout <<" Masukkan tinggi badan anda ! ";//pesan ditampilkan
do
{
cin >>t; //pesan akan diinput
if (t<160)
cout <<" Maaf anda belum cukup tinggi untuk menaiki wahana
Roller Coaster!!!";
else if (t>160)
cout <<" Selamat anda dapat menaiki wahana Roller
Coaster!!!";
else
cout <<tinggi_badan<<" Silahkan naik ";
}
while(t!=tinggi_badan);
system ("pause");
return 0;
}

Gambar 4.10 struktur program if else

 #include <iostream>
Merupakan sebuah prosesor pengarah yang mengatakan
kepada kompiler untuk meletakan kode dari header file
iostream ke dalam program agar dapat mengakses banyak
fungsi seperti fungsi cout.
 Int main
Menggunakan tanda int yang mengatakan pada
kompiler bahwa ada sebuah fungsi bernama main, yang mana
fungsi itu mengembalikan sebuah integer.
 Tanda kurung kurawal({})

47
Merupakan tanda yang menandakan awal dan akhir
fungsi dalam program di atas dan menghentikan perintah
lainnya.

 Using namespace std;


Merupakan sintak yang digunakan sebagai perintah
awal menjalankan program.
 If_
Fungsi pernyataan if di atas adalah untuk mengeksekusi
pernyataan yang bernilai benar dan fungsi pernyataan else if di
atas adalah untuk mengeksekusi pernyataan yang bertentangan
dengan pernyataan if.
 Else
Else adalah kondisi selain atau di luar dari kondisi
pertama (if).
 cout
Merupakan perintah keluar yang dapat mengeluarkan
hasil pada proses debuging.
 cin
Merupakan perintah masukkan yang di-input melalui
keyboard.
 System (“pause”).
Baris ini memberikan instruksi kepada program untuk
menghentikan proses eksekusi sampai user menekan sembarang
tombol. Selain itu, baris ini juga akan menampilkan teks
“Press any key to continue...”
 Return 0;
Merupakan perintah untuk mengembalikan program ke
nol atau semula lagi.

48
BAB V
PENUTUP

5.1 Kesimpulan
Kesimpulan dari laporan ini adalah sebagai berikut :

49
 Pemrograman data spasial lanjut merupakan sebuah bidang yang
mempelajari tentang perangkat lunak untuk memproses suatu data
spasial. Data spasial adalah sebuah data yang berorientasi geografis
dan memiliki sistem koordinat tertentu sebagai dasar referensinya. Saat
ini data spasial menjadi media penting untuk perencanaan
pembangunan dan pengelolaan sumber daya alam yang berkelanjutan
pada cakupan wilayah nasional, regional maupun lokal. Pemanfaatan
data spasial semakin meningkat setelah adanya teknologi Penginderaan
Jauh dan Sistem Informasi Geografi.
 C++ merupakan suatu bahasa pemrograman yang bekerja di lingkup
Microsoft windows yang di dalamnya yang berisi perintah-perintah
atau instruksi yang dimengerti oleh komputer untuk melakukan tugas-
tugas tertentu dalam bentuk aplikasi.
 C# adalah bahasa pemrograman baru yang diciptakan oleh Microsoft
yang dikembangkan di bawah kepemimpinan Anders Hejlsberg yang
telah menciptakan berbagai macam bahasa pemrograman termasuk
Borland Turbo C++ dan orland Delphi. Fitur-fitur tersebut di dalam C#
kini telah diaplikasikan terhadap iterasi, properti, kejadian (event),
metadata, dan konversi antara tipe-tipe sederhana dan juga objek. C#
didesain untuk memenuhi kebutuhan akan sintaksis C++ yang lebih
ringkas dan Rapid Application Development yang tanpa batas
(dibandingkan dengan RAD yang terbatas seperti yang terdapat pada
Delphi dan Visual Basic).
 Dari program yang telah kami buat pada Visual Studio C++, C#, dan
Def C++ kami dapat mempelajari dan membuat program-program
seperti membuat program tipe data array, pointer, function, class, dan
pembuatan aplikasi dalam geodesi.
 Program Visual Studio C++, C#, dan Def C++ juga dapat
mengembangkan cara berpikir, selain dapat mempertimbangkan
dengan tepat bagaimana akan menyelesaikan sebuah permasalahan,
dalam membuat sebuah program, dihadapkan pada baris-baris kode
yang harus disusun secara sistematis. Baris-baris kode ini tidak boleh

50
terbolak-balik baik penyusunannya maupun penulisannya, agar
program yang dibuat dapat berjalan tanpa permasalahan.

5.2 Saran
Saran yang diberikan untuk laporan ini antara lain :
 Perlu lebih banyak variasi model program aplikasi geodesi pada
modul praktikum agar dapat dipraktikkan lebih berlogika dalam
membuat aplikasi lain.
 Perlu adanya pembinaan pada saat praktikum yang lebih ditekankan
pada pembahasan bahasa pemrograman agar praktikan mampu
membuat program aplikasi bukan untuk mencoba dan
mengaplikasikan program saja.
 Aplikasi yang masih pemula sebaiknya lebih teliti dalam
mengaplikasikan program karena apabila salah satu atau kurang dalam
memberikan tanda baca maka program tidak bisa berjalan atau
dieksekusi oleh komputer.

DAFTAR PUSTAKA

Suprapto. 2008. Bahasa Pemrograman. [Buku]


Y. Katili, Shiddieqy. 2008. Aturan dan Perintah Dasar C++.

51
Belajar C++. 2016. Belajar C++.
Modul Pemrograman C# Fundamental
Array (Larik) Modul Praktikum C++ Dasar Pemrograman Komputer.
Jurusan Teknik Elektro Fakultas Teknik. Universitas Negeri Malang.
Arimbi, Yuanita. Mengenal Tipe Data Pointer. Fakultas Komputer
UMITRA.
Andika, Dwiky. Function (Bahasa C).
Wikipedia. Debugging.

52
LAMPIRAN

1. Program sederhana biodata

//BiodataMahasiswa.cpp
#include <iostream>
int main ()
{
using namespace std;
cout<< "Nama :M. Husyein Alfarizi";
cout<<endl;
cout<< "Alamat :Jl. Benudngan Darma no.2”;
cout<<endl;
cout<< "TTL :BukitTinggi,8 Januari 2000";
cout<<endl;
cout<< "Jurusan :Teknik Geodesi“;
cout<<endl;
cout<< "No. Telp :082335871928";
cout<<endl;
cin.get();
return 0;
}

2. Program Perhitungan Koreksi Koordinat Detail

//PerhitunganKoordinatDetail.cpp
#include <iostream>
int main()
{
using namespace std;
double Xa1,X1,Da1,a1,Ya1,Y1;
cout<<"Rumus Koordinat Detail\n\a";
cout<<"Masukkan Koordinat X1=\a";";
cin>>X1;
cout<<"Masukkan Jarak a1=\a";";
cin>>Da1;
cout<<"Masukkan Sin Azimuth=\a";";
cin>>a1;
cout<<"Masukkan Koordinat Y1=\a";";
cin>>Y1;
Xa1=X1+Da1*a1;
Ya1=Y1+Da1*a1;
cout<<"Koordinat Detail="<<Xa1<<","<<Ya1<<endl;
system ("pause");
cin.get();
return 0;}
3. Program Pointer Array
//PointerArray.cpp
#include <iostream>
int main ()
{
using namespace std;
int numbers[10];
int *r;
r= numbers; *r=10;
r++; *r=20;
r=&numbers[2]; *r=30;
r=numbers+3; *r=40;
r=numbers+4; *r=50;
r=numbers+5; *r=60;
r=numbers+6; *r=70;
r=numbers+7; *r=80;
r=numbers+8; *r=90;
r=numbers; *(r+9)=100;
for (int n=0; n<10; n++)
cout<<numbers[n]<<",";
system ("pause");
return 0;}
}

4. Program Looping
//ProgramLooping.cpp
#include <iostream>
int main()
{
using namespace std;
char huruf;
cout<<"\n\n\t\t Urutan Huruf dari Huruf Z-A\n

cout<<"\t ========\n\n";
cout << "\t";
for (huruf='Z'; huruf>='A'; huruf--)
{
cout << huruf << " ";
}
cout << "\n";
cout << "\n\n\t Terima Kasih Telah
Menggunakan Program ini\n";
system ("pause");
return 0;}

2
5. Program if else

//if-else.cpp
#include <iostream>
const int tinggi_badan=160;
int main()
{
using namespace std;
int t;
cout <<" Masukkan tinggi badan anda ! ";
do
{
cin >>t;
if (t<160)
cout <<" Maaf anda belum cukup tinggi untuk menaiki wahana
Roller Coaster!!!";
else if (t>160)
cout <<" Selamat anda dapat menaiki wahana Roller
Coaster!!!";
else
cout <<tinggi_badan<<" Silahkan naik ";
}
while(t!=tinggi_badan);
system ("pause");
return 0;
}

Anda mungkin juga menyukai