Anda di halaman 1dari 56

PRAKTIKUM 8

Percobaan
1. Gunakan loop for untuk menampilkan nilai 1 sampai 20 dengan baris-baris yang
terpisah.
Listing Program

#include<iostream>
using namespace std;
main()
{
for(int i=1;i<=20;i++)
{
cout<<i<<endl;
}

system("pause");
return 0;
}

Penjelasan
Menggunakan pengulangan for,lalu masukkan nilai ‘i’ yaitu 1. Lalu batasi pengulangan
sampai i lebih kecil sama dengan 20. Lalu di dalam perulangan cetak nilai i diikuti
dengan end line.Setelah itu naikkan nilai i sebanyak 1. Perulangan tersebut dilakukan
sampai batas yg telah ditentukan. Maka hasilnya akan seperti output diatas.

1
Flowchart
start

i=1

N
i<=20 end
Y

i++

2. Hitunglah bilangan triangular dari masukkan pengguna, yang dibaca keyboard dengan
menggunakan scan(f). Bilangan triangular adalah penjumlah dari bilangan masukan
dengan seluruh bilangan sebelumnya, sehingga bilangan triangular dari 7 adalah :
7+6+5+4+3+2+1
Listing Program

#include<iostream>
using namespace std;
main()
{
int n,i,jumlah;
cout<<"Masukkan nilai ke n = ";cin>>n;
cout<<endl;
jumlah=0;
for (i=n;i>0;i--)
{
cout<<i<<"+";
jumlah=jumlah+i;
}
cout<<"0";
cout<<endl;
cout<<"Jumlah = "<<jumlah;
cout<<endl;

system("pause");
return 0;
}

2
Penjelasan
Input Nilai n sebagai bilangan yang ingin di cari bilangan triangularnya.Lalu kita
masukkan nilai dari variabel ‘jumlah’ itu adalah 0. Gunakan perulangan for dengan i=n
dan batas i>0.
Di dalam perulangan cetak nilai ‘i’ diikuti dengan tanda ‘+’ . Lalu proses nilai ‘jumlah’
yang dimasukkan diawal tadi yaitu 0 ditambahkan dengan nilai i,sehingga nilai dari
variabel ‘jumlah’ berubah.
Setelah itu naikkan nilai i sebanyak 1.Perulangan tersebut dilakukan sampai batas yg
telah ditentukan.Kemudian cetak angka nol yang merupakan akhir dari bilangan
triangular dan tidak akan berpengaruh nilai variabel ‘jumlah’. Lalu cetak nilai jumlah
yang paling akhir. Maka hasilnya akan seperti output diatas.

3
Flowchart
start

jumla
h=0

i=n

N
i>0 0
Y

i jumlah

+ end

jumlah=ju
mlah+i

i--

4
3. Gunakan loop for untuk menampilkan seluruh karakter dari A sampai Z dalam baris-
baris terpisah.
Listing Program

#include<iostream>
using namespace std;
using namespace std;
m#include<iostream>
ain()
{
for(char i='A';i<='Z';i++)
{
cout<<i<<endl;
}

system("pause");
return 0;
}

Penjelasan

Gunakan perulangan for dengan nilai i adalah ‘A’ dan batas i<=Z (huruf2 sebelum Z
sampai huruf Z). Lalu di dalam perulangan cetak nilai i diikuti dengan end line.Setelah
itu naikkan nilai i sebanyak 1 (jika huruf maka huruf setelahnya).

Perulangan tersebut dilakukan sampai batas yg telah ditentukan. Maka hasilnya akan
seperti output diatas

5
Flowchart

start

i=͛A͛

N
i<=͛Z͛ end
Y

i++

4. Gunakan loop for untul kenaikan variabel negatif untuk menampilkan seluruh karakter
dari Z sampai dengan A dalam baris-baris terpisah.
Listing Program

#include<iostream>
using namespace std;
main()
{
for(char i='Z';i>='A';i--)
{
cout<<i<<endl;
}

system("pause");
return 0;
}

6
Penjelasan
Gunakan perulangan for dengan nilai i adalah ‘Z’ dan batas i>=’A’ (huruf2 dari Z sampai huruf
A). Lalu di dalam perulangan cetak nilai i diikuti dengan end line.Setelah itu menurunkan nilai i
sebanyak 1 (jika huruf maka huruf sebelumnya). Perulangan tersebut dilakukan sampai batas yg
telah ditentukan. Maka hasilnya akan seperti outputdiatas.

Flowchart

start

i=͛Z͛

N
i>=͛A͛ end

i--

7
5. Gunakan loop for untuk membuat program sebagai berikut :
Input : n
Output : 1 3 4 5 ... m ( m = bilangan ganjil ke n )
Listing Program

