Anda di halaman 1dari 13

LAPORAN PRAKTIKUM PEMROGRAMAN KOMPUTER

PROGRAM STUDI TEKNIK NUKLIR

NAMA : FUADI NUR AMAL


NIM : 19/446713/TK/49818
KELAS : TEKNIK NUKLIR

HARI, TANGGAL PRAKTIKUM : KAMIS, 21 AGUSTUS 2020


HARI, TANGGAL LAPORAN : RABU, 26 AGUSTUS 2020

ACARA :
MENYUSUN PROGRAM DENGAN STATEMENT SWITCH

LABORATORIUM KOMPUTASI
DEPARTEMEN TEKNIK NUKLIR DAN TEKNIK FISIKA
FAKULTAS TEKNIK
UNIVERSITAS GADJAH MADA
YOGYAKARTA
2020
1. Masalah
Bagaimana membuat beberapa pola huruf alphabet dengan ukuran (tinggi, lebar, dan tebal) dan
karakter huruf untuk menggambar pola tersebut di samping.

2. Tujuan
Pratikan dapat menggunakan statement switch untuk menyusun menu program untuk membuat
beberapa pola huruf alphabet.

3. Analisis
a. Informasi
Beberapa pola huruf alphabet yang ditampilkan oleh program.
b. Data
Ukuran pola huruf yang akan digunakan (tinggi, lebar, dan tebal). Kemudian karakter untuk
pola yang menyusun alphabet-alphabet tersebut.
c. Landasan Teori
Pratikan diperintahkan untuk membuat beberapa pola-pola huruf alphabet. Seperti contohnya
sub- program dalam bentuk U berikut :

void tampil_U(char khar1, char khar2, int tinggi, int lebar, int tebal)
{
for(int baris=1;baris<=(tinggi-tebal);baris++)
{ garisx(khar1,tebal,0);
garisx(khar2,lebar-2*tebal,0);
garisx(khar1,tebal,1);
}

for(int baris=1;baris<=tebal;baris++)
{
garisx(khar1,lebar,1);
}
}

Sub-program membagi bentuk U dalam 2 bagian, pertama yaitu kedua tangan dari huruf U dan yang
kedua, dasar dari huruf U itu sendiri. Untuk tangan dari U terdapat 2 tangan yang terdapat di kanan
dan di kiri huruf dengan tingginya yaitu lebar-tebal. Setelah menyatakan tingginya, pratikan
membuat tangan U itu dari kanan ke kiri. Untuk yang membentuk huruf diberi karakter ‘x’ dan untuk
karakter 2 diberi kosong ‘ ‘. Yang pertama di kiri dibuat tangan U sebesar tebal, lalu diberi spasi
untuk ke tangan kanan sebesar lebar-2*tebal, yang dilanjutkan dengan memberi tangan kanan
sebesar tebal. Setelah tangan selesai lalu pratikan melanjutkan membuat dasar U yang sebesar lebar,
seperti contoh dibawah ini :
xx......xx
xx......xx
xx......xx
xx......xx
xxxxxxx
xxxxxxx
4. Algoritma

o Sub-program garisx()
 Mulai
 Untuk kolom=0,kolom<lebar,kolom++
- Simbol
- Jika kode≠0, endl
 Selesai.
o Sub-program tampil_U()
 Mulai
 Untuk baris=1,baris≤tinngi-tebal,baris++
- garisx(khar1,tebal,0);
- garisx(khar2,lebar-2*tebal,0);
- garisx(khar1,tebal,1);
 Untuk baris=1,baris≤ tebal,baris++
- garisx(khar1,lebar,1);
 Selesai.
o Sub-program tampil_T()
 Mulai
 Untuk baris=1;baris<=tebal;baris++
- garisx(khar1,lebar,1);
 Untuk baris=1;baris<=tinggi;baris++
- garisx(khar2,(lebar-tebal)/2,0);
- garisx(khar1,tebal,0);
- garisx(khar2,(lebar-tebal)/2,1);
 Selesai.
o Sub-program tampil_F()
 Mulai
 Untuk baris=1;baris<=tebal;baris++
- garisx(khar1,lebar,1);
 Untuk baris=1;baris<=tebal;baris++
- garisx(khar1,tebal,0);
- garisx(khar2,lebar-tebal,1);
 Untuk baris=1;baris<=tebal;baris++
- garisx(khar1,lebar,1);
 Untuk baris=1;baris<=lebar-3*tebal;baris++
- garisx(khar1,tebal,0);
- garisx(khar2,lebar-tebal,1);
 Selesai.
