Anda di halaman 1dari 18

LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN

ALGORITMA PROGRAM FUNGSI SHELLEXECUTE BAHASA C

OLEH

NAMA : Arya Fadhil

NIM : 201331004

PROGRAM STUDI TEKNIK TELEKOMUNIKASI

JURUSAN TEKNIK ELEKTRO

POLITEKNIK NEGERI BANDUNG

2020-2021
KETERANGAN

1. Judul Praktek : Fungsi Execute Pada Program Bahasa C

2. Tanggal Praktek : 13 Juli 2021

3. Tanggal Pengumpulan : 16 Juli 2021

4. Nama Praktikan : Arya Fadhil (201331004)

5. Nama Dosen :

1. Andry Haidar, S.T,M.T.

2. R. Wahyu Tri Hartono. DuTech,S.ST., M.Sc.

3. Muhammad Yamin,S.T.,M.T.

POLITEKNIK NEGERI BANDUNG

i
DAFTAR ISI

KETERANGAN ........................................................................................................................................... i
DAFTAR ISI............................................................................................................................................... ii
I. MAKSUD DAN TUJUAN PERCOBAAN .......................................................................................... 1
II. DASAR TEORI ............................................................................................................................... 1
III. ALAT-ALAT YANG DIPERGUNAKAN ............................................................................................. 6
IV. PERTANYAAN .............................................................................................................................. 6
V. LANGKAH KERJA .......................................................................................................................... 6
VI. HASIL PRAKTIKUM ....................................................................................................................... 6
6.1 Diagram Blok ................................................................................................................................. 7
6.2 Flowchart ..................................................................................................................................... 8
6.3 Input Program dan Hasil Output ................................................................................................ 10
6.3.1 Input Program .......................................................................................................................... 10
6.3.2 Hasil Output ............................................................................................................................. 11
VII. ANALISA DATA........................................................................................................................... 14
VIII. KESIMPULAN ............................................................................................................................. 14
DAFTAR PUSTAKA ................................................................................................................................. 15

POLITEKNIK NEGERI BANDUNG

ii
I. MAKSUD DAN TUJUAN PERCOBAAN

1. Dapat merealisasikan program di compiler untuk mengelompokkan data dengan


metode fungsi
2. Mahasiswa dapat melakukan interaksi fungsi dengan fungsi Shellexecute
3. Memahami dan dapat membuat flowchart untuk setiap permasalahan dalam
pemrograman Bahasa C/C++
4. Memahami dan dapat menggunakan aplikasi Compiler C/C++ untuk melakukan
proses compiling terhadap kode program yang dibuat
5. Dapat memahami dan menjelaskan fungsi Shellexecute
6. Dapat melakukan percobaan program Shellexecute

II. DASAR TEORI

2.1 Fungsi Bahas C


Fungsi dalam C merupakan sekumpulan code yang dibungkus ke dalam sebuah
scope untuk menjalankan tugas tertentu. Fungsi memungkinkan kita untuk
menghemat penulisan kode yang mana sering ditulis berulang-ulang, namun bisa
dibungkus ke dalam sebuah fungsi dan kita tinggal memanggilnya saja. Fungsi
membuat program lebih terstruktur dan efisien sehingga program tersebut mudah
dipahami atau dibaca alur programnya.
Fungsi terbagi 2, ada yang namanya build in function dan fungsi yang kita
deklarasikan sendiri. Build in function adalah fungsi-fungsi yang sudah ada
dalam library C itu sendiri seperti beberapa fungsi string yang ada di
string.h (strlen, strcpy, strcmp, dll). Aturan penggunaan build in function untuk
string akan kita bahas di tutorial mendatang.
Tipe Data
Sama halnya dengan variabel, setiap fungsi juga ada tipe datanya. Tipe data sendiri
ada yang namanya int, float, double, char dan ada juga void. Void artinya tidak
bertipe data sehingga tidak memerlukan nilai return. Itulah sebabnya kenapa jika kita
menggunakan int main(){} maka kita wajib melakukan return 0; di paling bawah
fungsi.