#include<iostream>
using namespace std;
main()
{
int n,bil;
cout<<"Masukkan Nilai n = ";cin>>n;
cout<<endl;
for(bil=1;bil<=n;bil++)
{
if(bil%2!=0)
cout<<bil<<" ";
}

cout<<endl;

system("pause");
return 0;
}

Penjelasan
Masukkan nilai ‘n’ sebagai batas bilangan ganjil terbesar. Gunakan perulangan for
dengan nilai bil=1 dan batas nya yaitu bil<=n . Di dalam perulangan,lakukan decision
dengan ketentuan jika bil dibagi 2 sisanya tidak sama dengan 0 (bilangan ganjil),maka
cetak bil diikuti dengan spasi. Lalu naikkan nilai bil sebanyak 1. Maka perulangan itu
akan terus dilakukan sampai batas yg ditentukan tadi. Dan hasilnya akan seperti output
diatas.

8
Flowchart
start

bil=1

bil<=n N end

bil%2!=0

Y
N
bil

͞͞

bil++

9
6. Gunakan loop for untuk membuat program sebagai berikut :
Input : n
Output : 1 -2 3 -4 5 -6 7 -8 ..n
Listing Program

#include<iostream>
using namespace std;
main()
{
int n,i;
cout<<"Masukkan Nilai n = ";cin>>n;
cout<<endl;
for(i=1;i<=n;i++)
{
if(i%2!=0)
cout<<i<<" ";
else if(i%2==0)
cout<<-i<<" ";
}
cout<<endl;

system("pause");
return 0;
}

Penjelasan
Masukkan nilai n yaitu banyak nya bilangan yg akan dicetak. Gunakan perulangan for
dengan nilai i=1 dan batas nya yaitu i<=n . Lalu di dalam perulangan,jika sisa i dibagi 2
tidak sama dengan 0,maka cetak i,lalu diikuti spasi.Jika tidak cetak –i lalu diikuti spasi.
Lalu naikkan nilai i sebanyak 1 Perulangan akan dilakukan terus sampai batas yang telah
dibuat (n)

10
Flowchart

start

i=1

N
i<=n end
Y
N
i%2!=0 -i
Y

i ͞͞

͞͞

i--

11
7. Gunakan loop for untuk membuat program seabagai berikut ini
Input : n
Output 1*2*3*4*5*... *n ( faktorial )

Listing Program

#include<iostream>
using namespace std;
main()
{
int i,n;
cout<<"Masukkan angka yang mau di faktorial kan = ";cin>>n;
cout<<endl;
cout<<n<<"! = ";
for(i=1;i<n;i++)
{
cout<<i<<"*";
}
cout<<n<<endl;

system("pause");
return 0;
}

Penjelasan

Masukkan nilai n yaitu bilangan yang akan di faktorialkan . Gunakan perulangan for
dengan nilai i=1 dan batas i<n. Dalam perulangan cetak i*.Lalu naikkan nilai i sebanyak
1. Maka perulangan akan terus dilakukan sampai batas yg ditentukan. Lalu cetak n
sebagai bilangan yang terakhir . Maka,hasilnya akan seperti output diatas.

12
Flowchart

start

n!=

i=1

N
i<n n end
Y

i*

i++

13
PRAKTIKUM 9
PERCOBAAN

1. Gunakan loop while untuk membuat program yang dapat menampilkan semua karakter
yang diketikkan di keyboard sampai yang diketikkan pada keyboar ‘X’ ( x besar ).
Listing Program

#include<iostream>
using namespace std;
main()
{
char kar;
cout<<"Masukkan Karakter = ";cin>>kar;
while(kar!='X')
{
kar = getchar();
}
system("pause");
return 0;
}

Penjelasan
Data yang akan di input karakter menghasilkan karakter jika di decision membuat huruf
X besar, jika di Enter maka programnya akan selesai. Setelah itu program akan
menghasilkan print karakter

14
Flowchart

start

Masukkan
Karakter

kar!=¶X¶ Tidak

Ya

kar = getchar() end

print
karakter

2. Gunakan loop while untuk membuat program yang dapat mencari total angka yang dapat
dimasukkan dengan tampilan sebagai berikut :
Masukkan bilangan ke-1 : 5
Mau memasukkan data lagi [y/t] ? y

Masukkan bilangan ke-2 : 3


Mau memasukkan data lagi [y/t] ? t

Total bilangan = 8

15
Listing Program

#include <iostream>
using namespace std;
main ()
{
int bil,hasil=0;
char pilihan ='Y';
while (pilihan =='Y'|| pilihan =='y')
{
cout<<"Input bilangan = ";cin>>bil;
hasil=hasil+bil;
cout<<"Mau Memasukkan data lagi [Y/T] = ";
cin>>pilihan;
}
cout<<"Hasil bilangan : ";
cout<<hasil;
cout<<endl;
system ("pause");
return 0;
}

Penjelasan

Int bil,hasil=0;