o Sub-program tampil_H()
 Mulai
 Untuk baris=1;baris<=(lebar-tebal)/2;baris++
- garisx(khar1,tebal,0);
- garisx(khar2,lebar-2*tebal,0);
- garisx(khar1,tebal,1);
 Untuk baris=1;baris<=tebal;baris++
- garisx(khar1,lebar,1);
 Untuk baris=1;baris<=(lebar-tebal)/2;baris++
- garisx(khar1,tebal,0);
- garisx(khar2,lebar-2*tebal,0);
- garisx(khar1,tebal,1);
 Selesai.
o Sub-program tampil_Z()
 Mulai
 Untuk baris=1;baris<=tebal;baris++
- garisx(khar1,lebar-3,1);
 Untuk baris=1;baris<=lebar-2*tebal;baris++
- garisx(khar2,lebar-tebal-baris-2,0);
- garisx(khar1,tebal,0);
- garisx(khar2,baris-1,1);
 Untuk baris=1;baris<=tebal;baris++)
- garisx(khar1,lebar-3,1);
 Selesai
o Program utama
 Mulai
 Tampilkan identitas
 Karak1=’X’, karak2=’.’
 Pilihan, nbaris=6, nkolom=12, tebal=2
 Lakukan perulangan saat menuprogram
Switch : case 1 : Tinggi, lebar, tebal pola,break
case 2 : Dua karakter untuk pola,break
case 3 : tampil_U,break
case 4 : tampil_T,break
case 5 : tampil_F,break
case 6 : tampil_H,break
case 7 : tampil_Z,break
default : Terima Kasih ........
 Berhenti saat pilihan = 0
 Selesai.

5. Flowchart

o Sub-program garisx

o Sub-program tampil_U
o Sub-program tampil_T

o Sub-program tampil_F

o Sub-program tampil_H
o Sub-program tampil_Z

o Program utama

6. Listing program

#include<iostream>

#include<string>

#include<windows.h>

using namespace std;

