BAHASA PEMOGRAMAN
Pengulangan
OLEH :
DOSEN :
FAKULTAS TEKNIK
Jobsheet : Praktek Bahasa Pemograman Dosen : Dr. Mukhlidi Muskhir, S.Pd., M.Kom
Judul : Pengulangan Prodi :Teknik Elektro Industri
Nomor Jobsheet : A04 Jurusan : Teknik Elektro– FT UNP
A. Tujuan
Tujuan Umum:
Merancang pemograman komputer untuk kebutuhan Teknik Elektro Industri
Tujuan Khusus:
1. Mengenali beberapa jenis algoritma pengulangan
2. Merancang algoritma pemograman pengulangan untuk berbagai kasus
3. Menerapkan algoritma pemograman pengulangan
B. Teori Singkat
Algoritma dasar yang sering digunakan dalam pengembangan pemograman adalah
pengualangan. Ada bebera jenis pengulangan yang dapat digunakan dalam teknik
pemograman. Algoritma pengulangan dalam pemograman adalah proses eksekusi
pemograman yang berulang-ulang. Ada dua algoritma pengulangan yaitu bersyarat dan
terbatas. Pengulangan bersyarat adalah proses pengulangan eksekusi program yang terus
berlangsung sampai batasan tertentu. Pengulangan terbatas adalah proses pengulangan
eksekusi program yang berlansung atas dasar keterbatasan yang telah ditetapkan
sebelumnya. Secara umum kedua jenis pemograman, dapat digambarkan bentuk algoritma
dalam bentuk flowchat diagram seperti pada gambar 4.1.
Pemograman komputer sesuai
dengan algoritma pemograman
komputer yang akan dikembangkan.
Perhatikan gambar 4.1, menunjukkan
ada dua kemungkinan yang terjadi, yaitu
jika benar memenuhi syarat maka
dilakukan perintah (statement) dan
dilakukan pengulangan. Jika tidak
memenuhi persyaratan tersebut maka
proses pengulangan dihentikan.
Persyaratan-persyaratan tersebut
memenuhi atau tidak memenuhi,
menggunakan perbandingan. Pada
bahasa pemograman C++ ada operator
perbanding (rational) yang digunakan
untuk membandingkan antra dua
operand.
Operand yang pertama adalah operand pembanding sebagai standard, dan operand
dibandingkan yang dapat berubah sesuai dengan proses yang terjadi pada interaksi pada
pemograman. Perhatikan tabel 4.1, Operasional Rasional.
Tabel. 4.1
Operasional Rasional Pemograman C++
No Operator Keterangan
1 == Sama dengan
2 != Tidak sama
3 < Kecil
4 > Besar
5 <= Kecil sama
6 >= Besar sama
Ada tiga jenis pengulangan yang digunakan pada C++ yaitu for(), while() do, dan
do while(). Dimulai dari for(), terlihat algoritmanya seperti yang tampak pada gambar 4.2.
Terlebih dahulu ada statemen inisialisasi dengan variabel tertentu dan tipe data tertentu
(biasanya: bilangan bulat), yang kemudian diakhir program mengalami perubahan demi
perubahan sehingga memenuhi persyaratan tertentu. Pengulangan akan terus terjadi sampai
statemen yang dinginkan berhasil
Contoh penulisan algoritma while() do dapat diliahat pada list program 4.2.
D. Langkah-langkah
1. Buatlah sebuah pemograman dengan menampilkan tulisan “UNP” Sebanyak 10 kali
dengan menggunakan perintah for(). Sebelum membuat program terlebih dahulu anda
buatkan sebuah konsep algoritma pemogramannya dengan menggunakan flowchar
diagram. Hasilnya adalah seperti berikut ini:
Hasil pemograman yang direncanakan :
1. UNP
2. UNP
3. UNP
4. UNP
5. UNP
6. UNP
7. UNP
8. UNP
9. UNP i=0
10. UNP
cout<<
I < 10 "UNP" i++
<<endl;
2. Selanjutnya anda, cobakan membuat aplikasi pemogramanya, ketikkkan, simpan, dan
kompilasi program tersebut!! Apakah yang anda menemukan pesan kesalahan?
#include<iostream>
using namespace std;
int main(){
int i;
for(i=0;i<10;i++){
cout<<"UNP"<<endl;
}
}
3. Jika ya maka lakukan pebaikan dengan mengecek hasil pekerjaan pada langkah 1 dan 2.
Lakukan sampai berhasil.
C:\Users\Acer>d:
D:\PRAKTIKUM PEMOGRAMAN>41
UNP
UNP
UNP
UNP
UNP
UNP
UNP
UNP
UNP
UNP
D:\PRAKTIKUM PEMOGRAMAN>
cout<<b<<
i<=b
"! = "; i++
#include <iostream>
using namespace std;
int main(){
int b,c;
cout<<"Program Faktorial"<<endl;
cout<<"Masukan Bilangan yang akan di Faktorialkan= ";
cin>>b;
c=b;
cout<<"bilangan ="<<b<<endl;
cout<<b<<"! = ";
for(int i=1;i<=b;i++){
cout<<i;
if(i==b){
cout<<" =";
}
else{
cout<<"*";
}
}
//hitung start
for(int i=1;b>i;){
b=b-1;
c=c*b;
}
//hitung end
//tampilkan start
cout<<c;
return 0;
}
7. Uji kebenarannya dengan dengan memasukkan angka 5, apakah hasilnya 120? Jika
tidak maka program anda salah dan cek kembali algortima dan program yang sudah
anda hasilkan! Lakukan pengujian sampai benar hasilnya 120.
8. Uji kembali dengan memasukkan a=10, apakah hasilnya sudah mencapai 3628800,
jika tidak sama maka algoritma dan program anda masih salah. Lakukan
pengecekkan kembali hingga hasilnya benar.
C:\Users\Acer>d:
D:\PRAKTIKUM PEMOGRAMAN>42
Program Faktorial
Masukan Bilangan yang akan di Faktorialkan= 5
bilangan =5
5! = 1*2*3*4*5 =120
D:\PRAKTIKUM PEMOGRAMAN>42
Program Faktorial
Masukan Bilangan yang akan di Faktorialkan= 10
bilangan =10
10! = 1*2*3*4*5*6*7*8*9*10 =3628800
D:\PRAKTIKUM PEMOGRAMAN>
a. Segitiga siku-siku
Notepad++:
#include <iostream>
using namespace std;
int main() {
int i,j,a;
cout<<"masukkan nilai a= ";
cin>>a;
for(i=1;i<=a;i++){
for(j=1;j<=i;j++){
cout<<"0";
}
cout<<endl;
}
return 0;
}
Command Prompt:
Microsoft Windows [Version 10.0.16299.309]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Users\Acer>d:
D:\PRAKTIKUM PEMOGRAMAN>43
masukkan nilai a= 5
0
00
000
0000
00000
Command Prompt:
D:\PRAKTIKUM PEMOGRAMAN>cd D:\PRAKTIKUM
PEMOGRAMAN
D:\PRAKTIKUM PEMOGRAMAN>d:
D:\PRAKTIKUM PEMOGRAMAN>g++ -o 49b.exe 49b.c
D:\PRAKTIKUM PEMOGRAMAN>49b
masukkan jumlah baris:10
0
000
00000
0000000
000000000
00000000000
0000000000000
000000000000000
00000000000000000
0000000000000000000
D:\PRAKTIKUM PEMOGRAMAN>
10. Kembali anda mengunakan perintah for(), namun anda menggunakan dua for() yang
saling terkait. Atau disebut juga pengulangan bersarang. For() kedua menunggu for()
pertama bekerja dan jika selesai for() pertama menunggu for() kedua, dan begitu
seterusnya hingga selesai.
11. Anda buat algoritma pemogramannya dengan menggunakan diagram alir
cout<<"========================================
==="<<endl;
cout<<"= program perulangan 2 for berkaitan
="<<endl;
cout<<"========================================
==="<<endl;
int x,y;
for(x=1;x<=9;x++)
{
for(y=1;y<=x;y++)
{
cout<<0;
}
cout<<endl;
}
}
Command Prompt:
D:\PRAKTIKUM PEMOGRAMAN>
D:\PRAKTIKUM PEMOGRAMAN>cd D:\PRAKTIKUM
PEMOGRAMAN
D:\PRAKTIKUM PEMOGRAMAN>d:
D:\PRAKTIKUM PEMOGRAMAN>410
===========================================
= program perulangan 2 for berkaitan =
===========================================
0
00
000
0000
00000
000000
0000000
00000000
000000000
D:\PRAKTIKUM PEMOGRAMAN>
Command Prompt:
C:\Users\Acer>cd D:\PRAKTIKUM PEMOGRAMAN
C:\Users\Acer>d:
D:\PRAKTIKUM PEMOGRAMAN>414
1. UNP
2. UNP
3. UNP
4. UNP
5. UNP
6. UNP
7. UNP
8. UNP
9. UNP
10. UNP
D:\PRAKTIKUM PEMOGRAMAN>
b. Faktorial
Notepad++:
#include <iostream>
using namespace std;
int main (){
int a,i;
cout<<"Masukakn Nilai a = ";
cin>>a;
cout<<"Nilai a = ";
cout<<a<<"! = ";
i=a;
while(i>=2){
cout<<i<<" x ";
i-=1;
}
i = a*(a-1)*(a-2)*(a-3)*(a-4);
cout<<"1 = "<<i;
}
Command Prompt:
D:\PRAKTIKUM PEMOGRAMAN>cd D:\PRAKTIKUM
PEMOGRAMAN
D:\PRAKTIKUM PEMOGRAMAN>d:
D:\PRAKTIKUM PEMOGRAMAN>414b
Masukakn Nilai a = 7
Nilai a = 7! = 7 x 6 x 5 x 4 x 3 x 2 x 1 = 2520
D:\PRAKTIKUM PEMOGRAMAN>
Command Prompt:
D:\PRAKTIKUM PEMOGRAMAN>cd D:\PRAKTIKUM
PEMOGRAMAN
D:\PRAKTIKUM PEMOGRAMAN>d:
D:\PRAKTIKUM PEMOGRAMAN>415
1. UNP
2. UNP
3. UNP
4. UNP
5. UNP
6. UNP
7. UNP
8. UNP
9. UNP
10. UNP
D:\PRAKTIKUM PEMOGRAMAN>
b. Faktorial
2. Buatlah sebuah algoritma pemograman untuk barisan deret kelipatan 5 hingga minimal
untuk 10 barisan bilangan. (gunakan salah satu bentuk pengulangan apakah for(),
while() do, atau do while() ). Kemudian anda buat programnya!! Hingga berhasil catat
semua kegagalan anda dan analisis.
Notepad++ :
#include <iostream>
using namespace std;
int main(){
cout<<"================================"<<endl;
cout<<"= looping kelipatan lima ="<<endl;
cout<<"================================"<<endl;
cout<<"= Hasil ="<<endl;
int x;
for(x=5;x<=10*5;x=x+5)
{cout<<x<<" ";}
return 0;
}
Command Prompt:
Microsoft Windows [Version 10.0.16299.371]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Users\Acer>d:
D:\PRAKTIKUM PEMOGRAMAN>422
================================
= looping kelipatan lima =
================================
= Hasil =
5 10 15 20 25 30 35 40 45 50
D:\PRAKTIKUM PEMOGRAMAN>
Berhasil.
Algoritma:
Notepad++ :
#include <iostream>
using namespace std;
int main(){
cout<<"==============================================="<<
endl;
cout<<"= looping kelipatan 5 dan dijumlahkan ="<<endl;
cout<<"==============================================="<<
endl;
cout<<"= Hasil ="<<endl;
int x,total=0;
for(x=5;x<=15*5;x=x+5)
{
cout<<x<<" ";
total=total+x;
}
cout<<endl;
cout<<"total="<<total;
return 0;
}
Command Prompt:
D:\PRAKTIKUM PEMOGRAMAN>cd D:\PRAKTIKUM
PEMOGRAMAN
D:\PRAKTIKUM PEMOGRAMAN>d:
D:\PRAKTIKUM PEMOGRAMAN>432
===============================================
= looping kelipatan 5 dan dijumlahkan =
===============================================
= Hasil =
5 10 15 20 25 30 35 40 45 50 55 60 65 70 75
total=600
Ketika anda menjawab y maka program akan mengulangi lagi program anda, namun
jika anda menjawab t maka program akan berhenti.
Algoritma:
Notepad++ :
#include <iostream>
using namespace std;
int jumlah()
{
int a,b,hasil;
cout<<"============================================="<<en
dl;
cout<<"= program perkalian ="<<endl;
cout<<"= programmer = Aidil Syaputra
="<<endl;
cout<<"============================================="<<en
dl;
int main()
{
char x;
do
{
jumlah();
cout<<"apakah anda mengulangi program ini ?"<<endl;
cout<<"ketik huruf Y"<<endl;
cout<<"ketik huruf T sebagai tidak"<<endl;
cout<<"============================="<<endl;
Command Prompt:
D:\PRAKTIKUM PEMOGRAMAN>cd D:\PRAKTIKUM PEMOGRAMAN
D:\PRAKTIKUM PEMOGRAMAN>d:
D:\PRAKTIKUM PEMOGRAMAN>442
=============================================
= program perkalian =
= programmer = Aidil Syaputra =
=============================================
masukan nilai pertama = 90
masukan nilai kedua = 900
=======================
hasil perkalian = 81000
=================
apakah anda mengulangi program ini ?
ketik huruf Y
ketik huruf T sebagai tidak
=============================
pilihan anda = T
D:\PRAKTIKUM PEMOGRAMAN>