Bagian ini merupakan tipe data dari bagian variable bil dan hasil=0 yaitu integer atau
bilangan bulat, yang diakhiri dengan tanda ; artinya itu sebuah pernyataan.

Char pilihan =’Y’;

Bagian ini merupakan tipe data dari bagian variable pilihan =’Y’ yang artinya merupakan
bagian bilangan karakter atau huruf.

While (pilihan==’Y’||pilihan==’y’)

Perintah while merupakan jenis struktur pengulangan yang melakukan pengecekan


kondisi awal, contoh kondisi awal yaitu (pilihan==’Y’||pilihan==’y’) yang artinya akan
dilakukan jika kondisi yang dideinisikan di dalamnya terpenuhi (bernilai benar).

cout<<"Input bilangan = ";cin>>bil;

16
cout berfungsi untuk mencetak atau mengeluarkan segala hal didalam tanda <<”…”
dimana program ini mencetak kalimat masukkan banyaknya data=. Lalu cin untuk
mengimput atau memasukkan nilai variable di dalam tanda >> dan dalam program ini
untuk memasukkan nilai variable bil.

hasil=hasil+bil;

yang dimaksud dengan yang di atas yaitu untuk melakukan pencarian hasil yang
menggunakan rumus hasil=hasil+bil.

cout<<"Hasil bilangan : ";

cout<<hasil;

cout yang diatas yaitu mencetak hasil yang sudah dicari melalui rumus sebelumnya agar
mudah dapat di hasilkan.

17
Flowchart

18
3. Pada program no 2 tambahkan rata-rata, maksimum dan minimum dari angka yang
dimasukkan.
Listing Program

#include<iostream>
using namespace std;
main()
{
int bil=0,hasil=0,i=0,max=0,min=999999,rata;
char pilihan='Y';

while(pilihan=='Y'||pilihan=='y')
{
i=i+1;
cout<<"Masukkan ke Nilai : ";cin>>bil;
cout<<"Ingin Memasukkan lagi [Y/T] = ";getchar();
pilihan=getchar();
if(bil>max)
{
max=bil;
}
if(bil<min)
{
min=bil;
}
hasil=hasil+bil;
rata=hasil/i;
}
cout<<endl;
cout<<"Hasil = "<<hasil;
cout<<"\nMinimal = "<<min;
cout<<"\nMaximal = "<<max;
cout<<"\nRata-rata = "<<rata;
cout<<endl;

system("pause");
return 0;
}

Penjelasan

19
Data I yang diinputkan akan di print, lalu pilihan untuk melanjutkan, jika iya masukkan
kembali data i, jika tidakm, akan masuk ke decision.

Data yang akan ditentukan dengan rumus max dan min, lalu dijumlah rata-ratanya,
setelah itu dicetak.

Flowchart

20
4. Gunakan while pada program yang digunakan untuk menghitung banyaknya karakter
dari kalimta yang dimasukkan melalui keyboard ( termasuk karakter space ). Untuk
mengakhiri kalimat, tombol ENTER (‘\n’) harus ditekan
Input : kertikkan sembarang kalimat
Output : jumlah karakter = m
Jumlah spasi = n
Listing Program

#include<iostream>
#include<stdio.h>
using namespace std;
main()
{
int jumlahkar=0, jumlahspas=0;
char kar;

cout<<"Masukkan kata = ";


while((kar=getchar())!='\n')
{
jumlahkar++;
if(kar== ' ')
jumlahspas++;
}
cout<<endl;
cout<<"Jumlah karakter = "<<jumlahkar;
cout<<"\nJumlah spasi = "<<jumlahspas;
cout<<endl;

system("pause");
return 0;
}

Penjelasan

Data masukkan kata akan di print yang akan dicetak yaitu ‘Dev C++’ setelah sudah
melakukan masukkan data lalu tekan enter, jika hasil nya sudah diproses, jika iya maka
akan mencetak jumlah karakter jika tidak maka kembali lagi seperti sebelumnya, jika
hasilnya sudah diproses maka akan mencetak jumlah spasi, setelah itu dicetak.

21
Flowchart

start
Int
jumlahkar=0
Jumlahspas=0
char kar

Masukkan
kata =

(kar=getchar())!=

Ya

Tidak
jumlahkar++

Tidak
kar=¶¶

Jumlahspas++

jumlah
karakter =

jumlah
spasi =

end

22
LAPORAN RESMI

5. Tambhakan program yang ada pada soal no 4 dengan menghitung huruf kecil, huruf
bersar dan karakter angka.
Listing Program

