Anda di halaman 1dari 44

LAPORAN PRAKTIKUM

PEMROGRAMAN I
MODUL 4

Loop
Oleh:
Jovan Gilbert Natamasindah NIM. 2310817310002

PROGRAM STUDI TEKNOLOGI INFORMASI


FAKULTAS TEKNIK
UNIVERSITAS LAMBUNG MANGKURAT
OKTOBER 2023
LEMBAR PENGESAHAN
LAPORAN PRAKTIKUM PEMROGRAMAN I
MODUL 4

Laporan Praktikum Pemrograman I Modul 4: Loop operator ini disusun sebagai syarat
lulus mata kuliah Praktikum Pemrograman I. Laporan Prakitkum ini dikerjakan oleh:

Nama Praktikan : Jovan Gilbert Natamasindah


NIM : 2310817310002

Menyetujui, Mengetahui,
Asisten Praktikum Dosen Penanggung Jawab Praktikum

Siti Ainur Rahmawati Eka Setya Wijaya S.T., M.Kom


NIM. 2210817220029 NIP. 198205082008011010
DAFTAR ISI

LEMBAR PENGESAHAN ......................................................................................... 2


DAFTAR ISI ................................................................................................................ 3
DAFTAR TABEL ........................................................................................................ 4
DAFTAR GAMBAR ................................................................................................... 5
SOAL 1 ........................................................................................................................ 6
A. Source Code .................................................................................................. 8
B. Output Program ............................................................................................. 9
C. Pembahasan ................................................................................................. 10
SOAL 2 ...................................................................................................................... 12
A. Source Code ................................................................................................ 13
B. Output Program ........................................................................................... 15
C. Pembahasan ................................................................................................. 17
SOAL 3 ...................................................................................................................... 19
A. Source Code ................................................................................................ 20
B. Output Program ........................................................................................... 22
C. Pembahasan ................................................................................................. 24
SOAL 4 ...................................................................................................................... 26
A. Source Code ................................................................................................ 29
B. Output Program ........................................................................................... 33
C. Pembahasan ................................................................................................. 35
SOAL 5 ...................................................................................................................... 35
A. Source Code ................................................................................................ 38
B. Output Program ........................................................................................... 40
C. Pembahasan ................................................................................................. 42
TAUTAN GIT............................................................................................................ 44

3
DAFTAR TABEL
Tabel 1. Source Code Jawaban Soal 1 Bahasa C .......................................................... 8
Tabel 2. Source Code Jawaban Soal 1 Bahasa Python ................................................. 8
Tabel 3 Source Code Jawaban Soal 2 Bahasa C ......................................................... 13
Tabel 4. Source Code Jawaban Soal 2 Bahasa Python ............................................... 14
Tabel 5. Source Code Jawaban Soal 3 Bahasa C ........................................................ 20
Tabel 6. Source Code Jawaban Soal 3 Bahasa Python ............................................... 21
Tabel 7. Source Code Jawaban Soal 4 Bahasa C ........................................................ 29
Tabel 8. Source Code Jawaban Soal 4 Bahasa Python ............................................... 31
Tabel 9. Source Code Jawaban Soal 5 Bahasa C ........................................................ 38
Tabel 10. Source Code Jawaban Soal 5 Bahasa Python ............................................. 39

4
DAFTAR GAMBAR
Gambar 1. Screenshot Output Soal 1 Bahasa C ............................................................ 9
Gambar 2. Screenshot Output Soal 1 Bahasa Python ................................................... 9
Gambar 3. Screenshot Output Soal 2 Bahasa C .......................................................... 15
Gambar 4. Screenshot Output Soal 2 Bahasa Python ................................................. 16
Gambar 5. Screenshot Output Soal 3 Bahasa C .......................................................... 22
Gambar 6. Screenshot Output Soal 3 Bahasa Python ................................................. 23
Gambar 7. Screenshot Output Soal 4 Bahasa C .......................................................... 33
Gambar 8. Screenshot Output Soal 4 Bahasa Python ................................................. 34
Gambar 9. Screenshot Output Soal 5 Bahasa C .......................................................... 40
Gambar 10. Screenshot Output Soal 5 Bahasa Python ............................................... 41

5
SOAL 1
Pak Dengklek merupakan seorang guru TK Suka Berhitung. Hari ini Pak Dengklek
mengajarkan murid-muridnya bilangan kelipatan dengan cara bermain. Setiap murid
diminta untuk berjejer dan menyebutkan angka sesuai urutannya kecuali bilangan
kelipatan yang harus disebut dengan suatu simbol. Misalnya simbol yang harus
disebutkan adalah bintang (*) pada kelipatan 3 maka urutan yang disebut pada tiap
anak menjadi: 1 2 * 4 5 * dan seterusnya. Buatlah program untuk membantu Pak
Dengklek agar permainan dapat berjalan dengan baik jika jumlah anak didiknya
adalah 50 anak.

Info:

Input pertama merupakan bilangan kelipatan yang dirubah menjadi simbol