POLITEKNIK NEGERI BANDUNG

1
Nama Fungsi
Nama fungsi merupakan nama alias yang akan kita gunakan saat pemanggilan.
Seperti contoh diatas tadi, jika nama fungsinya adalah belajarfungsi maka saat
pemanggilan kita akan menulis seperti ini : belajarfungsi()
Parameter
Parameter merupakan nilai yang akan dijadikan acuan saat menjalankan program.
Bisa dikatakan juga parameter adalah pelengkap saat menjalankan fungsi tertentu.
Parameter disini dapat dijabarkan menjadi 2 jenis
Pass by Value
Pass by Value artinya kita akan mempassing value sebagai parameter dalam fungsi
yang kita buat,
Pass by Address
Pass by Address berarti kita akan menggunakan pointer untuk mengakses atau bisa
juga mengubah value dari sebuah alamat.

. 2.2 Flowchart
Flowchart adalah adalah suatu bagan dengan simbol-simbol tertentu
yang menggambarkan urutan proses secara mendetail dan hubungan
antara suatu proses (instruksi) dengan proses lainnya dalam suatu
program.
Dalam perancangan flowchart sebenarnya tidak ada rumus atau patokan
yang bersifat mutlak (pasti). Hal ini didasari oleh flowchart (bagan alir)
adalah sebuah gambaran dari hasil pemikiran dalam menganalisa suatu
permasalahan dalam komputer. Karena setiap analisa akan menghasilkan
hasil yang bervariasi antara satu dan lainnya. Kendati begitu secara garis
besar setiap perancangan flowchart selalu terdiri dari tiga bagian, yaitu
input, proses dan output.
Simbol Flowchart

POLITEKNIK NEGERI BANDUNG

2
Gambar 2.1 Simbol Flowchart

2.3 Shellexecute
ShellExecute merupakan fungsi yang disediakan oleh Windows melalui file
pustaka “shell32.dll”, dan sudah ada sejak Windows 9x. Kegunaan dari fungsi ini
adalah untuk melakukan operasi terhadap suatu file atau direktori. Operasi yang
dimaksud bisa bermacam-macam yang nanti akan dijelaskan. Dalam
pengembangan aplikasi dengan Delphi fungsi ini juga bisa dipakai dengan
menambahkan unit “ShellAPI” pada form yang mengakses fungsi tersebut.
Sintaknya adalah sebagai berikut.
function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,
Directory: PChar; ShowCmd: Integer): HINST;

Deskripsi dari parameter diatas adalah sebagai berikut.

POLITEKNIK NEGERI BANDUNG

3
hWnd. Merupakan handle terhadap window yang untuk menampilkan user
interface (UI) atau pesan kesalahan. Nilai bisa 0 yang berarti tidak berhubungan
dengan suatu window.
Operation. Merupakan string yang menggambarkan operasi yang digunakan
terhadap suatu file atau direktori. Operasi yang dimaksud bisa berupa:
open. Membuka item yang ditentukan oleh parameter FileName. Bisa berupa file
atau direktori. Item akan dibuka menggunakan aplikasi sesuai dengan ekstensi file
yang di registrasikan.
edit. Menampilkan editor yang digunakan untuk membuka dan meng-edit file
dokumen dari parameter FileName. Jika parameter yang diberikan bukan
merupakan file dokumen, fungsi akan gagal dipanggil.
explore. Membuka direktori/folder yang diberikan oleh parameter FileName.
find. Membuka dialog pencarian pada direktori aktif atau pada direktori yang
ditentukan oleh parameter FileName.
print. Mencetak file yang ditentukan oleh parameter FileName. Jika parameter yang
diberikan bukan merupakan file dokumen, fungsi akan gagal dipanggil.
FileName. Merupakan suatu obyek, bisa berupa file atau direktori, yang di eksekusi
oleh operasi yang ditentukan oleh parameter Operation.
Parameters. Jika file yang ditentukan merupakan file aplikasi yang bisa dijalankan,
isi dari parameter ini digunakan sebagai parameter untuk file aplikasi yang
bersangkutan.
Directory. Merupakan direktori kerja default, jika tidak diisi merupakan direktori
aktif.
ShowCmd. Flag yang menentukan bagaimana aplikasi ditampilkan waktu dibuka.
Konstanta yang bisa dipakai:
SW_HIDE
SW_MAXIMIZE
SW_MINIMIZE
SW_RESTORE
SW_SHOW
SW_SHOWDEFAULT
SW_SHOWMAXIMIZED