#include<iostream>
#include<stdio.h>
using namespace std;
main()
{
int jumlahkar=0, jumlahspas=0, huruf_besar, huruf_kecil, jumlahangka;
char kar;

cout<<"Masukkan kata = ";


while((kar=getchar())!='\n')
{
jumlahkar++;
if(kar== ' ')
jumlahspas++;
if(kar>='A' & kar<='Z')
huruf_besar++;
if(kar>='a' & kar<='z')
huruf_kecil++;
if(kar>='0' & kar<='9')
jumlahangka++;
}
cout<<endl;
cout<<"Jumlah karakter = "<<jumlahkar;
cout<<"\nJumlah spasi = "<<jumlahspas;
cout<<"\nJumlah huruf besar = "<<huruf_besar;
cout<<"\nJumlah huruf kecil = "<<huruf_kecil;
cout<<"\nJumlah karakter angka = "<<jumlahangka;
cout<<endl;

system("pause");
return 0;
}

Penjelasan

Data masukkan kata akan di print yang akan dicetak yaitu ‘Manajemen Informatika
Kelas MI-1C’ jika sudah melakukan masukkan data lalu tekan enter, jika hasil nya iya

23
dan sudah diproses,maka akan keluar jumlah karakter yang sudah di inputkan, jika tidak
maka akan kembali ke awal, jika sudah melakukan hal itu berulang kali, maka akan
mencetak jumlah spasi, jumlah huruf besar, jumlah huruf kecil dan jumlah karakter
angka. Setelah itu dicetak

Flowchart
start
Int jumlahkar=0
Jumlahspas=0
huruf_besar
huruf_kecil
jumlahangka
char kar

Masukkan
kata =

(kar=getchar())!=

Ya

jumlah
jumlahkar++ karakter=
Tidak

jumlah spasi =
kar=¶¶

jumlah huruf
Ya besar =

jumlahspas++ jumlah huruf


kecil =

kar>='A' & jumlah karakter


Tidak
kar<='Z' angka =

Tidak
Tidak Ya
end
huruf_besar++

Tidak
kar>='a' &
kar<='z'

Ya

huruf_kecil++

kar>='0' &
kar<='9'

Ya

jumlahangka++

24
PRAKTIKUM 10
Percobaan

1. Dengan menggunakan pernyataan break. Buatlah program yang dapat menampilkan


semua tampilan karakter yang diketikkan dan program berakhir ketika di tekan tombol
enter.

Listing Program

#include<iostream>
using namespace std;
main()
{
char kar;
cout<<"masukan karakter dan tekan enter untuk mengakhiri\n";
cout<<endl;
while (kar !='...')
{
kar=getchar();
if(kar=='\n')
{
break;
}
} cout<<endl;
cout<<"selesai"<<endl;
system ("pause");
return 0;
}

Penjelasan
Disana terdapat perintah output (cout) yang mencetak kalimat yang berada didalam tanda
kutip dua (“) di ikuti dengan perintah input (cin) sehingga kita dapat memasukkan
karakter yg kita inginkan. Setelah itu kita masuk pada perintah perulangan (while)
dengan kondisi karakter tidak sama dengan ‘enter’ (j!=’\n’) didalam perintah perulangan
tersebut terdapat proses berupa karakter = getchar() dimana getchar berfungsi untuk
menampulkan karakter secara terus menerus hingga ditekan tombol enter. Dan ketika
tombol enter ditekan maka berakhirlah program..

25
Flowchart
START

INPUT
KARAKTER

END T KARAKRER!=ENTER (\N)

KARAKTE R =
GETCHAR()

2. Dengan menggunakan pernyataan continue, buatlah program yang dapat menampilkan


bilangan ganjik dari 1 < n (n di inputkan), kecuali bilangan ganjil tersebut kelipatan 3.

Listing Program

#include<iostream>
using namespace std;
main()
{
int i, bil=0;
cout<<"menampilkan bilangan ganjil selain kelipatan 3"<<endl;
cout<<"masukan bilangan :";cin>>bil;
for(i=1; i<=bil; i+=2)
{
if(i%3==0)
continue;
cout<<i<<" "<<endl;
}
system("pause");
return 0;
}

26
Penjelasan
Bil=10
i=1 i<= bil if(i%3==0) i+=2
1<=10 (ya) if(1%3==0) (tidak) i= 1+2=3
i=3 3<=10( ya) if(3%3==0) (ya) i= 3+2=5
i=5 5<=10 ( ya) if(5%3==0) (tidak) i= 5+2=7
i=7 7<=10 ( ya) if(7%3==0) (tidak) i= 7+2=9
i=9 9<=10( ya) if(9%3==0) (ya) i= 9+2=11
i = 11 3<=10( tidak)
jadi bilangan ganjil dari 10 kecuali kelipatan 3 adalah 1,5 dan 7
Flowchart
start

Input n

N=nx2

I=1

i++

I <=n Y I%3==0 Y continue I%2!=0 Y OUTPUT I

T T

end T