Input kedua merupakan simbol yang akan menggantikan bilangan tersebut
Output merupakan bilangan 1-50 dengan bilangan kelipatan dirubah menjadi symbol

6
Input Output
6 * 1 2 3 4 5 * 7 8 9 10 11 * 13 14
15 16 17 * 19 20 21 22 23 * 25
26 27 28 29 * 31 32 33 34 35 *
37 38 39 40 41 * 43 44 45 46 47
* 49 50
3 # 1 2 # 4 5 # 7 8 # 10 11 # 13
14 # 16 17 # 19 20 # 22 23 #
25 26 # 28 29 # 31 32 # 34 35
# 37 38 # 40 41 # 43 44 # 46
47 # 49 50
11 & 1 2 3 4 5 6 7 8 9 10 & 12 13
14 15 16 17 18 19 20 21 & 23
24 25 26 27 28 29 30 31 32 &
34 35 36 37 38 39 40 41 42 43
& 45 46 47 48 49 50
Simpan coding anda dengan nama: PRAK401-NIM-Nama.py dan PRAK401-NIM-
Nama.c

7
A. Source Code

Tabel 1. Source Code Jawaban Soal 1 Bahasa C

1 #include <stdio.h>
2
3 void main() {
4 int ANGKA;
5 char SIMBOL;
6
7 printf("Masukkan Angka dan simbol : ");
8 scanf("%d %c",&ANGKA, &SIMBOL);
9
10 for(int BILANGAN = 1 ; BILANGAN <= 50 ; BILANGAN++){
11
12 if (BILANGAN % ANGKA == 0) {
13 printf("%c ", SIMBOL);
14 continue;
15 }
16
17 printf("%d ", BILANGAN);
18 }
19 }

Tabel 2. Source Code Jawaban Soal 1 Bahasa Python