POLITEKNIK NEGERI BANDUNG

4
SW_SHOWMINIMIZED
SW_SHOWMINNOACTIVE
SW_SHOWNA
SW_SHOWNOACTIVATE
SW_SHOWNORMAL

Jika fungsi berhasil dijalankan, akan mengembalikan nilai integer lebih besar dari
32. Jika gagal, akan mengembalikan kode kesalahan sebagai berikut:
0
ERROR_FILE_NOT_FOUND
ERROR_PATH_NOT_FOUND
ERROR_BAD_FORMAT
SE_ERR_ACCESSDENIED
SE_ERR_ASSOCINCOMPLETE
SE_ERR_DDEBUSY
SE_ERR_DDEFAIL
SE_ERR_DDETIMEOUT
SE_ERR_DLLNOTFOUND
SE_ERR_FNF
SE_ERR_NOASSOC
SE_ERR_OOM
SE_ERR_PNF
SE_ERR_SHARE

Contoh penggunaannya:
Membuka aplikasi tertentu.
ShellExecute(0, ‘open’, ‘notepad.exe’, nil, nil, SW_SHOWNORMAL);
Explore direktori/folder tertentu.
ShellExecute(0, ‘explore’, ‘C:\Windows’, nil, nil, SW_SHOWNORMAL);
Edit file dokumen.
ShellExecute(0, ‘edit’, ‘C:\textfile.txt’, nil, nil, SW_SHOWNORMAL);
Menampilkan dialog pencarian pada direktori tertentu.

POLITEKNIK NEGERI BANDUNG

5
ShellExecute(0, ‘find’, ‘C:\Windows\system’, nil, nil, SW_SHOWNORMAL);
Mencetak file dokumen.
ShellExecute(0, ‘print’, ‘C:\textfile.txt’, nil, nil, SW_SHOWNORMAL);

III. ALAT-ALAT YANG DIPERGUNAKAN

1. Software Notepad++
2. Program CMD
3. Microsoft Office Word

IV. PERTANYAAN

1) Buatlah algoritma dalam bentuk flowchart dan program untuk menampilkan 5


aplikasi yang terdapat di dalam Windows OS anda, dimana proses
pemilihannya dilakukan melalui fungsi input berupa angka 1 hingga 5 yang
menunjukan lokasi dan aplikasi yang dipilih. Fungsi Input akan menghasilkan
return value berupa angka yang di-input--kan dan kemudian fungsi main akan
memanggil fungsi yang akan memunculkan aplikasi tersebut sesuai aplikasi
yang terpilih.

V. LANGKAH KERJA

1. Siapkan alat alat dan komponen yang digunakan seperti CMD dan Notepad++
2. Buat beberapa fungsi dan kemudian implementasikan soal berikut ke dalam diagram
blok, Flowchart dan Bahasa Pemrograman.
3. Ikuti sesuai arahan yang telah ditugaskan dalam Bab Pertanyaan.
4. Buat diagram Blok
5. Buat Flowchart
6. Implementasikan ke dalam Bahasa Pemrograman

VI. HASIL PRAKTIKUM

POLITEKNIK NEGERI BANDUNG

6
6.1 Diagram Blok

POLITEKNIK NEGERI BANDUNG

7
6.2 Flowchart

Start Input() Aplikasi (Y)

1. Malwarebytes X
2. Mozila Firefox If
3. Multisim
(Y==1) 1
4. Adobe Photoshop
2017
5. Intenet Download
Manager
Return

If
2
A=input() (Y==2)