27
3. Dengan menggunakan pernyataan break dan continue,buat progarmuntuk membuat
program dengan input n dan output bilangan ganjil kecuali kelipatan 7 dan 11 mulai dari
1 < n atau bilangan tersebut < 100
Listing Program

#include<iostream>
using namespace std;
main()
{
int i,a;
cout<<"bilangan ganjil < 100 kecuali kelipatan 7 dan 11 "<<endl;;
cout<<"masukan batas bilangan : ";cin>>a;
for(i=1;i<a;i+=2)
{
if(i>100)
break;

if(i%7==0 || i%11==0)
continue;
cout<<i<<endl;
}
system("pause");
return 0;
}

Penjelasan

Pada program kali ini kita menggunakan variable integer (int) kemudian kita
menggunakan perintah output (cout) untuk menampilkan kalimat yang terdapat di
dalam tanda kutip dua (“) setelah itu kita menggunakan perintah input (cin) untuk
memasukkan banyak data yang akan kita proses. pada bagian peroses kita
menggunakan perintah perulangan (for) dengan kondisi i<=100 sebelumnya kita telah
menetapkan nilai awal ‘I’ yaitu 1 dan kita menggunakan nilai 100 seperti yg tertulis pada
soal. Untuk mengeleminasi nilai yang berkelipatan 7 dan 11 kita menggunakan perintah
percabangan (if) dengan kondisi i%7==0 dan i%11==0 kemudian dilanjutkan dengan
perintah continue pada setiap perintah percabangan. Sekarang kita tinggal
mengeleminasi bilangan genap karena kita hanya ingin memunculkan bilangan ganjil.
Untuk itu kita menggunakan perintah percabangan (if) dengan kondisi i%2!=0 diikuti
dengan perintah output (cout) ‘I’ agar menampilkan bilangan ganjil yang telah diproses.
Agar nilai yang ditampilkan tidak melebihi banyak data yang kita inginkan kita harus
memasukkan perintah percabangan (if) dengan kondisi i==n diikuti dengan perintah
break.

28
Dengan begitu peroses perulangan akan terus berlanjut hingga nilai sudah sebanyak
100 data atau hingga sebanyak banyak data yang kita inputkan.
Flowchart
START

I=1

N=N*2

I<=100 Y I%7==0 Y CONTINUE I%11==0 Y CONTINUE I%2!=0 Y OUTPUT 1

I==N
T T
T
T

END BREAK

4. Buatlah program untuk menerima daftar nilai Mahasiswa sbb:


Input : - Jumlah data (n)
-Nilai ke-1 s\d Nilai ke – n
Output: -Nilai Maksimal
-Nilai Minimal
- Rata-rata ( rata-rata = nilai total / jumlah data)
(petunjuk : Gunakan loop for dan seleksi kondisi if)

Listing Flowchart

29
#include <iostream>
using namespace std;
main()
{
int i,input,nilai,minimal,maksimal,jumlah=0;
float rata;
cout<<"Masukkan jumlah nilai yang akan anda inputkan: ";cin>>input;
for (i=1;i<=input;i++)
{
cout<<"Masukkan nilai ke : "<<i<<endl;
cin>>nilai;
jumlah=jumlah+nilai;
if (i==1)
{
maksimal=nilai;
minimal=nilai;
}
else
{
if (minimal>nilai)
{
minimal=nilai;
}
if (maksimal<nilai)
{
maksimal=nilai;
}
}
}
rata=jumlah/input;
cout<<"Nilai Minimal adalah "<<minimal<<endl;
cout<<"Nilai maksimal adalah "<<maksimal<<endl;
cout<<"Nilai Rata-rata adalah "<<rata<<endl;
system ("pause");
return 0;
}

Penjelasan

30
Pada program kali ini kita menggunakan variable float. Kemudian dilanjutkan dengan
perintah output (cout) untuk menampilkan kalimat yang terdapat di dalam tanda kutip
dua(“).
Setelah itu terdapat perintah input (cin) dimana kita harus memasukkan banyak nilai
yang ingin kita masukkan. Lalu kita masukkan nilai pertama. Nilai tersebut akan menjadi
nilai awal dari MAX, MIN, dan JUMLAH. Selanjutnya kita masuk ke perintah
perulangan (for) dengan kondisi i<=n, karena kita telah memasukkan nilai yang pertama
sebelumnya jadi kita memberi nilai awal pada ‘I’ yaitu 2. Kemudian kita kembali diminta
untuk memasukkan nilai dengan perintah yang sama seperti di atas tadi, nilai tersebut
akan diproses melalui perintah percabangan (if) dengan kondisi nil>max. jika kondisi
terpenuhi maka nilai tersebut akan menjadi nilai tertinggi untuk sementara. Jika tidak,
maka akan dilanjutkan dengan kondisi yang kedua yaitu nil<=min jika kondisi ini
terpenuhi maka nilai tersebut akan menjadi nilai terkecil untuk sementara. Kemudian
nilai – nilai tersebut akan dijumlahkan dengan perintah proses berupa rumus yaitu
jumlah=jumlah+nil. proses ini akan terus berulang hingga kondisi pada perintah
perulangan terpenuhi. Jika proses sudah berhenti maka program akan menampilkan hasil
dengan perintah output (cout) berupa nilai terkecil dan nilai terbesar. Untuk
menampilkan rata – rata dari nilai – nilai tersebut kita perlu menambahkan rumus
rata=jumlah/n lalu kita munculkan dengan perintah output (cout)

