LAPORAN PRAKTIKUM
ALGORITMA DAN PEMROGRAMAN 1
PERULANGAN
Oleh
Nama : Nor Janah
NIM : A1317065
JURUSAN TEKNIK INFORMATIKA
POLITEKNIK NEGERI TANAH LAUT
PELAIHARI
2017
1
BAB VII
PROSES PERULANGAN
7.1 Pernyataan for
Perulangan yang pertama adalah for. Bentuk umum pernyataan for sebagai berikut
For ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )
Bila pernyataan didalam for lebih dari satu maka pernyataan-pernyataan tersebut harus
diletakkan di dalam tanda kurung.
For ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )
{
Pernyataan / perintah;
Pernyataan / perintah;
Pernyataan / perintah;
}
Kegunaan dari masing-masing argumen for di atas adalah:
Inisialisasi : merupakan bagian untuk memberikan nilai awal untuk
variable-variabel tertentu.
Syarat pengulangan : memegang kontrol terhadap pengulangan, karena
bagian ini yang akan menentukan suatu perlangan
diteruskan atau dihentikan.
Pengubah nilai pencacah : mengatur kenaikan atau penurunan nilai pencacah.
Contoh :
Sebagai contoh program untuk mencetak bilangan dari 81 hingga 90 secara menaik, secara
menurun dan menampilkan bilangan ganjil, sebagai berikut:
Contoh program secara menaik: using namespace std;
#include<conio.h>
#include<iostream>
int main()
{
int a;
for(a = 85; a <= 90; ++a)
cout<<"\t "<<a;
getch();
}
Hasil eksekusi program
2
Contoh program secara menurun:
using namespace std;
#include<conio.h>
#include<iostream>
int main()
{
int a;
for(a = 90; a >= 85; --a)
cout<<"\t "<<a;
getch();
}
Akhir Program
Contoh program bilangan ganjil:
using namespace std;
#include<conio.h>
#include<iostream>
int main()
{
int a;
for(a = 89; a >= 81; a-=2)
cout<<"\t "<<a;
getch();
}
Akhir Program
7.1.1 Pernyataan Nested-For
Pernyataan nested-for adalah suatu perulangan for didalam perulangan for yang lainnya.
Bentuk umum pernyataan nested for sebagai berikut:
for ( inisialisasi; syarat pengulangan;
pengubah nilai pencacah )
{
for ( inisialisasi; syarat pengulangan;
pengubah nilai pencacah)
{
pernyataan / perintah;
}
}
3
Didalam penggunaan nested for, perulangan yang didalam terlebih dahulu dihitung
hingga selesai, kemudian perulangan yang di luar diselesaikan.
Contoh program nested for:
using namespace std;
#include<conio.h>
#include <iostream>
int main()
{
int a, b;
for(a = 1; a <= 10; a+=2)
{
cout<<"\n\n";
for(b = a; b <= 10; b+=2)
cout<<a<<"\t ";
}
getch();
}
Akhir Program
7.1.2 Perulangan Tidak Berhingga
Perulangan tak berhingga merupakan perulangan (loop) yang tak pernah berhenti atau
mengulang terus, hal ini sring terjadi disebabkan adanya kesalahan penanganan kondisi
yang dipakai untuk keluar dari loop. Sebagai contoh, jika penulisan perintah sebagai
berikut:
using namespace std;
#include<conio.h>
#include <iostream>
int main()
{
int bil;
for (bil = 60; bil >=10; bil++)
cout<<bil<<" ";
getch();
}
Akhir program
4
Pada pernyataan ini tidak akan berhenti unntuk menampilkan bilangan menurun,
kesalahan terjadi pada pengubah nilai pencacah, seharusnya penulisan yang benar berupa
bil--
Akan tetapi yang ditulis adalah :
bil ++
oleh karena kondisi bil >=1 selalu bernilai benar (karena bil bernilai 6), maka pernyataan
cout<bil<<” “;
atau terus dijalankan.
Jika terjadi hal semacam ini, untuk menghentikan proses yang terus menerus semacam
ini dengan menekan tombol CTRL – PAUSE atau CTRL– BREAK
7.2 PERNYATAAN GOTO
Pernyataan goto merupakan instruksi untuk mengarahkan eksekusi program ke-
pernyataan yang diawali dengan suatu label. Label merupakan suatu pengenal (identifier)
yang diikuti dengan tanda titik dua (:) bentuk pemakai goto sebagai berikut:
goto label;
Contoh program penggunaan goto:
#include<iostream>
using namespace std;
#include<conio.h>
int main()
{
float a, b;
char lagi;
atas:
cout<<"\nMasukkan Bilangan = ";cin>>a;
b = a * 25/100;
cout<<"Nilai 25% dari "<<a<<" adalah = "<<b;
cout<<"\n\nIngin Hitung Lagi [Y/T] : ";
lagi = getche();
if (lagi == 'Y' || lagi == 'y')
goto atas;
return 0;
}
Akhir program
5
7.3 PERNYATAAN WHILE
Pernyataan perulangan while merupakan instruksi perulangan yang mirip dengan perulangan
for. Bentuk perulangan while dikendalikan oleh syarat teretntu, yaitu perulangan akan terus
dilaksanakan selama syarat tersebut terpenuhi. Bentuk umum perulangan while sebagai
berikut: while (syarat)
Pernyataan/ perintah;
Bentuk umum perulangan while, dengan lebih dari perintah/ pernyataan, sebagai berikut:
while (syarat)
{
Pernyataan/ perintah;
Pernyataan/ perintah;
}
Contoh program penggunaan while bilangan ganjil:
#include <conio.h>
#include <iostream>
using namespace std;
int main()
{
int a=1;
while(a<=20)
{
cout<<a<<" ";
a+=2;
}
getch();
}
Akhir program:
Contoh program penggunaan while bilangan genap
#include <conio.h>
#include <iostream>
using namespace std;
int main()
{
int a=2;
while(a<=20)
{
cout<<a<<" ";
a+=2;
}
getch();
}
6
Akhir program
7.4 PERNYATAAN DO-WHILE
Pernyataan perulangan do-while merupakan bentuk perulangan yang melaksanakan
perulangan terlebih dahulu dan pengujian dilakukan dibelakang. Bentuk umum perulangan
do-while sebagai berikut:
do
Pernyataan/ perintah
While (syarat);
Bentuk umum perulangan do – while, dengan lebih dari perintah / pernyataan, sebagai
berikut:
do
{
Pernyataan/ perintah;
Pernyataan/ perintah;
}
while (syarat);
Contoh penggunaan do-while:
#include <conio.h>
#include <iostream>
using namespace std;
int main()
{
int bil=2;
do
{
cout<<bil<<" ";
bil+=2;
}
while(bil<=10);
getch();
}
Akhir program
7
7.5 PERNYATAAN BREAK
Pernyataan break telah dbahas pada pernyataan pengambilan keputusan switch. Pernyataan
break ini berfungsi untuk keluar dari struktur switch. Dan (do-while). Jika pernyataan break
dikerjakan, maka eksekusi akan dilanjutkan ke pernyataan yang terletak sesudah akhir dari
badan perulangan (loop).
Contoh program penggunaan Break:
#include <conio.h>
#include <iostream>
using namespace std;
int main()
{
int bil = 2;
do
{
if (bil >= 12)
break;
cout<<bil<<" ";
}
while(bil+=2);
getch();
}
Akhir program:
Contoh penggunaan for dengan break:
#include<conio.h>
#include <iostream>
using namespace std;
int main()
{
int bil;
for (bil = 60; bil >=10; bil++)
{
cout<<bil<<" ";
if(bil == 70)
break;
}
getch();
}
Akhir program
8
7.6 PERNYATAAN CONTINUE
Pernyataan continue digunakan untuk mengarahkan eksekusi ke iterasi (proses) berikutnya
pada loop yang sama, dengan kata lain mengembalikan proses yang sedang dilaksanakan ke
awal loop lagi, tanpa menjalankan sisa perintah dalam loop tersebut.
Contoh penggunaan continue:
#include <conio.h>
#include <iostream>
using namespace std;
int main()
{
int bil;
for(bil=1; bil<=10; ++bil)
{
if(bil==6)
continue;
cout<<bil<<" ";
}
getch();
}
Akhir program
7.7 LATIHAN
Buatlah beberapa program seperti petunjuk berikut:
1. Buatlah program untuk menghitung 10 deret bilangan genap dengan hasilnya: 2+ 4 + 6
+ 8 + 10 + 12 + 14 + 16 + 18 + 20 = 110
Program :
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int a=2, b, n;
cout <<"masukan angka penjumlahan yang anda inginkan : ";
cin>>b;
for (a=a;a<=b;a+=2)
{
cout<<a;
if(a<b)
{
cout<< " + ";
}
}
cout<< " = ";
n=b/2;
n=n*(n+1);
cout<<n;
getch();
9
}
Akhir Program
2. Buatlah program untuk menghitung 10 deret bilangan ganjil dengan hasilnya: 1+ 3 + 5
+ 7 + 9 + 11 + 13 + 15 + 17 + 19 = 100
Program
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int a, b=0, c;
cout <<"masukan angka penjumlahan yang anda inginkan : ";
cin>>c;
for (a=1;a<=c;a+=2)
{
if(a<c-1)
cout<<a<< " + ";
else
cout<<a;
b=b+a;
}
cout<< " = "<<b;
getch();
}
Akhir Program
3. Buatlah program program untuk menghitung penjumlahan deret bilangan membentuk
segitiga siku dengan hasilnya :
1 = 1
1 + 2 = 3
1 + 2 + 3 = 6
1 + 2 + 3 + 4 = 10
10
1 + 2 + 3 + 4 + 5 = 15
Program
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int a,b,c,jum=0;
cout <<"masukan angka penjumlahan yang anda inginkan : ";
cin>>c;
for (a=1;a<=c;a++)
{
jum=0;
for (b=1;b<=a;b++)
{
if (b!=1)
{
cout<<"+";
}
cout<<b;
jum =jum+b;
}
cout<<"\t\t\t= "<<jum<<endl;
}
getch ();
}
Akhir Program
4. Buatlah program untuk menghitung perkalian deret bilangan ganjil membentuk segitiga
siku dengan hasilnya:
1 = 1
1 * 3 = 3
1 * 3 * 5 = 15
1 * 3 * 5 * 7 = 105
1 * 3 * 5 * 7 * 9 = 945
11
Program
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int a,b,jum=1,c;
cout <<"masukan angka penjumlahan yang anda inginkan : ";
cin>>c;
for (a=1;a<=c;a+=2)
{
jum=1;
for (b=1;b<=a;b+=2)
{
if (b!=1)
cout<<"*";
cout<<b;
jum *=b;
}
cout<<"\t\t= "<<jum<<endl;
}
getch();
}
Akhir Program
5. Buatlah program untuk menghitung perkalian deret bilangan genap membentuk
segitiga siku terbalik dengan hasilnya:
10 + 8 + 6 + 4 + 2 = 30
10 + 8 + 6 + 4 = 28
10 + 8 +6 = 24
10 + 8 = 18
10 = 10
------------ +
110
12
Program
#include<iostream>
using namespace std;
int main()
{
int jum =0, nilai=0,c;
cout <<"masukan angka penjumlahan yang anda inginkan : ";
cin>>c;
for (int a=0;a<c;a+=2)
{
jum=0;
for (int b=c;b>a;b-=2)
{
if (b<c)
{
cout<<"+";
}
cout<< b;
jum=jum+b;
}
cout<<"\t\t\t="<<jum<<endl;
nilai=nilai+jum;
}
cout<<"__________________________+"<<endl;
cout<<" "<<nilai;
return 0;
}
Akhir Program
6. Buatlah program untuk menghitung perkalian nilai kolom dengan baris berikut
tampilan keluaran yang diinginkan:
1 2 3 4 5
2 4 6 8 10
3 6 9 12 15
4 8 10 16 20
5 10 15 20 25
13
Program
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int a,b,c;
cout <<"masukan angka penjumlahan yang anda inginkan : ";
cin>>c;
for (a=1;a<=c;a++)
{
for (b=1;b<=5;b++)
{
cout<<b*a<<"\t";
}
cout<<endl;
}
getch();
}
Akhir Program