Aplikasi(A)
If 3
(Y==3)

Start
End

If
4
F (Y==4)

Tidak Tersedia If
(Y==5)
5

POLITEKNIK NEGERI BANDUNG

8
1 2 3 4 5

Char Char Char Char Char


Aplikasi Aplikasi Aplikasi Aplikasi Aplikasi
1[] 2[] 3[] 4[] 5[]

HINSTANCE HINSTANCE HINSTANCE HINSTANCE HINSTANCE


hRet= hRet= hRet= hRet= hRet=
Shellexecute Shellexecute Shellexecute Shellexecute Shellexecute
(HWND_DESKT (HWND_DESKT (HWND_DESKT (HWND_DESKT (HWND_DESKT
OP, OP, OP, OP, OP,

“open”, “open”, “open”, “open”, “open”,

Aplikasi1 , Aplikasi2, Aplikasi3, Aplikasi4, Aplikasi5,

NULL, NULL, NULL, NULL, NULL,

NULL, NULL, NULL, NULL, NULL,

SW_SHOW}} SW_SHOW}} SW_SHOW}} SW_SHOW}} SW_SHOW}}

POLITEKNIK NEGERI BANDUNG

9
6.3 Input Program dan Hasil Output

6.3.1 Input Program

POLITEKNIK NEGERI BANDUNG

10
Gambar 6.1 Input Pemrograman pada Notepad++

6.3.2 Hasil Output


1. Malwarebytes

POLITEKNIK NEGERI BANDUNG

11
Gambar 6.2 Output Pemrograman Aplikasi 1

2. Mozila Firefox

Gambar 6.3 Output Pemrograman Aplikasi 2

3. Multisim

Gambar 6.4 Output Pemrograman Aplikasi 3

POLITEKNIK NEGERI BANDUNG

12
4. Adobe Photoshop 2017

Gambar 6.5 Output Pemrograman Aplikasi 4

5. Internet Download Manager

Gambar 6.6 Output Pemrograman Aplikasi 5

POLITEKNIK NEGERI BANDUNG

13
6. Input salah/tidak tersedia

Gambar 6.7 Output Pemrograman Aplikasi tidak tersedia

VII. ANALISA DATA


Dari hasil praktikum diatas terdapat beberapa hal yang dapat dilihat yaitu
penggunaan fungsi shellexecute dilibatkan Void main,int input,void aplikasi, dan
tujuan dari penggunaan fungsi ini yaitu tidak lain untuk membuat program
menjadi terstruktur dan mudah dipahami.
Flowchart terdapat terminal symbol,kemudian preparation
symbol,Connector,off page Connector,Manual input,Predefined symbol,Decision
symbol.

VIII. KESIMPULAN
Pada praktikum ini dapat disimpulkan bahwa fungsi dari Shellexecute dapat
menjalankan sebuah aplikasi di Windows OS menggunakan berbagai macam
parameter seperti : HWND_DESKTOP, IpOperation, IpFile, IpParameters,
IpDirectory, nShowCmd. Perlu diperhatikan juga setiap melakukan atau memulai
penulisan program harus sesuai dengan urutan struktur penulisan programnya, dan
juga diperhatikan untuk menampilkan sebuah perintah diperlukan printf.

POLITEKNIK NEGERI BANDUNG

14
DAFTAR PUSTAKA

Anonim. 2016, Fungsi Dalam Bahasa C.

https://www.mahirkoding.com/mengenal-fungsi-dalam-bahasa-c/

(Diakses pada tanggal 16 Juli 2021)

Anonim, Pengertian Flowchart dan Jenisnya

https://informatikalogi.com/pengertian-flowchart-dan-jenis-jenisnya/

(Diakses pada tanggal 16 Juli 2021)

rudycs, 2009, Fungsi WindowsApi Shellexecute

http://rudycs.blogspot.com/2009/07/fungsi-windows-api-shellexecute.html

(Diakses pada tanggal 16 Juli 2021)

POLITEKNIK NEGERI BANDUNG

15

Anda mungkin juga menyukai