Flowchart

31
START

INPUT BANYAK NILAI (N)


INPUT NILAI

MIN = NILAI
MAX = NILAI
JUMLAH = NILAI
I=2

I<=N Y NILAI > MAX Y NILAI = MAX

T T

JUMLAH = JUMLAH + BIL


RATA-RATA = JUMLAH /N NILAI <= MIN Y NILAI = MIN
I++

OUTPUT
RATA-RATA
NILAI TERKECIL
NILAI TERBESAR

T
END

LAPORAN RESMI

32
5. Buatlah program untuk menghitung jumlah angka dari suatu bilangan :

Contohnya : jumlah angka bilangan 3255 = 3+2+5+5 = 15

Jumlah angka bilangan 4589 = 4+5+8+9 = 26

Dan sebagainya.

#include<iostream>
using namespace std;
main()
{
int num, hasil, n;
cout<<"masukkan angka = ";cin>>num;
hasil = 0;
while (num>0)
{
n=num%10;
hasil=hasil+n;
num=num/10;
}
cout<<"hasil = "<<hasil<<endl;
system("pause");
return 0;
}

Penjelasan

Pada program kali ini kita menggunakan variable integer (int). kemudian kita
menggunakan perintah output (cout) untuk menampilkan kalimat yang ada di dalam
tanda kutip dua (“) dan diikuti dengan perintah input (cin) untuk memasukkan angka
bilangan yang ingin kita proses. sebagai nilai awal kita menetapkan hasil=0. Selanjutnya
terdapat perintah perulangan (while) dengan kondisi num>0. Di dalam perintah
tersebut terdapat beberapa rumus diantaranya yaitu n=num%10 yang digunakan untuk
menentukan nilai n. lalu ada rumus hasil=hasil+n yang digunakan untuk menentukan
hasil. Dan yang terakhir terdapat rumus num=num/10 yang digunakan untuk
mengurangi nilai num agar dapar memenuhi kondisi yang telah ditetapkan. Ketika
perulangan telah berhenti, maka kita hanya tinggal menampilkan hasil penambahan
dari bilangan yang telah kita inputkan tadi dengan perintah output (cout).

Flowchart

33
START

INPUT
ANGKA

HASIL = 0

END ANGKA > 0

N=ANGKA%10
HASIL=HASIL+N
ANGKA=ANGKA/10

OUTPUT
HASIL

34
PRAKTIKUM 11
D. PERCOBAAN
1. Dengan menggunakan pernyataan nested loop, buatlah program berikut:
input : n
output :
1 2 3 4 5 ... n
1 2 3 4 5 ... n
1 2 3 4 5 ... n
...........
1 2 3 4 5 ... n

Listing Program

#include<iostream>
using namespace std;
main ()
{
int i,j,n;
cout<<"Masukkan banyaknya data =";cin>>n;
for (i=1;i<=n;i++)
{
for (j=1;j<=5;j++)
{
cout<<j<<" ";
}
cout<<endl;
}
system ("pause");
return 0;
}

35
Penjelasan

Int n,i,j;

Bagian ini merupakan tipe data dari variable n,i,dan j yaitu integer atau bilangan bulat
dan diakhiri dengan tanda; karena merupakan sebuah pernyataan.

Cout<<”masukkan nilai= “;cin>>n;

Cout berfungsi untuk mencetak atau mengeluarkan segala hal didalam didalam tanda
<<” ‘ dimana dalam program iini mencetak akalimat masukkan banyanya data=. Lalu
cin untuk menginput atau memasukkan nilai variable didalam tanda >> dan dalam
program ini untuk memasukkan nilai variable n

For (i=1;i<=n;i++)

For (j=1;j<=n;j++)

Cout<<j;

Cout<<endl;

For berfungsi sebagai perulangan,sistem kerjanya ketika input yang dimasukkan


sebanyak 5 kali dimana i dimulai dari angka 1, jika start dimulai dari angka 1 dan input
data sebanyak 5 kali maka program i akan terhenti ketika input telah
memenuhi.sebanyak 5 kali. I++ artinya nilai I akan bertambah 1 secara terus menerus.
Lalu J++ artinya nilai j akan bertambah 1 secara terus menerus.proses ini akan terus
berlanjut sampai kondisi dari for tidak terpenuhi lagi