1 ANGKA, SIMBOL = input("Masukkan Angka dan Simbol :


").split(" ")
2
3 for (BILANGAN) in range(1,51) :
4
5 if (int(BILANGAN )% int(ANGKA) == 0) :
6 print(SIMBOL, end=" ")
7 continue
8
9 print(int(BILANGAN), end=" ")

8
B. Output Program

Gambar 1. Screenshot Output Soal 1 Bahasa C

Gambar 2. Screenshot Output Soal 1 Bahasa Python

9
C. Pembahasan

Bahasa C
• Pada baris 1, #include <stdio.h> digunakan untuk memasukkan fungsi
input dan output seperti printf dan scanf.
• Pada baris 3, void main() digunakan untuk menulis fungsi utama pada
Bahasa C dan tidak mengembalikan nilai..
• Pada baris 4-5, tipe data int dan char berfungsi untuk menampung data
berupa angka dan character.
• Pada baris 7-17, printf berfungsi untuk menampilkan string dan memanggil
variabel yang berisi data yang telah kita simpan sebelumnya. Lalu %d dan
%c berguna untuk mencetak variabel yang telah kita isikan dengan angka
dan character
• Pada baris 8, scanf berfungsi sebagai tempat untuk menginput angka dan
character. Lalu %d dan %c berguna untuk menyatakan jenis input yang
akan dimasukan yaitu berupa angka dan character. Kemudian & berguna
agar data yang kita input akan tersimpan ke variabel yang dituju.
• Pada baris 10, for merupakan perulangan yang digunakan jika kita
mengetahui nilai awal dan batas akhir dari perulangan tersebut.
• Pada baris 12, if termasuk ke dalam perkondisian, dimana statement di
dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika ternyata tidak
terpenuhi, maka akan keluar dari perkondisian dan akan berlanjut ke fungsi
selanjutnya.
• Pada baris 14, continue berfungsi untuk melompati sebuah perulangan yang
sedang berjalan jika kondisinya terpenuhi.

Bahasa Python

• Pada baris 1, ANGKA dan SIMBOL merupakan variabel yang akan diisi
dengan nilai berupa Angka dan character. Lalu input berfungsi untuk
menginput data ke dalam variabel yang telah dibuat. Dan split diluar kurung

10
input berfungsi untuk membagi input menjadi beberapa bagian sehingga
kita dapat memasukkan data sesuai dengan jumlah variabel.
• Pada baris 3, for merupakan perulangan yang digunakan jika kita
mengetahui nilai awal dan batas akhir dari perulangan tersebut. Lalu range
di dalam for berfungsi sebagai tempat menentukan titik awal dan batas akhir
dari perulangan
• Pada baris 5, if termasuk ke dalam perkondisian, dimana statement di dalam
if akan dijalankan jika kondisi if terpenuhi, tapi jika ternyata tidak terpenuhi,
maka akan keluar dari perkondisian dan akan berlanjut ke fungsi
selanjutnya.
• Pada baris 5-9, tipe data int yang membungkus variabel BILANGAN dan
ANGKA berfungsi untuk mengubah variabel BILANGAN dan ANGKA
yang sebelumnya berupa string menjadi integer.
• Pada baris 6-9, print berfungsi untuk menampilkan variabel yang telah kita
masukkan data. Lalu end yang terletak dibelakang berfungsi agar
perulangan yang terjadi akan dicetak secara horizontal dalam satu baris.
• Pada baris 7, continue berfungsi untuk melompati sebuah perulangan yang
sedang berjalan jika kondisinya terpenuhi.

11
SOAL 2
Hari ini Pak Dengklek tidak bisa mengajar anak didiknya yang ada di TK Suka
Berhitung karena sedang sakit sehingga harus digantikan oleh Bu Dengklek. Pak
Dengklek berpesan kepada Bu Dengklek agar mengajarkan materi bilangan genap
dan ganjil kepada muridnya. Bu Dengklek mempunyai metode agar materi bilangan
ganjil genap dapat disampaikan dengan cara yang menyenangkan. Metodenya adalah
dengan cara mengurutkan bilangan ganjil dari 1 sampai batas tertentu dan
meyebutkan bilangan genapnya secara terbalik. Buatlah program untuk
mempermudah Bu Dengklek menghitung bilangan tersebut!

Info:

Input merupakan batas maksimal dari bilangan yang akan dihitung


Output baris pertama merupakan urutan bilangan ganjil dari 1 sampai batas maksimal
Output baris kedua merupakan urutan bilangan genap dari batas maksimal sampai 2

Input Output
10 1 3 5 7 9
10 8 6 4 2
25 1 3 5 7 9 11 13 15 17 19 21
23 25
24 22 20 18 16 14 12 10 8 6 4
2
6 1 3 5
6 4 2

Simpan coding anda dengan nama: PRAK402-NIM-Nama.py dan PRAK402-NIM-


Nama.c

12
A. Source Code

Tabel 3 Source Code Jawaban Soal 2 Bahasa C

1 #include <stdio.h>
2
3 void main() {
4 int ANGKA;
5
6 printf("Masukkan Angka : ");
7 scanf("%d", &ANGKA);
8
9 for( int GANJIL = 1 ; GANJIL <= ANGKA ; GANJIL++) {
10
11 if( GANJIL % 2 != 0) {
12 printf("%d ", GANJIL);
13 }
14
15 }
16
17 printf("\n");
18
19 for (int GENAP = ANGKA ; GENAP >= 1 ; GENAP--) {
20
21 if (GENAP % 2 == 0) {
22 printf("%d ", GENAP);
23 }
24
25 }
26 }

13
Tabel 4. Source Code Jawaban Soal 2 Bahasa Python

1 ANGKA = int(input("Masukkan Angka : "))


2
3 for (GANJIL) in range(1,ANGKA + 1) :
4
5 if (GANJIL % 2 != 0) :
6 print(GANJIL, end=" ")
7
8 print()
9
10 for (GENAP) in range(ANGKA,1,-1) :
11
12 if (GENAP % 2 == 0) :
13 print(GENAP, end=" ")
14
15
16
17
18
19

14
B. Output Program

Gambar 3. Screenshot Output Soal 2 Bahasa C

15
Gambar 4. Screenshot Output Soal 2 Bahasa Python

16
C. Pembahasan

Bahasa C
• Pada baris 1, #include <stdio.h> digunakan untuk memasukkan fungsi
input dan output seperti printf dan scanf.
• Pada baris 3, void main() digunakan untuk menulis fungsi utama pada
Bahasa C dan tidak mengembalikan nilai..
• Pada baris 4, tipe data int berfungsi untuk menampung data berupa angka.
• Pada baris 6-22, printf berfungsi untuk menampilkan string dan memanggil
variabel yang berisi data yang telah kita simpan sebelumnya. Lalu %d
berguna untuk mencetak variabel yang telah kita isikan dengan angka.
Sedangkan pada baris 17, /n dalam printf berfungsi agar Ketika for pada
baris ke 19 dieksekusi, maka akan tercetak dibawah for pada baris ke 9.
• Pada baris 7, scanf berfungsi sebagai tempat untuk menginput angka. Lalu
%d berguna untuk menyatakan jenis input yang akan dimasukan yaitu
berupa angka. Kemudian & berguna agar data yang kita input akan
tersimpan ke variabel yang dituju.
• Pada baris 9-19, for merupakan perulangan yang digunakan jika kita
mengetahui nilai awal dan batas akhir dari perulangan tersebut.
• Pada baris 11-21, if termasuk ke dalam perkondisian, dimana statement di
dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika ternyata tidak
terpenuhi, maka akan keluar dari perkondisian dan akan berlanjut ke fungsi
selanjutnya.

Bahasa Python

• Pada baris 1, ANGKA merupakan variabel yang akan diisi dengan nilai
berupa Angka. Lalu input berfungsi untuk menginput data ke dalam
variabel yang telah dibuat. Dan int diluar kurung input berfungsi untuk
menyatakan tipe data yang dimasukkan berupa integer bukan string.

17
• Pada baris 3-10, for merupakan perulangan yang digunakan jika kita
mengetahui nilai awal dan batas akhir dari perulangan tersebut. Lalu range
di dalam for berfungsi sebagai tempat menentukan titik awal dan batas akhir
dari perulangan. Lalu -1 pada for dibaris 10 berfungsi agar perulangannya
mundur.
• Pada baris 5-12, if termasuk ke dalam perkondisian, dimana statement di
dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika ternyata tidak
terpenuhi, maka akan keluar dari perkondisian dan akan berlanjut ke fungsi
selanjutnya.
• Pada baris 6-13, print berfungsi untuk menampilkan variabel yang telah kita
masukkan data. Lalu end yang terletak dibelakang berfungsi agar
perulangan yang terjadi akan dicetak secara horizontal dalam satu baris.

18
SOAL 3
Pak Samson adalah seorang pengusaha sekaligus programmer ternama di Kota Xam.
Pak Samson kesulitan membagi waktu antara membuat program dan mengurus
usahanya, lalu Pak Samson menyuruh anda membuat program yang diminta oleh
clientnya, permintaannya sebagai berikut : Buatlah program angka yang bersilangan,
dan input terdiri dari angka pertama dan angka kedua, setiap angka yang bersilangan
dibatasi dengan simbol . jika angka pertama lebih besar dari angka kedua maka
program akan menampilkan dari terkecil ke terbesar dari batasan angka kedua. jika
angka kedua lebih besar dari angka pertama maka program akan menampilkan dari
terbesar ke terkecil dari batasan angka kedua.

Untuk lebih jelasnya lihat tabel input output berikut :

Input Output
3 7 3 7 - 4 6 - 5 5 - 6 4 - 7 3
7 3 7 3 - 6 4 - 5 5 - 4 6 - 3 7
95 100 95 100 - 96 99 - 97 98 - 98
97 - 99 96 - 100 95
23 17 23 17 - 22 18 - 21 19 - 20
20 - 19 21 - 18 22 - 17 23
Simpan coding anda dengan nama: PRAK403-NIM-Nama.py dan PRAK403-NIM-
Nama.c

19
A. Source Code

Tabel 5. Source Code Jawaban Soal 3 Bahasa C

1 #include <stdio.h>
2
3 void main(){
4 int ANGKA1, ANGKA2;
5
6 printf("Masukkan dua angka dengan spasi : ");
7 scanf("%d %d",&ANGKA1, &ANGKA2);
8
9 if (ANGKA1 > ANGKA2) {
10
11 for (int i = ANGKA1, j = ANGKA2; i > ANGKA2;
i--,j++) {
12 printf("%d %d - ",i, j);
13 }
14 }
15
16 else {
17
18 for (int i = ANGKA1, j = ANGKA2; i < ANGKA2;
i++, j--) {
19 printf("%d %d - ",i, j);
20 }
21 }
22
23 printf("%d %d",ANGKA2, ANGKA1);
24 }

20
Tabel 6. Source Code Jawaban Soal 3 Bahasa Python

1 ANGKA1, ANGKA2 = map(int, input("Masukkan dua buah


angka : ").split())
2
3 i = ANGKA1
4 j = ANGKA2
5
6 if ANGKA1 > ANGKA2:
7 for i in range(i, j, -1):
8 print(f"{i} {j} -", end=" ")
9 j += 1
10 else:
11 for i in range(i, j):
12 print(f"{i} {j} -", end=" ")
13 j -= 1
14
15 print(ANGKA2,ANGKA1)

21
B. Output Program

Gambar 5. Screenshot Output Soal 3 Bahasa C

22
Gambar 6. Screenshot Output Soal 3 Bahasa Python

23
C. Pembahasan

Bahasa C
• Pada baris 1, #include <stdio.h> digunakan untuk memasukkan fungsi
input dan output seperti printf dan scanf.
• Pada baris 3, void main() digunakan untuk menulis fungsi utama pada
Bahasa C dan tidak mengembalikan nilai..
• Pada baris 4, tipe data int berfungsi untuk menampung data berupa angka.
• Pada baris 6-23, printf berfungsi untuk menampilkan string dan memanggil
variabel yang berisi data yang telah kita simpan sebelumnya. Lalu %d
berguna untuk mencetak variabel yang telah kita isikan dengan angka.
• Pada baris 7, scanf berfungsi sebagai tempat untuk menginput angka. Lalu
%d berguna untuk menyatakan jenis input yang akan dimasukan yaitu
berupa angka. Kemudian & berguna agar data yang kita input akan
tersimpan ke variabel yang dituju.
• Pada baris 9-16, if dan else termasuk ke dalam perkondisian, dimana
statement di dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika
ternyata tidak terpenuhi, maka akan berlanjut ke else
• Pada baris 11-18, for merupakan perulangan yang digunakan jika kita
mengetahui nilai awal dan batas akhir dari perulangan tersebut.

Bahasa Python

• Pada baris 1, ANGKA1, ANGKA2 merupakan variabel yang akan diisi


dengan nilai berupa Angka. Lalu input berfungsi untuk menginput data ke
dalam variabel yang telah dibuat. Dan map diluar kurung berfungsi untuk
menerapkan tipe data int pada setiap input yang sudah di split menjadi
beberapa bagian.
• Pada baris 3-4, I dan j merupakan variabel yang telah ditugaskan bernilai
sama dengan variabel ANGKA1 dan ANGKA2.

24
• Pada baris 6-10, if dan else termasuk ke dalam perkondisian, dimana
statement di dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika
ternyata tidak terpenuhi, maka akan berlanjut ke else
• Pada baris 7-11, for merupakan perulangan yang digunakan jika kita
mengetahui nilai awal dan batas akhir dari perulangan tersebut. Lalu range
di dalam for berfungsi sebagai tempat menentukan titik awal dan batas akhir
dari perulangan. Lalu -1 pada for dibaris 7 berfungsi agar perulangannya
mundur.
• Pada baris 9-13, j += 1 dan j -= 1 berfungsi untuk menambahkan nilai j
dengan 1 dan mengurangi nilai j dengan 1.
• Pada baris 8-15, print berfungsi untuk menampilkan variabel yang telah kita
masukkan data. Lalu end yang terletak dibelakang berfungsi agar
perulangan yang terjadi akan dicetak secara horizontal dalam satu baris. Dan
f di awal string berfungsi agar kita dapat meletakkan variabel di dalam
string.

25
SOAL 4
Pa Jack mencari seorang programmer yang bisa membuatkan program kalkulator
sederhana untuk dirinya, karena dia kesulitan menghitung hasil penjualannya. Buatlah
sebuah kalkulator sederhana yang di minta sesuai dengan yang Pa Jack inginkan
dengan output sebagai berikut :

Pilih program

1. Penjumlahan

2. Pengurangan

3. Perkalian

4. Pembagian

5. Exit

Masukkan Pilihan :

Masukkan nilai pertama :

Masukkan nilai kedua :

Hasil Pilihan antara NilaiPertama dengan NilaiKedua adalah Hasil

• Selama program belum memasukkan pilihan angka 5, maka program akan terus
berjalan.

• Jika memasukkan angka 5 maka selanjutnya program selesai dan tampilkan :


Terimakasih, telah menggunakan kalkulator NAMAANDA

• Jika memasukkan angka selain dari angka yang tertera mulai ulang programnya dan
tampilkan : Input anda salah, silahkan coba lagi

Note : Lebih jelasnya untuk input output lihat dari link:


https://bit.ly/PenjelasanSoalNo4

26
✓ yang bertanda merah diganti dengan yang sesuai dengan inputan, misal:
Masukkan Pilihan : 2 , Nilai Pertama : 4 , dan Nilai Kedua : 2 . maka
outputnya sebagai berikut = Hasil Pengurangan antara 4.00 dengan 2.00
adalah 2.00

✓ Ketelitian 2 angka dibelakang koma.

Input Output
Pilih program Pilih program
1. Penjumlahan 1. Penjumlahan
2. Pengurangan 2. Pengurangan
3. Perkalian 3. Perkalian
4. Pembagian 4. Pembagian
5. Exit 5. Exit
Masukkan Pilihan : 3 Masukkan Pilihan : 3
Masukkan nilai pertama : 12 Masukkan nilai pertama :12
Masukkan nilai kedua : 5 Masukkan nilai kedua :5
Hasil perkalian antara
12.00 dengan 5.00 adalah
60.00
Pilih program Pilih program
1. Penjumlahan 1. Penjumlahan
2. Pengurangan 2. Pengurangan
3. Perkalian 3. Perkalian
4. Pembagian 4. Pembagian
5. Exit 5. Exit
Masukkan Pilihan : 13 Masukkan Pilihan : 3
Input anda salah, silahkan
coba lagi
Pilih program Pilih program
1. Penjumlahan 1. Penjumlahan

27
2. Pengurangan 2. Pengurangan
3. Perkalian 3. Perkalian
4. Pembagian 4. Pembagian
5. Exit 5. Exit
Masukkan Pilihan : 5 Masukkan Pilihan : 5
Terimakasih, telah
menggunakan kalkulator
NAMAANDA

Simpan coding anda dengan nama: PRAK304-NIM-Nama.py dan PRAK304-NIM-


Nama.c

28
A. Source Code

Tabel 7. Source Code Jawaban Soal 4 Bahasa C

1 #include <stdio.h>
2
3 void main() {
4 int PILIHAN;
5 float HASIL, NILAIPERTAMA, NILAIKEDUA ;
6
7 while (1) {
8
9 printf("\nPilih Program \n");
10 printf("1. Penjumlahan\n");
11 printf("2. Pengurangan\n");
12 printf("3. Perkalian\n");
13 printf("4. Pembagian\n");
14 printf("5. Exit\n");
15
16 printf("Masukkan Pilihan : ");
17 scanf("%d", &PILIHAN);
18
19 if (PILIHAN == 5) {
20 printf("Terimakasih, telah menggunakan
kalkulator Jovan Gilbert Natamasindah\n\n");
21 break;
22 }
23
24 if(PILIHAN == 1) {
25 printf("Masukkan Nilai Pertama : ");
26 scanf("%f", &NILAIPERTAMA);
27 printf("Masukkan Nilai Kedua : ");
28 scanf("%f", &NILAIKEDUA);
29 printf("Hasil Penjumlahan antara %.2f dengan
%.2f adalah %.2f\n", NILAIPERTAMA, NILAIKEDUA, HASIL =
NILAIPERTAMA + NILAIKEDUA);
30 }
31 else if(PILIHAN == 2) {
32 printf("Masukkan Nilai Pertama : ");
33 scanf("%f", &NILAIPERTAMA);
34 printf("Masukkan Nilai Kedua : ");
35 scanf("%f", &NILAIKEDUA);
36 printf("Hasil Pengurangan antara %.2f dengan
%.2f adalah %.2f\n", NILAIPERTAMA, NILAIKEDUA, HASIL =
NILAIPERTAMA - NILAIKEDUA);

29
37 }
38 else if(PILIHAN == 3) {
39 printf("Masukkan Nilai Pertama : ");
40 scanf("%f", &NILAIPERTAMA);
41 printf("Masukkan Nilai Kedua : ");
42 scanf("%f", &NILAIKEDUA);
43 printf("Hasil Perkalian antara %.2f dengan
%.2f adalah %.2f\n", NILAIPERTAMA, NILAIKEDUA, HASIL =
NILAIPERTAMA * NILAIKEDUA);
44 }
45 else if(PILIHAN == 4) {
46 printf("Masukkan Nilai Pertama : ");
47 scanf("%f", &NILAIPERTAMA);
48 printf("Masukkan Nilai Kedua : ");
49 scanf("%f", &NILAIKEDUA);
50 printf("Hasil Pembagian antara %.2f dengan
%.2f adalah %.2f\n", NILAIPERTAMA, NILAIKEDUA, HASIL =
NILAIPERTAMA / NILAIKEDUA);
51 }
52 else {
53 printf("Input anda salah, silahkan coba
lagi\n");
54
55 }
56 }
57 }

30
Tabel 8. Source Code Jawaban Soal 4 Bahasa Python

1 while 1 :
2 print("\nPilih Program")
3 print("1. Penjumlahan")
4 print("2. Pengurangan")
5 print("3. Perkalian")
6 print("4. Pembagian")
7 print("5. Exit")
8
9 PILIHAN = int(input("Masukkan Pilihan : "))
10
11 if (PILIHAN == 5) :
12 print("Terimakasih, telah menggunakan kalkulator
Jovan Gilbert Natamasindah\n")
13 break
14
15
16 if(PILIHAN == 1) :
17 NILAIPERTAMA = float(input("Masukkan Nilai Pertama
: "))
18 NILAIKEDUA = float(input("Masukkan Nilai Kedua :
"))
19 HASIL = NILAIPERTAMA + NILAIKEDUA
20 print(f"Hasil Penjumlahan antara
{NILAIPERTAMA:.2f} dengan {NILAIKEDUA:.2f} adalah
{HASIL:.2f}\n")
21
22 elif(PILIHAN == 2) :
23 NILAIPERTAMA = float(input("Masukkan Nilai Pertama
: "))
24 NILAIKEDUA = float(input("Masukkan Nilai Kedua :
"))
25 HASIL = NILAIPERTAMA - NILAIKEDUA
26 print(f"Hasil Pengurangan antara
{NILAIPERTAMA:.2f} dengan {NILAIKEDUA:.2f} adalah
{HASIL:.2f}\n")
27
28 elif(PILIHAN == 3) :
29 NILAIPERTAMA = float(input("Masukkan Nilai Pertama
: "))
30 NILAIKEDUA = float(input("Masukkan Nilai Kedua :
"))
31 HASIL = NILAIPERTAMA * NILAIKEDUA
32 print(f"Hasil Perkalian antara {NILAIPERTAMA:.2f}
dengan {NILAIKEDUA:.2f} adalah {HASIL:.2f}\n")

31
33
34 elif(PILIHAN == 4) :
35 NILAIPERTAMA = float(input("Masukkan Nilai Pertama
: "))
36 NILAIKEDUA = float(input("Masukkan Nilai Kedua :
"))
37 HASIL = NILAIPERTAMA / NILAIKEDUA
38 print(f"Hasil Pembagian antara {NILAIPERTAMA:.2f}
dengan {NILAIKEDUA:.2f} adalah {HASIL:.2f}\n")
39
40 else :
41 print("Input anda salah, silahkan coba lagi\n")

32
B. Output Program

Gambar 7. Screenshot Output Soal 4 Bahasa C

33
Gambar 8. Screenshot Output Soal 4 Bahasa Python

34
C. Pembahasan

Bahasa C

• Pada baris 1, #include <stdio.h> digunakan untuk memasukkan fungsi input


dan output seperti printf dan scanf.
• Pada baris 3, void main() digunakan untuk menulis fungsi utama pada Bahasa
C dan tidak mengembalikan nilai.
• Pada baris 4, tipe data in dan float digunakan untuk menyimpan data bertipe
angka dan pecahan.
• Pada baris 7, while merupakan perulangan yang akan tereksekusi selama
kondisinya terpenuhi.
• Pada baris 9-53, printf digunakan untuk menampilkan string dan variabel
yang telah dimasukkan. Lalu %.2f berfungsi untuk membulatkan sebanyak 2
angka dilakang koma.
• Pada baris 19-52, if, else if, dan else termasuk ke dalam perkondisian, dimana
statement di dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika
ternyata tidak terpenuhi, maka akan berlanjut ke else if. Dimana seperti pada
if, juga akan dilakukan pengecekan apakah kondisi else if terpenuhi atau
tidak. Pengecekan kondisi ini akan terus berlanjut hingga akhirnya mencapai
else , dimana else berisi statement yang akan dijalankan jika semua syarat
pada if dan else if tidak terpenuhi
• Pada baris 17-49, scanf berfungsi sebagai tempat untuk menginput angka.
Lalu %d dan %f berguna untuk menyatakan jenis input yang akan dimasukan
yaitu berupa angka dan pecahan. Kemudian & berguna agar data yang kita
input akan tersimpan ke variabel yang dituju.
• Pada baris 21, break berfungsi untuk menghentikan perulangan jika
memenuhi suatu kondisi.

35
Bahasa Python

• Pada baris 1, while merupakan perulangan yang akan tereksekusi selama


kondisinya terpenuhi
• Pada baris 2-41, print berfungsi untuk menampilkan string dan variabel
yang telah kita masukkan data. Dan f di awal string berfungsi agar kita dapat
meletakkan variabel di dalam string.
• Pada baris 9, PILIHAN merupakan variabel yang akan diisi dengan nilai
berupa angka. Lalu input berfungsi untuk menginput data ke dalam variabel
yang telah dibuat. Dan int diluar kurung input berfungsi untuk menyatakan
bahwa inputan yang kita berikan berupa integer.
• Pada baris 11-40; if, elif, dan else, termasuk ke dalam perkondisian, dimana
statement di dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika
ternyata tidak terpenuhi, maka akan berlanjut ke elif. Dimana seperti pada if,
juga akan dilakukan pengecekan apakah kondisi elif terpenuhi atau tidak.
Pengecekan kondisi ini akan terus berlanjut hingga akhirnya mencapai else ,
dimana else berisi statement yang akan dijalankan jika semua syarat pada if
dan elif tidak terpenuhi.
• Pada baris 17-36, NILAIPERTAMA dan NILAIKEDUA merupakan
variabel yang akan diisi dengan nilai berupa angka. Lalu input berfungsi
untuk menginput data ke dalam variabel yang telah dibuat. Dan float diluar
kurung input berfungsi untuk menyatakan bahwa inputan yang kita berikan
berupa pecahan.
• Pada baris 19-37, HASIL merupakan variabel yang berisi operasi aritmatika.
• Pada baris 13, break berfungsi untuk menghentikan perulangan jika
memenuhi suatu kondisi

36
SOAL 5
Buatlah sebuah program untuk menghitung jumlah kelipatan pada tiap baris seperti
contoh kasus.

Info:

input baris pertama, banyaknya n.


input baris kedua, kelipatan.
Output adalah hasil perhitungan dari masing-masing kelipatan pada tiap baris dan
output baris terakhir merupakan jumlah pada masing-masih baris.

Input Output
3 2 (1 * 2) = 2
(2 * 2) + (1 * 2) = 6
(3 * 2) + (2 * 2) + (1 * 2) = 12
20
5 3 (1 * 3) = 3
(2 * 3) + (1 * 3) = 9
(3 * 3) + (2 * 3) + (1 * 3) = 18
(4 * 3) + (3 * 3) + (2 * 3) + (1 * 3) = 30
(5 * 3) + (4 * 3) + (3 * 3) + (2 * 3) + (1 * 3) = 45
105
2 3 (1 * 3) = 3
(2 * 3) + (1 * 3) = 9
12

Simpan coding anda dengan nama: PRAK405-NIM-Nama.py dan PRAK405-NIM-


Nama.c

37
A. Source Code

Tabel 9. Source Code Jawaban Soal 5 Bahasa C

1 #include <stdio.h>
2
3 void main() {
4 int n, KELIPATAN;
5 int TOTAL = 0;
6
7 printf("Masukkan nilai n dan kelipatan : ");
8 scanf("%d %d", &n, &KELIPATAN);
9
10 for (int i = 1; i <= n; i++) {
11
12 int TOTAL_BARIS = 0;
13
14 for (int j = i; j > 0; j--) {
15
16 TOTAL_BARIS += j * KELIPATAN;
17 if (j == i) {
18 printf("(%d * %d)", j, KELIPATAN);
19 }
20 else {
21 printf(" + (%d * %d)", j, KELIPATAN);
22 }
23
24 }
25
26 printf(" = %d\n", TOTAL_BARIS);
27 TOTAL += TOTAL_BARIS;
28 }
29
30 printf("%d\n", TOTAL);
31 }

38
Tabel 10. Source Code Jawaban Soal 5 Bahasa Python

1 n, KELIPATAN = map(int,input("Masukkan nilai n dan kelipatan


: ").split())
2
3 TOTAL = 0
4
5 for i in range(1, n + 1):
6
7 TOTAL_BARIS = 0
8
9 for j in range(i, 0, -1):
10
11 TOTAL_BARIS += j * KELIPATAN
12 if j == i:
13 print(f"({j} * {KELIPATAN})", end="")
14 else:
15 print(f" + ({j} * {KELIPATAN})", end="")
16
17 print(f" = {TOTAL_BARIS}")
18 TOTAL += TOTAL_BARIS
19
20 print(TOTAL)

39
B. Output Program

Gambar 9. Screenshot Output Soal 5 Bahasa C

40
Gambar 10. Screenshot Output Soal 5 Bahasa Python

41
C. Pembahasan

Bahasa C

• Pada baris 1, #include <stdio.h> digunakan untuk memasukkan fungsi input


dan output seperti printf dan scanf.
• Pada baris 3, void main() digunakan untuk menulis fungsi utama pada Bahasa
C dan tidak mengembalikan nilai.
• Pada baris 4-5, tipe data int digunakan untuk menyimpan data bertipe angka.
• Pada baris 7-30, printf digunakan untuk menampilkan string dan variabel
yang telah dimasukkan. Lalu %d berguna untuk mencetak variabel yang
telah kita isikan dengan angka. Dan pada baris 30, \n didalam printf
berfungsi agar variabel TOTAL dicetak pada baris baru.
• Pada baris 8, scanf berfungsi sebagai tempat untuk menginput angka atau
integer. Lalu %d berguna untuk menyatakan jenis input yang akan dimasukan
yaitu berupa angka. Kemudian & berguna agar data yang kita input akan
tersimpan ke variabel yang dituju.
• Pada baris 10-14, for merupakan perulangan yang digunakan jika kita
mengetahui nilai awal dan batas akhir dari perulangan tersebut.
• Pada baris 16-27. TOTAL_BARIS += j * KELIPATAN dan TOTAL +=
TOTAL_BARIS berfungsi untuk menambahkan TOTAL_BARIS dengan j
* KELIPATAN dan menambahkan TOTAL dengan TOTAL_BARIS
• Pada baris 17-20, if dan else , termasuk ke dalam perkondisian, dimana
statement di dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika
ternyata tidak terpenuhi, maka akan berlanjut ke else , dimana else berisi
statement yang akan dijalankan jika semua syarat pada if tidak terpenuhi

Bahasa Python

• Pada baris 1, n , KELIPATAN merupakan variabel yang akan diisi dengan


nilai berupa Angka. Lalu input berfungsi untuk menginput data ke dalam
variabel yang telah dibuat. Dan map diluar kurung berfungsi untuk

42
menerapkan tipe data int pada setiap input yang sudah di split menjadi
beberapa bagian.
• Pada baris 3-7, TOTAL dan TOTAL_BARIS merupakan variabel yang
bernilai 0 sehingga jika perulanga selesai dilakukan maka variabel tersebut
nilainya akan direset Kembali ke 0.
• Pada baris 5-9, for merupakan perulangan yang digunakan jika kita
mengetahui nilai awal dan batas akhir dari perulangan tersebut. Lalu range
di dalam for berfungsi sebagai tempat menentukan titik awal dan batas akhir
dari perulangan. Lalu -1 pada for dibaris 9 berfungsi agar perulangannya
mundur.
• Pada baris 12-14; if dan else, termasuk ke dalam perkondisian, dimana
statement di dalam if akan dijalankan jika kondisi if terpenuhi, tapi jika
ternyata tidak terpenuhi, maka akan berlanjut ke else , dimana else berisi
statement yang akan dijalankan jika semua syarat pada if tidak terpenuhi
• Pada baris 13-20, print berfungsi untuk menampilkan string dan variabel
yang telah kita masukkan. Lalu f yang berada tepat sebelum string berfungsi
agar kita dapat memasukkan variabel ke dalam string secara langsung.

43
TAUTAN GIT
Berikut adalah tautan untuk source code yang telah dibuat.
https://github.com/AppleCraft2005/PemrogramanI/tree/main/Modul4_JovanGilbertN
atamasindah_2310817310002

44

Anda mungkin juga menyukai