void identitas(){

cout<<"\n\n\n";

cout<<"\t\t\t\t DEPARTEMEN TEKNIK NUKLIR DAN TEKNIK FISIKA\n";

cout<<"\t\t\t\t================================================\n";

cout<<"\t\t\t\t\t NAMA : FUADI NUR AMAL\n";


cout<<"\t\t\t\t\t NIM\t : 19/446713/TK/49818\n";

cout<<"\t\t\t\t\t PRODI : TEKNIK NUKLIR\n";

cout<<"\t\t\t\t================================================\n\n\n";

//garis karakter, kode ?0 ganti baris

void garisx(char simbol,int lebar, int kode)

for(int kolom=0; kolom<lebar; kolom++) cout<<simbol;

if(kode!=0) cout<<endl;

void menuprogram(int& pilih) // menu program

string menu[8]={"Selesai ","Input ukuran","Input kharakter digunakan","tampil U","tampil T","tampil


F","tampil H","tampil Z"};

cout<<endl;for(int i=0;i<8;i++) cout<<i<<". "<<menu[i]<<endl;

cout<<"inputkan nomor pilihan Anda = ";cin>>pilih;

//menampilkan pola

void tampil_U(char khar1, char khar2, int tinggi, int lebar, int tebal)

cout<<"\n";

for(int baris=1;baris<=tinggi;baris++)

{ garisx(khar1,tebal,0);

garisx(khar2,lebar-2*tebal,0);

garisx(khar1,tebal,1);

for(int baris=1;baris<=tebal;baris++)

garisx(khar1,lebar,1);

}
}

void tampil_T(char khar1, char khar2, int tinggi, int lebar, int tebal)

cout<<"\n";

for(int baris=1;baris<=tebal;baris++)

garisx(khar1,lebar,1);

for(int baris=1;baris<=tinggi;baris++)

garisx(khar2,(lebar-tebal)/2,0);

garisx(khar1,tebal,0);

garisx(khar2,(lebar-tebal)/2,1);

void tampil_F(char khar1, char khar2, int tinggi, int lebar, int tebal)

cout<<"\n";

for(int baris=1;baris<=tebal;baris++)

garisx(khar1,lebar,1);

for(int baris=1;baris<=tebal;baris++)

garisx(khar1,tebal,0);

garisx(khar2,lebar-tebal,1);

for(int baris=1;baris<=tebal;baris++)

{
garisx(khar1,lebar,1);

for(int baris=1;baris<=lebar-3*tebal;baris++)

garisx(khar1,tebal,0);

garisx(khar2,lebar-tebal,1);

void tampil_H(char khar1, char khar2, int tinggi, int lebar, int tebal)

cout<<"\n";

for(int baris=1;baris<=(lebar-tebal)/2;baris++)

garisx(khar1,tebal,0);

garisx(khar2,lebar-2*tebal,0);

garisx(khar1,tebal,1);

for(int baris=1;baris<=tebal;baris++)

garisx(khar1,lebar,1);

for(int baris=1;baris<=(lebar-tebal)/2;baris++)

garisx(khar1,tebal,0);

garisx(khar2,lebar-2*tebal,0);

garisx(khar1,tebal,1);

void tampil_Z(char khar1, char khar2, int tinggi, int lebar, int tebal)

cout<<"\n";
for(int baris=1;baris<=tebal;baris++)

garisx(khar1,lebar-3,1);

for(int baris=1;baris<=lebar-2*tebal;baris++)

garisx(khar2,lebar-tebal-baris-2,0);

garisx(khar1,tebal,0);

garisx(khar2,baris-1,1);

for(int baris=1;baris<=tebal;baris++)

garisx(khar1,lebar-3,1);

//====== program utama ===================

int main()

identitas();

system("color F0");

char karak1='x',karak2='.';

int pilihan, nbaris=6,nkolom=12,tebal=2;

do

{menuprogram(pilihan);

switch (pilihan)

case 1 : {cout<<"Tinggi, lebar, tebal pola = ";cin>>nbaris>>nkolom>>tebal; break;}

case 2 : {cout<<"Dua karakter untuk pola = ";cin>>karak1>>karak2;break;}

case 3 : {tampil_U(karak1,karak2,nbaris,nkolom,tebal); break;}

case 4 : {tampil_T(karak1,karak2,nbaris,nkolom,tebal); break;}


case 5 : {tampil_F(karak1,karak2,nbaris,nkolom,tebal); break;}

case 6 : {tampil_H(karak1,karak2,nbaris,nkolom,tebal); break;}

case 7 : {tampil_Z(karak1,karak2,nbaris,nkolom,tebal); break;}

default : cout<<"Nomor yang anda tuju tidak dapat diproses, silahkan coba lagi :)
\n\n";

while(pilihan!=0);

system("pause");

return 0;

7. Output Eksekusi Program


8. Catatan
Cara Kerja Program

Ketika pertama pratikan harus lakukan masuk ke program, pratikan akan diberi beberapa option
menu-menu yang dapat dipilih. Untuk mengubah besar dari tinggi, lebar, dan tebal dapat
dilakukan di menu ke-1. Untuk megubah karakter pendiri huruf dapat pergi ke menu ke-2.
Kemudian untuk membuka program huruf U dipilih pada menu ke-3. Untuk membuka program
huruf T dipilih pada menu ke-4. Untuk membuka program huruf F dipilih pada menu ke-5.
Untuk membuka program huruf H dipilih pada menu ke-6. Untuk membuka program huruf Z
dipilih pada menu ke-7. Saat program sudah selesai digunakan maka pilih menu 0 lalu program
akan keluar dengan sendirinya.
Dunia bahasa pmrograman komputer, statement switch digunakan untuk membuat mekanisme
seleksi yang memperbolehkan untuk memberi nilai pada suatu variabel yang hampir mirip
seperti fungsi if. Beberapa menu yang terdapat di program dibuat menggunakan statemen switch
sehingga program tidak hanya menjalankan 1 program tetapi banyak program. Disitu terdapat
fungsi pengulangan do while, cara kerja ini yaitu suatu fungsi akan terus mengulang hingga
mencapai salah/false. Selain itu ada juga heaer windows.h yang memungkinkan kita untuk
menguban background layar dan juga warna tulisan dalam program denga systeem (“color F0”)
yang mana F untuk background layar putih dan 0 untuk font tulisan hitam. Didalam program ini
kita diperintahkan untuk membuat beberapa pola huruf alphabet. Seperti contohnya sub- program
dalam bentuk U berikut :

void tampil_U(char khar1, char khar2, int tinggi, int lebar, int tebal)
{
for(int baris=1;baris<=(tinggi-tebal);baris++)
{ garisx(khar1,tebal,0);
garisx(khar2,lebar-2*tebal,0);
garisx(khar1,tebal,1);
}

for(int baris=1;baris<=tebal;baris++)
{
garisx(khar1,lebar,1);
}
}

Anda mungkin juga menyukai