36
Flowchart

start

Input n

i=1
J=1

i<=n yes

J<=n yes

no Print j

no
i++

J++

end

37
2. Dengan menggunakan pernyataan nested loop, buatlah program berikut :
Input : n
Output :
1
22
333
......
n n n n n ... n

Listing program

#include<iostream>
using namespace std;
main ()
{
int a,b,n;
cout<<"Masukkan tinggi =";cin>>n;
for (a=1;a<=n;a++)
{
for(b=1;b<=a;b++)
{
cout<<a<<" ";
}
cout<<endl;
}
system ("pause");
return 0;
}

38
Penjelasan

ketika masukkan tinggi sebanyak 3 maka perulangan yang dialkukan

for (i=1;i<=n;i++)

for(j=1;j<=i;j++)

cout<<i<<" ";

cout<<endl;

For digunakan sebagai fungsi perulangan,i=1,i<=n. dimana n dimasukkan sebanyak 3,


i<=3 benar maka kolom 1,j=1 dan 1<=1 output 1. Lalu inkremen j++ dan 2<=1 salah
maka perulangan berhenti.Pindah ke perulangan kedua, i=2, 2<=3 benar maka pada baris
kedua j=1,1<=2 benar output 2. Lalu inkremen,j=2,2<=2 benar maka ouput 2 dan
inkremen j=3,3<=2 maka perulangan berhenti. Pindah keperulangan ketiga i=3 3<=3
benar maka baris ketiga j=1,1<=3 benar maka ouput 3 lalu inkremen j=2,2<=3 benar
maka output 3 lalu inkremen j=3,3<=3 benar maka ouput 3 dan inkremen j=4,4<=3 mak
program berhenti.

39
Flowchart

start

Input n

i=1
J=1

i<=n yes

J<=n yes

no Print i

no
i++

J++

end

3. Dengan menggunakan pernyataan nested loop, buatlah program berikut :

40
Input : n
Output :
2 3 5 7 11 ... Bilangan prima ke n

Listing Program

#include<iostream>
using namespace std;
main ()
{
int batas, x,cek, i;
cout<<"Batas dari Deret Bilangan Prima : ";cin>>batas;cout<<endl;
for (x=2; x<=batas; x++)
{
cek = 0;
for (i=2; i<x; i++)
{
if (x%i==0)
{
cek = 1;
}
}
if (cek == 0)
{
cout<<x<<" ";
}
}
system ("pause");
return 0;
}

Penjalasan

41
Int batas,x,cek,I;

Dalam menentukan bilangan prima,dimana menggunakan if and else

for (x=2; x<=batas; x++)

cek = 0;

for (i=2; i<x; i++)

if (x%i==0)

cek = 1;

if (cek == 0)

cout<<x<<" ";

Flowchart

42
start

Input n

i=2
J=2

i<=n yes

Mod=1

J<i yes

i%j==0 yes

no
Mod=0
no
no

i++
Mod==1 yes

Print i

no J++

end

4. Dengan menggunakan peryataan nested loop, buatlah program berikut :


Input : n

43
Output : 0 1 3 6 10 15 21 28 .... Bilangan ke n
Listing Program

#include<iostream>
using namespace std;
main ()
{
int i,n,penjumlahan;
penjumlahan =0;
cout<<"Masukkan banyaknya data =";cin>>n;
for (i=1;i<=n;i++)
{
cout<<" "<<penjumlahan;
penjumlahan +=i;
}
cout<<endl;
system ("pause");
return 0;
}

Penjalasan
Int i,n,penjumlahan;
Bagian ini merupakan tipe data dari variable i,n,dan penjumlahan yaitu integer atau
bilangan bulat. Lalu cout yang menyatakan untuk mencetak atau mengeluarkan segala
hal yang didalam tanda<<” “. Dan cin pada program berfungsi digunakan untuk
menginput atau memasukkan nilai variable didalam tanda >> dan dalam program ini
untuk memasukkan nilai variable n.
For (i=1;i<=n;i++)
{

44
Cout<<” “<<penjumlahan;
Penjumlahan +=I;
}
Cout<<endl;
For digunakan untuk perulangan, i=1 dengan kondisi i<=n artinya nilai variable I lebih
kecil sama dengan n dimana nilai variable n sesuai jumlah masukkan data yang ingin
dimasukkan.i++ artinya nilai I akan bertamabah 1 secara terus menerus. Lalu cout
digunakan untuk mencetak,pada penjumlahan +=I dimana berfungsi untuk
menjumlahkan angka sebelumnya. Maka ketika masukkan data sebanyak 10 kali
perulangan,karna angka 1 sebelumnya 0 maka dijumlahkan 0+1=1 lalu angka berikutnya
1+2=3 lalu angka berikutnya dijumlahkan lagi 3+3=6 lalu angka berikutnya lagi
dijumlahkan 6+4=10 sampai perulangan dilakukan sebanyak 10 kali perulangan.

