OLEH
NIM : 201331027
2020-2021
KETERANGAN
DAFTAR ISI
KETERANGAN ............................................................................................................................... i
DAFTAR ISI ................................................................................................................................... ii
DAFTAR GAMBAR .................................................................................................................. iii
I. Tujuan Praktikum ........................................................................................................... 1
II. Teori Dasar ...................................................................................................................... 1
2.1 Algoritma ..................................................................................................................... 1
a) Pengertian Algoritma ........................................................................................................... 1
b) Penyajian Algoritma ............................................................................................................. 1
c) Fungsi Algoritma .................................................................................................................. 2
2.2 Flowchart...................................................................................................................... 2
a) Pengertian dan Tujuan Membuat Flowchart ..................................................................... 2
b) Cara Membuat Flowchart .................................................................................................... 3
c) Macam Jenis Flowchart dan Artinya .................................................................................. 3
2.3 Bahasa Pemrograman C ............................................................................................... 5
a) Pengertian dan Sejarah Bahasa Pemrograman C ............................................................. 5
b) Kode-Kode dalam Bahasa Pemrograman C....................................................................... 6
c) Array Dalam Bahasa C......................................................................................................... 7
III. Alat dan Komponen yang Digunakan .............................................................................. 9
IV. Langkah Kerja ................................................................................................................ 9
V. Hasil Percobaan ............................................................................................................. 11
5.1 Persoalan 1 ................................................................................................................. 11
5.2 Persoalan 2 ................................................................................................................. 13
5.3 Persoalan 3 ................................................................................................................. 15
5.4 Persoalan 4 ................................................................................................................. 17
5.5 Persoalan 5 ................................................................................................................. 19
5.6 Persoalan 6 ................................................................................................................. 21
VI. Analisis Data.................................................................................................................. 27
VII. Kesimpulan.................................................................................................................... 28
DAFTAR PUSTAKA ................................................................................................................. iv
DAFTAR GAMBAR
I. Tujuan Praktikum
1. Mahasiswa mampu menerapkan algoritma dengan menggunakan flowchart pada
pemrograman Array dalam bahasa C.
2. Mahasiswa mampu mengidentifikasi suatu data yang disimpan pada variable array.
3. Mahasiswa mampu menginisialisasikan suatu nilai pada variable array .
4. Mahasiswa mampu membuat array satu dimensi.
5. Mahasiswa mampu membuat array dua dimensi atau dimensi banyak.
6. Mahasiswa mampu menampilkan data-data pada variable array ke layar monitor.
7. Mahasiswa mampu mempertukarkan data-data pada variable array dan menampilkan
data-datanya ke layar monitor.
2.1 Algoritma
a) Pengertian Algoritma
Algoritma adalah proses atau serangkaian aturan yang harus diikuti dalam
perhitungan atau operasi pemecahan masalah lainnya, terutama oleh komputer. Dengan
kata lain, semua susunan logis yang diurutkan berdasarkan sistematika tertentu dan
digunakan untuk memecahkan suatu masalah dapat disebut dengan algoritma.
b) Penyajian Algoritma
Penyajian algoritma terdiri atas 2 bentuk, yaitu tulisan dan gambar.
• Penyajian algoritma dalam bentuk tulisan biasanya menggunakan Metode Structure
Language dan Pseudocode. Pseudocode adalah kode yang mirip dengan kode
pemrograman yang sebenarnya (Pascal, C, Python, Java, dll).
• Penyajian algoritma dalam bentuk gambar biasanya menggunakan flowchart.
Flowchart merupakan penyajian secara grafik dari suatu algoritma atau prosedur
untuk menyelesaikan suatu masalah.
• Penyajian konsep pemrograman lain selain pseudocode dan flowchart, yaitu DFD
(Data Flow Diagram), Warnier Diagram, IPO (Input Process Output), dan HIPO
(Hierarchical Input Process Output).
c) Fungsi Algoritma
Berikut ini merupakan fungsi algoritma :
➢ Pemrograman dapat mengatasi permasalahan rumit dalam program yang
kemungkinan juga melibatkan perhitungan tingkat tinggi. Karena menggunakan
perhitungan seringkali program yang dibuat tidak berjalan semestinya karena
adanya kesalahan, hal ini dapat diminimalisir dengan menerapkan algoritma dalam
pemrograman.
➢ Algoritma pemrograman juga mampu menyederhanakan program, dari program
yang besar menjadi program yang lebih sederhana, sehingga penggunaannya lebih
efektif dan efisien. Selain itu, terdapat dua pendekatan yang dimiliki algoritma
pemrograman yaitu pendekatan top-down serta pendekatan divide and conquer.
➢ Fungsi dari algoritma ini bukan merupakan sekali pakai, artinya dapat digunakan
secara berulang-ulang ini memberikan Anda keuntungan dalam meminimalisir
penulisan program yang berulang-ulang. Jadi, Anda tidak perlu repot-repot
menuliskan lagi program yang sama di lain waktu, yang hal ini memudahkan Anda
dalam pembuatan program.
➢ Dalam pembuatan program pastinya akan menjumpai beberapa kesalahan, hal ini
sangatlah wajar. Dengan menerapkan fungsi algoritma maka pencarian kesalahan
dapat lebih mudah serta dapat diperbaiki dengan cepat.
➢ Adanya alur yang jelas yang dimiliki oleh algoritma pemrograman, Anda dapat
dengan mudah mencari kesalahan jika terjadi kesalahan. Karena program sudah
tertata atau tersusun dengan rapi, sehingga memudahkan Anda dalam pencarian
dan menemukan kesalahan yang terjadi pada program di dalam perangkat
komputer yang dimiliki.
2.2 Flowchart
Dalam pembuatan flowchart tidak ada rumus atau patokan yang bersifat mutlak.
Karena flowchart merupakan gambaran hasil pemikiran dalam menganalisa suatu
masalah dengan komputer. Sehingga flowchart yang dihasilkan dapat bervariasi antara
satu pemrogram dengan pemrogram lainnya. Meskipun begitu, secara garis besar setiap
perancangan flowchart selalu terdiri dari tiga bagian, yaitu input, proses dan output.
Untuk pengolahan data dengan komputer, dapat dirangkum urutan dasar untuk
pemecahan suatu masalah, yaitu
(tidak dihubungkan langsung dengan komputer, misalnya mesin tik, cash register
atau kalkulator).
2) Flowchart Document ( Bagan alir dokumen )
Flowchart Paperwork menelusuri alur dari data yang ditulis melalui sistem.
Flowchart Paperwork sering disebut juga dengan Flowchart Dokumen. Kegunaan
utamanya adalah untuk menelusuri alur form dan laporan sistem dari satu bagian ke
bagian lain baik bagaimana alur form dan laporan diproses, dicatat dan disimpan.
3) Flowchart Schematic ( Bagan alir skematik )
Flowchart Skematik mirip dengan Flowchart Sistem yang menggambarkan
suatu sistem atau prosedur. Flowchart Skematik ini bukan hanya menggunakan
simbol-simbol flowchart standar, tetapi juga menggunakan gambar-gambar
komputer, peripheral, form-form atau peralatan lain yang digunakan dalam sistem.
Flowchart Skematik digunakan sebagai alat komunikasi antara analis sistem
dengan seseorang yang tidak familiar dengan simbol-simbol flowchart yang
konvensional. Pemakaian gambar sebagai ganti dari simbol-simbol flowchart akan
menghemat waktu yang dibutuhkan oleh seseorang untuk mempelajari simbol
abstrak sebelum dapat mengerti flowchart.
4) Flowchart Program ( Bagan alir program )
Flowchart Program dihasilkan dari Flowchart Sistem. Flowchart Program
merupakan keterangan yang lebih rinci tentang bagaimana setiap langkah program
atau prosedur sesungguhnya dilaksanakan. Flowchart ini menunjukkan setiap
langkah program atau prosedur dalam urutan yang tepat saat terjadi.
Programmer menggunakan flowchart program untuk menggambarkan urutan
instruksi dari program komputer. Analis Sistem menggunakan flowchart program
untuk menggambarkan urutan tugas-tugas pekerjaan dalam suatu prosedur atau
operasi.
5) Flowchart Process ( Bagan alir proses )
Flowchart Proses merupakan teknik penggambaran rekayasa industrial yang
memecah dan menganalisis langkah-langkah selanjutnya dalam suatu prosedur atau
sistem. Flowchart Proses digunakan oleh perekayasa industrial dalam mempelajari
dan mengembangkan proses-proses manufacturing. Dalam analisis sistem,
flowchart ini digunakan secara efektif untuk menelusuri alur suatu laporan atau
form
Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu
flowchart :
Bahasa pemrograman C dibuat pertama kali oleh Dennis M. Ritchie pada tahun
1972. Saat itu Ritchie bekerja di Bell Labs, sebuah pusat penelitian yang berlokasi di
Murray Hill, New Jersey, Amerika Serikat.
Dengan tujuan mengganti bahasa assembly, peneliti di Bell Labs membuat bahasa
pemrograman B. Namun bahasa pemrograman B juga memiliki beberapa kekurangan,
yang akhirnya di lengkapi oleh bahasa pemrograman C.
Pada tahun 1972, sebuah bagian besar sistem operasi Unix ditulis ulang dengan
bahasa C. Tahun 1973, dengan tambahan tipe struct, bahasa C menjadi cukup kuat
dimana sebagian besar kernel Unix ditulis dengan bahasa C. Pada tahun 1978, Brian
Wilson Kernighan dan Dennis Mac Alistair Ritchie mempublikasikan edisi pertama
buku yang berjudul The C Programming Language. Buku ini dikenal programmer
dengan sebutan K&R, digunakan beberapa tahun sebagai spesifikasi tidak formal dari
bahasa C. Antara tahun 1970an dan 1980an, bahasa C diimplementasikan pada berbagai
jenis komputer mainframe, komputer mini, dan komputer mikro, termasuk IBM PC,
dimana popularitas bahasa C mulai meningkat secara signifikan.
➢ Bahasa C menyediakan beberapa file judul yang ditandai dengan ekstensi “.h”
➢ Program di atas, #include <stdio.h> menyatakan pada kompiler agar membaca
file bernama stdio.h saat melakukan kompilasi.
2) Blok Fungsi main
Fungsi main() adalah fungsi utama dalam program. Fungsi ini akan dieksekusi
pertamakali saat program dijalankan. Oleh karena itu, kita harus menuliskan logika
program di dalam fungsi ini.
3) Penulisan Statement
• Fungsi printf
Dipakai untuk menampilkan suatu keluaran
Contoh:
printf(“…….”);
printf(“String Kontrol”, argument1,argument2…);
String kontrol yang dimaksud adalah keterangan yang akan ditampilkan pada
layar beserta penentu format(%d, %f, %c,dll).
• Fungsi Scanf
Digunakan untuk memasukkan berbagai jenis data. Misalnya untuk
memasukkan data jari-jari lingkaran digunakan adalah
scanf(“%f”,&radius);Scanf(“String Kontrol”, daftar_argument);
Contoh :
• Angka untuk menyimpan sederetan bilangan
• Buku untuk menyimpan sekumpulan data buku
• Mahasiswa untuk menyimpan beberapa data mahasiswa
• Sebagai contoh jika A merupakan sebuah array dengan tipe integer, maka
notasi dari array A adalah: A[n], dengan n merupakan angka index dari
array tersebut misal:
A[0]=100
A[1]=200
2) Mendeklarasikan Variabel Array
Mendeklarasikan variabel array dengan tipe data yang diinginkan dengan
cara yang hampir sama dengan variabel biasa. Misalnya untuk mendeklarasikan
variabel bertipe integer, dapat dilakukan dengan cara :
int [ ] bilangan; atau int bilangan [ ];
Jadi perbedaan utama pendeklarasian variabel array dengan variabel biasa
adalah adanya tanda kurung [ ] di akhir tipe data atau di akhir nama variable
array. Pada tahap pendeklarasian variabel array ini belum ada alokasi memory
untuk menyimpan data.
3) Mendefinisikan Array
Setelah mendeklarasikan array, kita perlu mendefenisikan array, dalam arti
menentukan besar array yang diinginkan. Misalnya dengan cara :
Bilangan = new int [5];
Array memiliki ukuran yang tetap dalam arti tidak dapat membesar atau
mengecil ukurannya setelah didefenisikan. Setelah didefenisikan, maka variabel
dengan nama bilangan dapat menyimpan 5 nilai integer yang dapat diakses
melalui indeks 0 sampai indeks 4. Setelah pendefenisian array, maka memori
akan dialokasikan untuk menyimpan data dari array. Besar memori yang
dialokasikan tergantung dari tipe data variabel array dan jumlah elemen array
yang didefenisikan.
100256 75 76
100266 80 88
100279 88 90
100287 79 87
100293 87 79
10 5 25
9 4 18
3. Seperti soal no.1 dengan menggunakan array dua dimensi pada data Nilai[][].
4. Seperti soal no.3 dengan menggunakan array tiga dimensi pada data Nilai[][][].
5. Memasukkan data array bertipe char sebanyak 10 karakter melalui keyboard
dan menentukan jumlah huruf vokal dan konsonan yang terdapat pada kelompok
karakter tersebut serta menampilkannya ke monitor
6. Seperti soal no.5 tetapi data kelompok huruf vokal dikelompokkan di dalam variabel
array vokal, begitupun pada kelompok huruf konsonan dikelompokkan di dalam
variabel array konsonan dan kedua kelompok data array tersebut ditampilkan.
7. Seperti soal no.6 tetapi setiap data konsonan digantikan dengan data huruf vokal ‘o’.
V. Hasil Percobaan
5.1 Persoalan 1
1. Flowchart
Start
i=0
No
i<5 i=0
Yes
No
i<5 End
NIM [i]
Yes
i++
Nilai2 [i]
i++
2. Program
5.2 Persoalan 2
1. Flowchart
Start
i=0
No
i<5 i=0
Yes
No
i<5 End
Alas [i]
Yes
Alas[i], Tinggi[i],
Tinggi [i] LuasSegitiga[i]
i++
LuasSegitiga = 0.5*Alas[i]*Tinggi[i]
i++
2. Program
5.3 Persoalan 3
1. Program
2. Flowchart
Start
int data[5][3]
int i, j
End
i=0
j=0 i++
No
No i=0 Yes No
i<5 i<5 j<3
j=0
Yes Yes
No data[i][j]
j<3
Yes
j++
No No
j == 0 j == 1 j == 2
j++
i++
2. Program
5.4 Persoalan 4
1. Flowchart
Start
h = 0, i = 0, j = 0
No
No
j<3
j++
i++
2. Program
5.5 Persoalan 5
1. Flowchart
1
Hitung
Main()
Vokal() 2
Start Hitung_vokal(
)
Int i, vokal = 0
Main()
i=0
Char huruf [10],
int vokal,
konsonan No
i<10 i=0
Yes
Hitung_vokal() No
text[i] i<10 Return
text[i]=a,
Banyaknya
A,i,I,u,U,
huruf vokal
e,E,o,O
Banyaknya
huruf konsonan
vokal++
End
i++
2. Program
5.6 Persoalan 6
1. Flowchart
Start
Jumlah huruf vokal
Data[h][i][j]
No
A i < strlen(text)
i = 0, j = 0
Yes
text[i]=A,a,I,I,U,u,
E,e,O,o
No
i < 10
j=0
No No
j < strlen(vokal) j < strlen(konsonan) i++
Yes
Yes
text[i]==vokal[j] text[i]==konsonan[j]
jumlah_vokal++ jumlah_konsonan++
j++ j++
i++
i=0
No
End i < strlen(text)
Yes
Text[i]=
bcdfghjklmnpqrstvwxyzBCD
FGHJKLMNPQRSTVWXYZ
konsonan = text[i]
i++
2. Program
5.7 Persoalan 7
1. Flowchart
Start
Jumlah huruf vokal
Data[h][i][j]
A No i < strlen(text)
i = 0, j = 0
Yes
text[i]=A,a,I,i,U,u,
E,e,O,o
No
i < 10
j=0
No No
j < strlen(vokal) j < strlen(konsonan) i++
Yes
Yes
text[i]==vokal[j] text[i]==konsonan[j]
jumlah_vokal++ jumlah_konsonan++
j++ j++
POLITEKNIK NEGERI BANDUNG
i++
25
i=0
No
End i < strlen(text)
Yes
Text[i]=
bcdfghjklmnpqrstvwxyzBCD
FGHJKLMNPQRSTVWXYZ
text[i] = ‘o’
konsonan = text[i]
i++
2. Program
Praktikum kali ini mengenai materi array. Soal nomor 1, 3, dan 4 diperintahkan
menampilkan NIM, Nilai 1, dan Nilai 2. Pada soal nomor 1 menggunakan array 1 dimensi,
dimana baris dan kolom berada pada dimensi yang sama. Lalu, soal nomor 3 menggunakan
array 2 dimensi, yaitu menggunakan variabel yang sama tetapi baris dan kolom berada di
dimensi yang berbeda. Selanjutnya soal nomor 4 yang menggunakan array 3 dimensi,
dimana dimensi pertama adalah isi data tiap baris, dimensi kedua adalah banyaknya baris
dan dimensi ketiga adalah banyaknya kolom. Dari ketiga soal tersebut didapatkan hasil
yang sama, hanya saja berbeda algoritma dan pemrogramannya.
Pada soal nomor 2 menggunakan array 1 dimensi untuk mencari luas segitiga, yaitu
dengan menginputkan data alas dan tinggi. Kemudian diproses menggunakan persamaan
Luas Segitiga = 0.5*Alas*Tinggi. Data yang di dapat dari penginputan melalui keyboard
(alas dan tinggi) dan hasil perhitungan luas segitiga ditampilkan dengan posisi menyerupai
tabel pada soal.
Pada soal nomor 5, 6 dan 7 prosesnya hampir sama, yaitu menginputkan huruf
berjumlah 10, mengelompokannya menjadi data huruf vokal dan data huruf konsonan, lalu
menampilkan jumlah huruf vokal dan jumlah huruf konsonan dari text yang diinputkan
melalui keyboard. Akan tetapi pada soal nomor 6, setelah menampilkan jumlah huruf sesuai
jenis hurufnya, kemudian data kelompok huruf vokal dikelompokkan di dalam variabel
array vokal, begitupun pada kelompok huruf konsonan dikelompokkan di dalam variabel
array konsonan dan isi dari kedua kelompok data array tersebut ditampilkan di layar
POLITEKNIK NEGERI BANDUNG
28
monitor. Pada nomor 7, algortimanya sama dengan soal no 6. Namun, di bagian akhir
sebelum menampilkan huruf konsonan yang diinputkan, huruf konsonan akan digantikan
dengan data huruf vokal o.
VII. Kesimpulan
Setelah melakukan percobaan ini, dapat disimpulkan bahwa :
• Sebelum menyusun program, programmer harus menguasai konsep dasar pemograman
terlebih dahulu. Selain itu, akan lebih baik jika persoalan dibuat algoritmanya dulu, baik
dalam bentuk tulisan maupun gambar (flowchart).
• Algortima sangat membantu dalam menyelesaikan setiap persoalan. Tidak ada notasi
baku dalam penulisan algoritma, sehingga setiap orang bisa menginterpretasikannya
dengan notasi yang berbeda. Akan tetapi, hasil akhirnya akan tetap sama.
• Flowchart merupakan sebuah bagan dengan simbol (sandi) tertentu yang menjelaskan
dan menggambarkan langkah-langkah proses secara mendetail, dan hubungan antara
proses (metode) dengan proses lainnya pada suatu program.
• Struktur array adalah kumpulan elemen-elemen data yang digabungkan menjadi suatu
kesatuan yang memiliki tipe homogen (sama). Array merupakan bagian dari struktur
data sederhana yang dapat didefinisikan sebagai pemesanan alokasi memori
sementara pada komputer. Array berfungsi untuk menyimpan data maupun referensi
objek dalam jumlah banyak dan terindeks.
• Array menggunakan indeks integer untuk menentukan urutan elemen-elemennya,
dimana elemen pertamanya dimulai dari indeks 0,elemen kedua memiliki indeks 1,
dan seterusnya.
• Apabila data pada sebuah program yang akan dibuat sudah diketahui batasannya,
maka dapat digunakan array dengan tipe data statis. Namum apabila datanya belum
diketahui batasannya, maka gunakan pointer atau tipe data dinamis.
• Array dapat berupa satu dimensi, dua dimensi, ataupun dimensi banyak.
DAFTAR PUSTAKA
[1] Arwani, Ragasari dan Sutrisno. 2013. PEMROGRAMAN DASAR Pemrograman dan Algoritma :
Universitas Brawijaya
[2] Anonim (2017,April 10) Pengertian Flowchart dan jenis-jenisnya [available at]
https://informatikalogi.com/pengertian-flowchart-dan-jenis-jenisnya/
[3] Anonim (2020, November 11) Algortma Pemrograman : Pengertian, Fungsi, Cara Kerja dan
Contohnya, [available at]
https://idcloudhost.com/algoritma-pemrograman-pengertian-fungsi-cara-kerja-dan-contohnya/
[4] Saragih Ricky (2018, Juni) Pemrograman dan Bahasa Pemrograman, [available at]
https://www.researchgate.net/publication/329885312