45
Flowchart

start

Input n

i=0
J=0

i<=n yes

Tsum=0

j<=i yes

Sum+=j

no

Tsum+=j

i++

Print j

no
J<i yes

Print +

J++

no

Print =
Print tsum

end

5. Pada akhir setiap 4 buah program diatas tambahkan tanyaan “Apakah keluar (y/t)?”,
pertanyaan tersebut hanya bisa dijawab dengan huruf ‘y’ (y kecil) dan ‘t’ (t kecil). Dan
akan keluar dari program setelah dijawab ‘y’ (y kecil).

46
5.1. Program :
#include <iostream>
using namespace std;
main ()
{
int i,j,n;
char pilihan = 't';
while ((pilihan == 't'||pilihan == 'T'))
{
cout<<"Masukkan banyaknya data = ";cin>>n;
for (i=1;i<=n;i++)
{
for (j=1;j<=5;j++)
{
cout<<j<<" ";
}
cout<<endl;
}
cout<<"Apakah Anda ingin keluar? = ";cin>>pilihan;
}
system ("pause");
return 0;
}

Flowchart

47
start

Pil==͛t͛ yes

Input n

i=1
J=1

i<=n yes

J<=n yes

no
no Print j
no

i++

J++

Print Apakah
Anda ingin
keluar (y/t)?=

end

5.2. Program :
#include <iostream>

48
using namespace std;
main ()
{
int a,b,n;
char pilihan = 't';
while ((pilihan == 't' || pilihan == 'T'))
{
cout<<"Masukkan tinggi =";cin>>n;
for (a=1;a<=n;a++)
{
for(b=1;b<=a;b++)
{
cout<<a<<" ";
}
cout<<endl;
}
cout<<"Apakah Anda ingin keluar? =";cin>>pilihan;
}
system ("pause");
return 0;
}

Flowchart

49
start

Pil==͛t͛ yes

Input n

i=2
J=2

i<=n yes

Mod=1

no

J<i yes

no

Print Apakah
i%j==0 yes
Anda ingin
keluar (y/ no
t)?=

no Mod=0

i++

Mod==1 yes

Print j

no
J++

end

1.1.Program :

50
#include <iostream>
using namespace std;
main ()
{
int batas, x,cek, i;
char pilihan = 't';
while ((pilihan == 't' || pilihan == 'T'))
{
cout<<"Batas dari Deret Bilangan Prima : ";cin>>batas;cout<<endl;
for (x=2; x<=batas; x++)
{
cek = 0;
for (i=2; i<x; i++)
{
if (x%i==0)
{
cek = 1;
}
}
if (cek == 0)
{
cout<<x<<" ";
}
}
cout<<endl;
cout<<"Apakah Anda ingin keluar? =";cin>>pilihan;
}
system ("pause");
return 0;
}

Flowchart

51
start

Pil==͛t͛ yes

Input n

i=2
J=2

i<=n yes

Mod=1

no

J<i yes

no

Print Apakah
i%j==0 yes
Anda ingin
keluar (y/ no
t)?=

no Mod=0

i++

Mod==1 yes

Print j

no
J++

end

1.2.Program :
#include<iostream>

52
using namespace std;
main ()
{
int i,n,penjumlahan;
penjumlahan =0;
char pilihan = 't';
while ((pilihan == 't' || pilihan == 'T'))
{
cout<<"Masukkan banyaknya data =";cin>>n;
for (i=1;i<=n;i++)
{
cout<<" "<<penjumlahan;
penjumlahan +=i;
}
cout<<endl;
cout<<"Apakah Anda ingin keluar? =";cin>>pilihan;
}
system ("pause");
return 0;
}

Flowchart

53
start

Pil==͛t͛ yes

Input n

i=0
J=0

i<=n yes

Tsum=0
no

Print J<=i yes


Apakah
Anda ingin
keluar (y/
t)?=
Sum+=j
no

Tsum+=j
no i++

Print j

J<i yes

Print +

no

J++

Print =
Print
tsum

end

Laporan Resmi

54
3. Buatlah program untuk menghitung faktorial dari bilangan yang diinputkan dengan
syarat tidak boleh menggunakan operator perkalian hanya denagn operator
penambahan !
Contoh : Input : 4
Output : 24 ( faktorial 4 )

#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int bil,n;
long int hasil;
cout<<"masukkan angka= ";
cin>>n;
hasil=1;
for(bil=n;bil>=1;bil--)
{
hasil=hasil*bil;
}
cout<<"hasil faktorial= "<<hasil<<"\n";
system ("pause");
return 0;
}

Flowchart

55
START

HASIL = 1

BIL>=1 HASIL*BIL HASIL

END

56

Anda mungkin juga menyukai