• Tidak ada hasil yang ditemukan

Kumpulan Soal Dan Jawaban Algoritma Dan Pemrograman

N/A
N/A
Protected

Academic year: 2018

Membagikan "Kumpulan Soal Dan Jawaban Algoritma Dan Pemrograman"

Copied!
56
0
0

Teks penuh

(1)

Kumpulan Soal Dasar-Dasar

Algoritma Dan Pemrograman

Last update: 04 November 2010

51 soal

http://awanrimbawan.wordpress.com

DISCLAIMER

http://awanrimbawan.wordpress.com 04Nov2010

▸ Baca selengkapnya: kumpulan soal 10 program pkk

(2)

- For educational purpose only

-

Compiler menggunakan Dev C++ 4.9.9.2

-

Mari berbagi,jika menemukan kesalahan tentang

algoritma atau source code, silahkan hubungi

awanrmb@gmail.com.

-

Semoga bisa membantu kita untuk belajar algoritma dan

pemrograman

1. Soal: Lama Bekerja

http://awanrimbawan.wordpress.com 04Nov2010

(3)

Tulis program untuk menentukan lama bekerja seorang pegawai, jika jam masuk dan jam pulang diinput. Catatan: jam berupa angka 1-12, dan seorang pegawai bekerja kurang dari 12 jam.

Contoh Masukan dan keluaran: Jam

mas uk

Jam keluar

Keluaran/ tampilan

10 11 Lama bekerja 1 jam

10 2 Lama bekerja 4 jam

10 7 Lama bekerja 9 jam

Algoritma:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 3

Algoritma Lama_Bekerja

{jam berupa angka 1-12, dan seorang pegawai bekerja kurang dari 12 jam}

KAMUS DATA

iMasuk, iKeluar, iLama: Integer BEGIN

Input(iMasuk) Input(iKeluar)

If (iKeluar >= iMasuk) Then

iLama  iKeluar - iMasuk Else

iLama  (12-iMasuk) + iKeluar end if

(4)

Program:

2. Soal: Biaya Parkir

Tulis program untuk menentukan biaya parkir yang dihitung berdasarkan lama parkir. Lama parkir dihitung dari selisih jam masuk dan jam keluar diinput. Biaya parkir 2 jam pertama 2000, perjam berikutnya 500.

Contoh Masukan dan keluaran: Jam

masuk

Jam keluar Lama keluaran/ tampilan

10 11 1 Biaya = 2000

10 2 4 Biaya = 3000

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 4

#include <stdio.h> #include <stdlib.h>

/*Tulis procgram untuk menentukan lama bekerja seorang pegawai, jika jam masuk dan jam pulang diinput.

Catatan: jam berupa angka 1-12, dan seorang pegawai bekerja kurang dari 12 jam.

asumsi jam yang dimasukkan adalah tepat (tidak memasukkan menit)

*/

int main()

{ int iMasuk, iKeluar, iLama;

printf("Menentukan lama bekerja\n\n"); printf(" Jam Masuk : ");

scanf("%d",&iMasuk); printf(" \nJam Keluar : "); scanf("%d",&iKeluar);

if (iKeluar >= iMasuk)

iLama = iKeluar - iMasuk; else

iLama = (12-iMasuk) + iKeluar;

printf("\n\n Lama bekerja adalah : %d Jam\n", iLama); system("PAUSE");

(5)

Algoritma:

Program:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 5

Algoritma Biaya_Parkir {menghitung biaya parkir} KAMUS DATA

iMasuk, iKeluar, iLama, iBiaya: Integer

BEGIN

Input(iMasuk) Input(iKeluar)

If (iKeluar >= iMasuk) Then

iLama  iKeluar - iMasuk Else

iLama  (12-iMasuk) + iKeluar End If

If (iLama > 2) Then

iBiaya  2000 + ((iLama - 2)*500) else

iBiaya  2000

Output(iBiaya) END

#include <stdio.h> #include <stdlib.h> int main()

{ int iMasuk, iKeluar, iLama; long int iBiaya;

printf("Menghitung Biaya Parkir\n\n"); printf(" Jam Masuk : ");

scanf("%d",&iMasuk); printf(" \nJam Keluar : "); scanf("%d",&iKeluar);

if (iKeluar >= iMasuk)

iLama = iKeluar - iMasuk; else

iLama = (12-iMasuk) + iKeluar;

if (iLama > 2)

iBiaya = 2000 + ((iLama - 2)*500); else

iBiaya = 2000;

printf("\n\n Biaya parkir adalah : Rp %d \n", iBiaya);

system("PAUSE"); return 0;

(6)

3. Soal: Penggabungan Resistor

Tulis program untuk menghitung resistor pengganti dari 3 buah resistor yang disusun secara seri atau paralel. Rumus untuk resistor pengganti sbb:

Seri: Rgab = R1 + R2 + R3

Paralel: 1/Rgab = 1/R1 + 1/R2 + 1/R3

Besar R1, R2 dan R3 serta jenis penyusunan (seri/paralel) diinput oleh user.

Algoritma:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 6

Algoritma Menghitung_Resistor KAMUS DATA

iPilihan: Integer

fR1, fR2, fR3, fResPengganti: Float

BEGIN

Input(fR1,fR2,fR3) Input(iPilihan) Case iPilihan

1: fResPengganti  fR1+ fR2+ fR3

2: fResPengganti  (1.0/fR1)+ (1.0/fR2)+ (1.0/fR3) fResPengganti  1.0/fResPengganti

Otherwise: output(“pilihan salah”) End Case

Output(fResPengganti)

(7)

Program:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 7

#include <stdio.h> #include <stdlib.h>

/*Resistor Pengganti. Modul Praktikum Poltek. hal 27*/ int main()

{ int iPilihan;

float fR1, fR2, fR3; float fResPengganti;

printf("Menghitung Resistor Pengganti"); printf("\n\nMasukkan Nilai R1: ");

scanf("%f",&fR1);

printf("\nMasukkan Nilai R2: "); scanf("%f",&fR2);

printf("\nMasukkan Nilai R3: "); scanf("%f",&fR3);

printf(" \n\nPenyusunan Resistor: "); printf("\n 1.Seri");

printf("\n 2.Paralel");

printf("\nMasukkan pilihan penyusunan (1 atau 2): "); scanf("%d",&iPilihan);

switch (iPilihan) { case 1:

fResPengganti = fR1+ fR2+ fR3; break;

case 2:

fResPengganti = (1.0/fR1)+ (1.0/fR2)+ (1.0/fR3); fResPengganti = 1.0/fResPengganti;

break; default:

printf("inputan salah"); }

printf("\n\nBesar resistor pengganti adalah : %.2f \n", fResPengganti);

system("PAUSE"); return 0;

(8)

4. Soal: Harga barang

Buatlah program untuk menyelesaikan masalah berikut :

Program akan menerima masukan berupa kode, jenis dan harga, dengan jenis adalah "A", "B", dan "C". Untuk setiap jenis, masing-masing akan diberikan diskon sebesar 10% untuk A, 15% untuk B, dan 20% untuk C. http://awanrimbawan.wordpress.com 04Nov2010

(9)

Program akan menghitung berapa harga setelah didiskon. Contoh masukan :

Jenis = B kode = 10 harga = 10000 Contoh keluaran :

Jenis barang B mendapat diskon = 15%, Harga setelah didiskon = 8500

Algoritma:

Program:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 9

Algoritma Menghitung_Barang KAMUS DATA iKode,iHarga:integer cJenis: character BEGIN Input(cJenis) Input(iKode) Input(iHarga) Case(cJenis)

'A': iHDiskon  0,9 * iHarga 'B': iHDiskon  0,85 * iHarga 'C': iHDiskon  0,8 * iHarga End Case output(iHDiskon) END #include <stdio.h> #include <stdlib.h> #include <conio.h> int main()

{ int iKode,iDiskon; char cJenis;

long int iHarga, iHDiskon;

printf(" Jenis : "); scanf("%c",&cJenis); printf(" Kode : "); scanf("%d",&iKode);

printf(" Harga : "); scanf("%d",&iHarga);

switch (cJenis) { case 'A':

iDiskon=10;

iHDiskon = 0.9 * iHarga; break;

case 'B': iDiskon=15;

iHDiskon = 0.85 * iHarga; break;

case 'C':

iDiskon=20;

iHDiskon = 0.8 * iHarga; break; default: printf("inputan salah"); }

printf("\n\n Jenis barang %c mendapat diskon %d %%, Harga setelah didiskon : Rp %d \n", cJenis, iDiskon, iHDiskon);

system("PAUSE"); return 0;

(10)

5. Soal: Gaji karyawan mingguan

Sebuah perusahaan swasta menggaji karyawannya secara mingguan dengan hitungan sebagai berikut :

golongan 1 dengan upah per jam 3.000 rupiah

http://awanrimbawan.wordpress.com 04Nov2010

(11)

golongan 2 dengan upah per jam 3.500 rupiah golongan 3 dengan upah per jam 4.000 rupiah golongan 4 dengan upah per jam 5.000 rupiah

Bila seorang karyawan bekerja kurang atau sama dengan 40 jam per minggu, akan dihitung dengan upah per jam seperti di atas, tetapi apabila bekerja lebih dari 40 jam, maka lebihnya akan dihitung sebagai lembur dengan upah per jam 1½ kali upah biasa.

Tulis algoritma untuk menghitung gaji mingguan karyawan, bila golongan dan jam kerja diinput dari keyboard.

Algoritma:

Program:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 11

Algoritma Menghitung_Gaji KAMUS DATA

iGol, iJam, iUpah, iGaji : Integer BEGIN

Input(iGol) Input(iJam) iUpah  0

Case(iGol)

1: iUpah  3000 2: iUpah  3500 3: iUpah  4000 4: iUpah  5000 End case

If (iJam > 40) Then

iGaji  40 * iUpah + ((iJam - 40) * 1.5 * iUpah) Else

iGaji  iJam * iUpah

End if Output(iGaji) END #include <stdio.h> #include <stdlib.h> #include <conio.h> int main()

{ int iGol,iJam, iUpah; int iGaji;

iUpah=0;

printf(" Jumlah Jam Kerja : "); scanf("%d",&iJam);

printf(" Golongan(1,2,3,4) : "); scanf("%d",&iGol);

switch (iGol) { case 1:

iUpah=3000; break; case 2: iUpah=3500; break; case 3: iUpah=4000; break; case 4: iUpah=5000; break; default:

printf("inputan golongan salah"); }

if (iJam > 40)

iGaji = 40 * iUpah + ((iJam - 40) * 1.5 * iUpah); else

iGaji = iJam * iUpah;

printf("\n\n Gaji : Rp %d \n", iGaji); system("PAUSE");

(12)

6. Soal: Menghitung selisih waktu dalam jam dan

menit

Buat program menghitung selisih waktu (dalam jam dan menit)

berdasarkan jam mulai (jam,menit) dengan jam selesai (jam,menit). Data yang diinput adalah jam dan menit mulai, jam dan menit selesai.

http://awanrimbawan.wordpress.com 04Nov2010

(13)

Contoh Masukan dan Keluaran: Mulai (jam,menit) Selesai (jam,menit) Lama (menit) Lama (jam,menit )

10:30 12:10 100 1 jam 40 menit 10:30 1:40 130 3 jam 10

menit

Algoritma:

Program:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 13

ALGORITMA MENGHITUNG_JAM_MENIT KAMUS DATA iJamStart,iMenitStart,iMenitStop,iJamStop: integer iTotMenit1,iTotMenit2,iSelangMenit,iJamDurasi,iMenitDurasi: integer BEGIN Input(iJamStart) Input(iMenitStart) Input(iJamStop) Input(iMenitStop)

iTotMenit1  iJamStart * 60 + iMenitStart iTotMenit2  iJamStop * 60 + iMenitStop

If (iTotMenit2 >= iTotMenit1) Then

iSelangMenit  iTotMenit2 - iTotMenit1 Else

iSelangMenit  ((12*60)-iTotMenit1) + iTotMenit2 End if

iJamDurasi  iSelangMenit div 60 iMenitDurasi  iSelangMenit mod 60; Output(iJamDurasi) Output(iMenitDurasi) END #include <stdio.h> #include <stdlib.h> #include <conio.h> int main()

{ int iJamStart,iMenitStart,iJamStop,iMenitStop,iSelangMenit, iJamDurasi, iMenitDurasi ;

long int iTotMenit1, iTotMenit2;

printf(" Masukkan Waktu Mulai (contoh 10:05) : "); scanf("%d:%d",&iJamStart,&iMenitStart);

printf(" Masukkan Waktu Berhenti (contoh 11:04) : "); scanf("%d:%d",&iJamStop,&iMenitStop);

iTotMenit1 = iJamStart * 60 + iMenitStart; iTotMenit2 = iJamStop * 60 + iMenitStop;

if (iTotMenit2 >= iTotMenit1)

iSelangMenit = iTotMenit2 - iTotMenit1; else

iSelangMenit = ((12*60)-iTotMenit1)+iTotMenit2;

iJamDurasi = iSelangMenit / 60; iMenitDurasi = iSelangMenit % 60;

printf("\n\n Durasi adalah %d Jam %d Menit\n", iJamDurasi, iMenitDurasi);

system("PAUSE"); return 0;

(14)

7. Soal: Kuadran dari koordinat titik

Buat program dengan masukan koordinat sebuah titik (x,y) dalam sebuah system koordinat kartesian, kemudian ditentukan di kuadran mana titik tersebut.

Contoh Masukan :

Koordinat titik (x,y) : 10 -20 Contoh keluaran:

Titik 10,-20 berada pada kuadran 4

Algoritma:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 14

ALGORITMA Menghitung_Kuadran KAMUS DATA

ix, iy: Integer BEGIN Input(ix,iy) If (ix >= 0) If (iy >=0)

Output(“Kuadran I”) else

Output(“Kuadran IV”) else

if (iy >=0)

Output(“Kuadran II”) else

(15)

Program:

8. Soal: Tunjangan Anak

Pemerintah hanya memberikan tunjangan anak dari PNS maksimal sampai 3 anak saja. Setiap anak diberikan tunjangan sebesar 10% dari gaji pokok. Tulis program untuk menghitung total tunjangan anak, bila gaji pokok dan jumlah anak diinput oleh user.

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 15

#include <stdio.h> #include <stdlib.h> int main()

{ int ix, iy;

printf(" Masukkan koordinat x,y : "); scanf("%d,%d",&ix,&iy);

if (ix >= 0) if (iy >=0)

printf("\nKuadran I\n"); else

printf("\nKuadran IV\n"); else

if (iy >=0)

printf("\nKuadran II\n"); else

printf("\nKuadran III\n");

system("PAUSE"); return 0;

(16)

Contoh Masukan dan Keluaran: Jumla

h anak

Gaji Pokok Tunjangan Anak

0 1.000.000 0

1 1.000.000 100.000 3 1.000.000 300.000 5 1.000.000 300.000

Algoritma:

Program:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 16

ALGORITMA Menghitung_Tunjangan KAMUS DATA

iGajiPokok, iTunjangan, iJmlAnak: Integer BEGIN

Input(iGajiPokok) Input(iJmlAnak)

If (iJmlAnak <= 3 && iJmlAnak > 0) Then

iTunjangan  iJmlAnak * 0.1 * iGajiPokok Else If (iJmlAnak > 3)

iTunjangan  3 * 0.1 * iGajiPokok Else

iTunjangan  0 End if

Output ( iTunjangan) END

#include <stdio.h> #include <stdlib.h> int main()

{ int iGajiPokok, iTunjangan, iJmlAnak;

printf(" Masukkan Gaji Pokok : "); scanf("%d",&iGajiPokok);

printf(" Masukkan JmlAnak : "); scanf("%d",&iJmlAnak);

if (iJmlAnak<=3 && iJmlAnak>0)

iTunjangan = iJmlAnak * 0.1 * iGajiPokok; else if (iJmlAnak>3)

iTunjangan = 3 * 0.1 * iGajiPokok; else

iTunjangan =0;

printf("\nTunjangan Anak adalah sebesar Rp.%d \n", iTunjangan);

system("PAUSE"); return 0;

(17)

9. Soal: Minibus pariwisata

Sebuah acara wisata digunakan minibus kapasitas 7 penumpang per mobil. Apabila terjadi kelebihan penumpang (walaupun cuma 1), maka minibus yang digunakan ditambah 1. Tulis program untuk menghitung jumlah minibus yang diperlukan, bila jumlah pesertanya diinput.

Contoh Masukan dan Keluaran: Jumlah

Peserta

Jumlah Minibus

5 1

7 1

8 2

Algoritma:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 17

ALGORITMA Menghitung_Tunjangan KAMUS DATA

iPeserta,iMinibus : Integer BEGIN

Output(iPeserta)

iMinibus0

If (iPeserta > 7) Then iMinibus  iPeserta / 7 If (iPeserta % 7 != 0) Then iMinibus  iMinibus + 1 End If

Else if (iPeserta > 0) Then iMinibus  1

End if

(18)

Program:

10.

Soal: Menentukan N hari yang lalu tanpa

menginputkan Hari Ini

Diinput jumlah berapa hari yang lalu, kemudian ditentukan nama harinya. Tulis program untuk menentukan nama hari dari sekian hari yang lalu yang diinput. (Catatan, gunakan Hari ini = ‘Senin’)

Contoh Masukan dan Keluaran: N hari yang lalu Nama Hari

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 18

#include <stdio.h> #include <stdlib.h>

int main()

{ int iPeserta,iMinibus;

printf(" Masukkan jml peserta : "); scanf("%d",&iPeserta);

iMinibus=0;

if (iPeserta > 7){

iMinibus = iPeserta / 7; if (iPeserta % 7 != 0) iMinibus++;

}else if (iPeserta > 0) iMinibus=1;

printf("Minibus yg diperlukan: %d\n",iMinibus);

system("PAUSE"); return 0;

(19)

0 Senin 1 Minggu 10 Jumat 20 Selasa

Algoritma:

Program:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 19

ALGORITMA Menentukan_Nama_Hari_1 KAMUS DATA

iNHari,iBelakang : Integer cNamaHari[15]: String BEGIN

Input(iNHari)

iBelakang  ( iNHari + 1)

Case (iBelakang)

1: cNamaHari "Senin" 2: cNamaHari "Selasa" 3: cNamaHari "Rabu" 4: cNamaHari "Kamis" 5: cNamaHari "Jumat" 6: cNamaHari "Sabtu" 7: cNamaHari "Minggu"

Otherwise: cNamaHari  "Inputan salah" End Case Output(cNamaHari) END #include <stdio.h> #include <stdlib.h> #include <string.h> int main()

{ int iNHari,iBelakang; char cNamaHari[15];

printf("Masukkan N Hari yg lalu : "); scanf("%d",&iNHari);

iBelakang = (iNHari+1) ; switch (iBelakang){ case 1: strcpy(cNamaHari,"Senin"); break; case 2: strcpy(cNamaHari,"minggu"); break; case 3: strcpy(cNamaHari,"sabtu"); break; case 4: strcpy(cNamaHari,"jumat"); break; case 5: strcpy(cNamaHari,"kamis"); break; case 6: strcpy(cNamaHari,"rabu"); break; case 7: strcpy(cNamaHari,"selasa"); break; default: strcpy(cNamaHari,"Inputan salah"); }

printf("\n Sekarang Hari Senin. %d Hari yang lalu adalah hari %s \n",iNHari,cNamaHari);

system("PAUSE"); return 0;

(20)

11.

Soal: Menentukan N hari yang lalu dengan

menginputkan Hari Ini

Diinput jumlah berapa hari yang lalu, kemudian ditentukan nama harinya. Tulis program untuk menentukan nama hari dari sekian hari yang lalu dan nomor hari ini yang diinput.

Contoh Masukan dan Keluaran:

N hari yang Hari ini Nama Hari

http://awanrimbawan.wordpress.com 04Nov2010

(21)

lalu

0 1 Senin

3 3 Minggu

5 4 Sabtu

Algoritma:

Program:

http://awanrimbawan.wordpress.com 04Nov2010

P a g e 21

ALGORITMA Menghitung_Hari KAMUS DATA

iNHari,iHariIni,iBelakang : Integer cNamaHari[15] : String

cNamaHariLalu: Char BEGIN Input(iHariIni) Input(iNHari)

If (iHariIni>iNHari) Then

iBelakang  iHariIni - iNHari Else

iBelakang  7 - (iNHari - iHariIni) End If

Case (iBelakang)

1: cNamaHari "Senin" 2: cNamaHari "Selasa" 3: cNamaHari "Rabu" 4: cNamaHari "Kamis" 5: cNamaHari "Jumat" 6: cNamaHari "Sabtu" 7: cNamaHari "Minggu" End Case Output(cNamaHari) END #include <stdio.h> #include <stdlib.h> #include <string.h> int main()

{ int iNHari,iHariIni,iBelakang;

char cNamaHari[15],cNamaHariLalu;

printf("Masukkan Kode Hari ini : "); scanf("%d",&iHariIni);

printf("Masukkan N Hari yg lalu : "); scanf("%d",&iNHari);

if (iHariIni>iNHari)

iBelakang = iHariIni - iNHari; else

iBelakang= 7 - (iNHari - iHariIni);

switch (iBelakang){

case 1: strcpy(cNamaHari,"Senin"); break;

case 2:strcpy(cNamaHari,"Selasa"); break;

case 3:strcpy(cNamaHari,"Rabu"); break;

case 4: strcpy(cNamaHari,"Kamis"); break; case 5: strcpy(cNamaHari,"Jumat"); break; case 6: strcpy(cNamaHari,"Sabtu"); break; case 7: strcpy(cNamaHari,"Minggu"); break; default: strcpy(cNamaHari,"Inputan salah"); }

printf("\n %d Hari yang lalu adalah hari %s \ n",iNHari,cNamaHari);

system("PAUSE"); return 0;

(22)

12.

Soal: Penghitungan Pembayaran Listrik

PLN menerapkan pembayaran listrik perumahan dengan cara perhitungan sebagai berikut :

- Untuk golongan 1 tarif : Rp 1000/kWh - Untuk golongan 2 tarif : Rp 2000/kWh Dengan syarat penghitungan:

http://awanrimbawan.wordpress.com 04Nov2010

(23)

Minimum pembayaran adalah 100 kWh sedangkan untuk pemakaian 1000 kWh dan seterusnya tarifnya ditambah 10% dari total pembayaran.

Golongan Pemakai an

Bayar

1 50 100.000

2 150 300.000

1 1000 1.100.000

ALGORITMA Menghitung_Pembayaran_Listrik KAMUS DATA

iGol,iPakai,iTarif,iBayar : Integer BEGIN

Input(iGol) Input(iPakai) If ( iGol = 1) Then

iTarif 1000 Else

iTarif  2000 End If

If (iPakai < 100) Then iBayar  100 * iTarif Else If ( iPakai >= 1000)

iBayar  iPakai * iTarif * 1.1 Else

iBayar  iPakai * iTarif End If

Output(iBayar) END

SOURCE CODE:

#include <stdio.h> #include <stdlib.h> int main()

{ int iGol,iPakai,iTarif,iBayar;

printf("masukkan golongan: ");scanf("%d",&iGol);

http://awanrimbawan.wordpress.com 04Nov2010

(24)

printf("masukkan jam pemakaian: ");scanf("%d",&iPakai);

if (iGol == 1 )

{iTarif=1000;} else

{iTarif=2000;}

if (iPakai < 100)

{iBayar=100*iTarif;} else if (iPakai >= 1000)

{iBayar=iPakai*iTarif*1.1;} else

{iBayar=iPakai * iTarif;}

printf("\n yg harus dibayarkan %d\n",iBayar);

system("PAUSE"); return 0;

}

13.

Soal: Penghitungan Bulan

Buatlah algoritma untuk menghitung bulan pernikahan dengan menginputkan bulan saat ini dan berapa bulan kedepan. Misal data:

Bulan Saat Ini N Bulan Kedepan Bulan Pernikahan

1 2 3

12 1 1

10 5 3

ALGORITMA Menghitung_Bulan_Pernikahan

KAMUS DATA

iBlnSekarang, iNbulan, iBlnPernikahan : Integer

BEGIN

Input (iBlnSekarang) Input (iNBulan)

http://awanrimbawan.wordpress.com 04Nov2010

(25)

If ( (iBlnSekarang + iNbulan) <= 12 ) Then iBlnPernikahan  iBlnSekarang + iNbulan Else

iBlnPernikahan  (iBlnSekarang + iNbulan) mod 12 End If

Output (iBlnPernikahan)

END

SOURCE CODE: #include <stdio.h> #include <stdlib.h>

int main()

{ int iBlnSekarang, iNbulan, iBlnPernikahan;

printf("masukkan Bulan Sekarang: "); scanf("%d",&iBlnSekarang); printf("masukkan N Bulan Kedepan: "); scanf("%d",&iNbulan);

if ( (iBlnSekarang + iNbulan) <= 12 )

{iBlnPernikahan=iBlnSekarang + iNbulan;} else

{iBlnPernikahan=(iBlnSekarang + iNbulan) % 12;}

printf("\n Bulan Pernikahan adalaha bulan ke-%d\n",iBlnPernikahan);

system("PAUSE"); return 0;

}

14.

Soal: Deret Ganjil

Buatlah sebuah program untuk menampilkan bilangan ganjil antara 1-20 dengan menggunakan struktur while.

ALGORITMA Menampilkan_deret_ganjil

KAMUS DATA i : Integer BEGIN

i  1

http://awanrimbawan.wordpress.com 04Nov2010

(26)

While (i <= 20) Output(i) i  i + 2 End While

END

SOURCE CODE: #include <stdio.h> #include <stdlib.h>

int main() { int i=1;

while(i<=20){ printf("%d ",i); i=i+2; }

system("PAUSE"); return 0;

}

15.

Soal: Menampilkan bilangan kelipatan 3

Buatlah sebuah program untuk menampilkan bilangan kelipatan 3, dengan range berupa inputan dari user. Gunakan struktur do…while

Contoh inputan :

Awal : 1 Akhir : 10

Kelipatan 3 : 3 6 9 Awal : 15

Akhir : 30

Kelipatan 3 : 15 18 21 24 27 30

ALGORITMA Kelipatan_Tiga

http://awanrimbawan.wordpress.com 04Nov2010

(27)

KAMUS DATA i : Integer BEGIN

Input(i) {awalan}

Input(j) {akhiran}

Do

If (i mod 3 = 0) Then Output(i)

End If

i  i+1 While (i <= j) END

SOURCE CODE: #include <stdio.h> #include <stdlib.h> int main()

{ int i,j,k;

printf("awal : "); scanf("%d",&i);

printf("akhir : "); scanf("%d",&j);

do{

if (i % 3 == 0) printf(" %d ",i);

i=i+1; }while(i<=j);

system("PAUSE"); return 0;

}

16.

Soal: menghitung sederet bilangan

Buatlah program pengulangan untuk menghitung jumlah sederet bilangan berurut yang dimulai dari 1 hingga bilangan inputan. Contoh:

http://awanrimbawan.wordpress.com 04Nov2010

(28)

INPUT : 7

PROSES : 1+2+3+4+5+6+7 OUTPUT : 28

ALGORITMA Menghitung_sederet_bilangan

KAMUS DATA i,j,k : Integer BEGIN

k  0

Output("Input : ") Input(i)

Output("Proses : ") j  1;

While (j <= i) Output(j) If (j <> i) Then Output(" + ") End If

k  k+j

j  j + 1 End While

Output(k) END

SOURCE CODE: #include <stdio.h> #include <stdlib.h>

int main() { int i,j,k=0;

printf("Input : "); scanf("%d",&i); printf("Proses : "); j = 1;

while(j <= i) {

printf("%d",j); if (j != i) printf(" + ");

k=k+j;

http://awanrimbawan.wordpress.com 04Nov2010

(29)

j = j + 1; }

printf(" = %d\n",k);

system("PAUSE"); return 0;

}

17.

Soal: Segitiga

Buatlah program pengulangan bersarang dengan sintaks FOR untuk menampilkan output sebagai berikut:

Masukkan angka: 4 *

** *** ****

ALGORITMA Menampilkan_Segitiga

KAMUS DATA i,j,k : Integer BEGIN

Input(k)

For (i  1; i <= k ; i++)

For(j  1 ; j<=i ; j++) Output("*") End For

Output("\n") End For

END

SOURCE CODE: #include <stdio.h> #include <stdlib.h> int main()

http://awanrimbawan.wordpress.com 04Nov2010

(30)

{ int i,j,k;

printf("masukkan angka : "); scanf("%d",&k);

for (i=1;i<=k;i++){

for(j=1; j<=i; j++){ printf("*"); }

printf("\n"); }

system("PAUSE"); return 0;

}

18.

Soal: Faktorial

Buatlah program untuk menghitung nilai faktorial suatu bilangan yang diinputkan oleh user.

Rumus faktorial adalah sebagai berikut : n! = n*(n-1)*(n-2)*…*(n-(n-1))

n merupakan inputan dari user.

Boleh menggunakan struktur pengulangan manapun. Contoh inputan

Faktorial dari : 3

3! = 3*2*1=6

Faktorial dari : 5

5! = 5*4*3*2*1 = 120

ALGORITMA Faktorial

http://awanrimbawan.wordpress.com 04Nov2010

(31)

KAMUS DATA i,j,k : Integer BEGIN

k  1

Input(i)

While(i >= 1) k  k*i

i  i - 1 End While

Output(k)

END

SOURCE CODE: #include <stdio.h> #include <stdlib.h> int main()

{ int i,j,k=1;

printf("faktorial dari : "); scanf("%d",&i);

printf("\n!%d = ",i);

while(i >= 1) {

printf("%d",i); if (i != 1) printf(" * ");

k=k*i;

i = i - 1; }

printf(" = %d\n",k);

system("PAUSE");

http://awanrimbawan.wordpress.com 04Nov2010

(32)

return 0; }

19.

Soal: Gaji Karyawan

Buatlah sebuah program untuk menghitung gaji n karyawan, n merupakan sebuah bilangan bulat yang akan diinputkan oleh user, kemudian akan dihitung gaji perkaryawan dengan ketentuan sebagai berikut :

Gaji per jam : Rp

10.000,-Bila jam kerja > 7 jam, maka sisa jam kerja dihitung sebagai lembur yg besarnya 1.5 * gaji per jam

Kemudian ditampilkan total gaji karyawan yang harus dibayarkan oleh perusahaan.

Jumlah jam kerja tiap karyawan akan diinputkan oleh user Contoh inputan

Jumlah karyawan : 3 [inputan user] Jam kerja karyawan 1 : 8 [inputan user] Total Gaji : 85000

Jam kerja karyawan 2 : 6 [inputan user] Total Gaji : 60000

Jam kerja karyawan 3 : 12 [inputan user] Total Gaji : 145000

Total Gaji karyawan : 290000

ALGORITMA Faktorial

KAMUS DATA i,j,k : Integer BEGIN

iTotalGaji  0 input(iKaryawan)

For (i1 ; i <= iKaryawan ; i++) Output("jam kerja karyawan: ") Input(iJam)

If (iJam > 7) Then

iLembur  iJam - 7

iGaji  7 * 10000 + iLembur * 1.5 * 10000 Else

iGaji = iJam * 10000 End If

Output(iGaji)

iTotalGaji  iTotalGaji + iGaji End For

http://awanrimbawan.wordpress.com 04Nov2010

(33)

Output(iTotalGaji) END

SOURCE CODE: #include <stdio.h> #include <stdlib.h> int main()

{ int i,iKaryawan,iJam,iLembur,iGaji,iTotalGaji=0;

printf("jml karyawan: "); scanf("%d",&iKaryawan); for (i=1;i<=iKaryawan;i++){

printf("\njam kerja karyawan %d: ",i); scanf("%d",&iJam);

if (iJam > 7){

iLembur = iJam - 7;

iGaji = 7 * 10000 + iLembur * 1.5 * 10000; }else{

iGaji = iJam * 10000 ; }

printf("Gaji karyawan %d \n",iGaji);

iTotalGaji = iTotalGaji + iGaji; }

printf("\nGaji karyawan %d: ",iTotalGaji);

http://awanrimbawan.wordpress.com 04Nov2010

(34)

system("PAUSE"); return 0;

}

20. Buatlah program untuk menampilkan angka seperti

berikut :

Contoh inputan :

Jumlah angka : 5 1 5

2 4 3 2 4 1 5

Jumlah angka : 6 1 6

2 5 34 34 2 5 1 6

Jumlah angka : 9 1 9

2 8 3 7 4 6 5 4 6 3 7 2 8 1 9

ALGORITMA Bintang_x

KAMUS DATA

i,j,k,l,m : Integer BEGIN

Output("mmasukkan angka : ") Input(k)

l  1 m  k;

For (i  1; i<=k ; i++)

For (j  1 ; j<=k ; j++)

http://awanrimbawan.wordpress.com 04Nov2010

(35)

If (i = j or j = m) Then Output(j)

Else

Output(" ") End If End For

Output("\n") m--

End For END

SOURCE CODE: #include <stdio.h> #include <stdlib.h> #include <conio.h> int main()

{ int i,j,k,l,m;

printf("mmasukkan angka : "); scanf("%d",&k);

l=1; m=k;

for (i=1;i<=k;i++){

for(j=1; j<=k; j++){ if (i==j or j==m)

printf("%d",j); else

printf(" "); }

printf("\n"); m-- ; }

system("cls");

system("PAUSE");

http://awanrimbawan.wordpress.com 04Nov2010

(36)

return 0; }

21. Soal: Bintang Ketupat

Buatlah program untuk menampilkan bintang berbentuk belah ketupat seperti berikut :

Contoh inputan :

Jumlah bintang : 5 *

* * * * * * *

Jumlah bintang : 6 **

* * * * * * * * **

Jumlah bintang : 9 *

* * * * * * * * * * * * * * *

ALGORITMA Bintang_Ketupat

KAMUS DATA

i,j,k,l,m,input,tengah : Integer BEGIN

m  0

Output("masukkan angka: ") Output(input)

k  input / 2 l  input % 2

tengah  k + l

http://awanrimbawan.wordpress.com 04Nov2010

(37)

For (i 1; i<=input; i++)

For(m  0; m<=tengah; m++) If (i=m+1 || i=input-m)

For(j1; j<=input; j++) If (l) Then

If (j = tengah-m || j = tengah+m) Then

Output(*) Else

Output(" ")

End If Else

If (j = tengah-m || j = tengah+m+1) Then

Output (*) Else

Output (" ") End If End If

End For End If

End For

Output("\n") End For

END

SOURCE CODE: #include <stdio.h> #include <stdlib.h> int main()

{ int i,j, k, l,m=0,input,tengah; printf("masukkan angkaa: "); scanf("%d",&input);

k=input / 2; l=input % 2;

tengah=k+l;

for (i=1;i<=input;i++){

for(m=0;m<=tengah;m++){ if(i==m+1 || i==input-m){ for(j=1; j<=input; j++){ if(l){

if (j==tengah-m || j==tengah+m) printf("*");

else

printf(" "); }else{

if (j==tengah-m || j==tengah+m+1) printf("*");

else

http://awanrimbawan.wordpress.com 04Nov2010

(38)

printf(" "); }

} } }

printf("\n"); }

system("PAUSE"); return 0;

}

22. Soal:

Buatlah algoritma yang menginputkan 4 bilangan

yang merupakan nilai ujian mahasiswa, serta mencetak

nilai tertinggi yang didapat mahasiswa.

ALGORITMA Input_nilai1 KAMUS DATA

N, Max, i : Integer BEGIN

Input(N) Max  N i  2

While ( i <= 4) Input(N)

If (N > Max) Then Max  N End If

i++ End While Output(i) END

http://awanrimbawan.wordpress.com 04Nov2010

(39)

23. Soal:

Buatlah algoritma yang menginputkan 7 bilangan

yang merupakan nilai ujian mahasiswa, mencetak nilai

tertinggi yang didapat mahasiswa dan juga mencetak

berapa orang yang mendapat nilai tertinggi tersebut.

Misal bilangan yg diinput: 72 80 80 92 95 87 95 Nilai Tertinggi: 95

Jumlah: 2

ALGORITMA Nilai2 KAMUS DATA

N, Max, i, Jumlah : Integer BEGIN

Input(N) Max  N i  2

While ( i <= 7) Input(N)

If (N > Max) Then Max  N Jumlah  1 Else if ( N = Max ) Jumlah++ End If

i++ End While Output(Max) Output(Jumlah) END

http://awanrimbawan.wordpress.com 04Nov2010

(40)

24. Soal:

Buatlah algoritma yang menginputkan 10

bilangan yang merupakan nilai ujian mahasiswa,

kemudian mencetak nilai tertinggi dan nilai terendahnya.

ALGORITMA Input_nilai3 KAMUS DATA

N, Max, Min, i : Integer BEGIN

Input(N) Max  N Min  N i  2

While (i <= 10) Input(N)

If (N > Max) Then Max  N Else If (N < Min)

Min  N End If

i++ End While Output(Max) Output(Min) END

25. Soal:

Buatlah algoritma yang menginputkan sebuah

bilangan bulat yang merupakan nilai ujian. Apabila nilai

yang diinput < 0 atau > 100 maka ulangi menginput data.

http://awanrimbawan.wordpress.com 04Nov2010

(41)

Bila nilainya berada dalam batas 0-100, maka periksa nilai

tersebut. Bila nilainya >= 60 maka cetak perkataan

“LULUS”, selainnya cetak perkataan “COBA LAGI TAHUN

DEPAN”.

ALGORITMA Input_nilai4 KAMUS DATA

nilai : Integer BEGIN

nilai  -1

While ( nilai < 0 Or nilai > 100)

Output(“Masukkan nilai Ujian (0-100):”) Input(nilai)

End While

If (nilai >= 60) Then Output(“LULUS”) Else

Output(“Coba Lagi Tahun Depan”) End If

END

26. Soal:

Buatlah algoritma yang menginputkan sebuah

bilangan bulat yang merupakan nilai ujian. Apabila nilai

yang diinput < 0 atau > 100 maka cetak perkataan “Data

salah, silahkan ulangi lagi” dan ulangi menginput data.

Bila nilainya >= 60 maka cetak perkataan “LULUS”,

selainnya cetak perkataan “COBA LAGI TAHUN DEPAN”.

Gunakan format Do While

ALGORITMA Input_nilai5 KAMUS DATA

nilai: integer BEGIN

Do

Output(“Masukkan nilai (0-100):”) Input(nilai)

If (nilai<0 Or nilai>100)

Output(“Data salah, silahkan ulangi lagi”) End If

While(nilai<0 Or nilai>100) If (nilai>=60) Then

Output(“LULUS”) Else

Output(“Coba lagi tahun depan”) End If

END

27. Soal:

Dalam lembar dokumen tersedia banyak sekali

data berupa bilangan-bilangan integer. Susun algoritma

untuk

menginput

data-data

tersebut

dan

http://awanrimbawan.wordpress.com 04Nov2010

(42)

menjumlahkannya. Kondisi berhenti adalah ketika jumlah

dari data tersebut sudah melebihi 1000. Cetak berapa

banyak bilangan yang diinputkan.

Cth:

Data Input: 300, 300, 500 Output: 3

Data Input: 200, 400, 100, 200,100,1 Output: 6

ALGORITMA Input_jumlah KAMUS DATA

nilai,i,jumlah : integer BEGIN

jumlah  0 i  0

While ( jumlah <= 1000) Output(“Input Nilai”) Input(nilai)

jumlah  jumlah + nilai i++

End While Output(i) END

28. Soal:

Buat algoritma untuk menghitung rata-rata nilai

mahasiswa. Berapa banyak nilai mahasiswa tidak

diketahui. Kondisi berhenti adalah ketika diinputkan nilai

999 yang pasti bukan merupakan nilai ujian.

Misal data yang ada: 60, 50, 999, 65, 75, 999 Maka rata-ratanya: (60+50+70+65+75) / 5 = 64 Note: data bisa berupa n bilangan (n tidak diketahui) ALGORITMA Rata_rata

KAMUS DATA

nilai, jumlah, banyak, ratarata : Integer BEGIN

banyak  0 jumlah  0 Input(nilai)

While (nilai <> 999)

jumlah  jumlah + nilai banyak++

Input(nilai) End While

ratarata  jumlah/banyak Output(ratarata)

END

http://awanrimbawan.wordpress.com 04Nov2010

(43)

29.

Buatlah algoritma yang menentukan apakah sebuah

bilangan genap atau ganjil. Bilangan diinputkan oleh user.

Jika genap maka cetak perkataan “Even”, jika ganjil maka

cetak perkataan “Odd”. Susun algoritma pengecekan

genap atau ganjil ini tidak menggunakan Mod tetapi

menggunakan loop

ALGORITMA Genapganjil_loop KAMUS DATA

nilai, BEGIN

Output(“Inputkan sebuah nilai: ”) Input(nilai)

While (nilai > 0) nilai  nilai - 2 End While

If (nilai = 0)

output(“Even”) Else

output(“Odd”) End If

END

30.

Buat algoritma yang inputannya sebuah bilangan.

Kemudian menentukan apakah bilangan tersebut adalah

bilangan prima atau bukan.

http://awanrimbawan.wordpress.com 04Nov2010

(44)

ALGORITMA cekprima KAMUS DATA

nilai, x, batasatas, penanda: Integer BEGIN

Input(nilai) x  2

batasatas  nilai – 1 penanda  0

While (penanda = 0 And x <= batasatas) If (nilai Mod x = 0) Then

penanda  1 End If

x  x+1 END WHILE

If (penanda = 0) Then Output(“prima”) Else

Output(“bukan prima”) End If

END

31.

Buat Algoritma yang menginput sebuah bilangan bulat

yang menyatakan waktu dalam detik. Kemudian

konversikan dan cetak waktu itu dalam satuan Jam, Menit,

Detik.

Cth:

Input: 7405

Output: 2 Jam, 3 Menit, 25 Detik Note:

Gunakan mekanisme loop untuk menentukan jam dan menit. Untuk mendapatkan jam kurangi terus menerus detik dengan 3600, sampai nilainya < 3600. Setiap detik dikurangi 3600 maka Jam bertambah 1. Untuk mendapatkan menit kurangi terus detik dengan 60, sampai nilainya < 60. Setiap detik dikurangi 60 menitnya ditambah 1.

ALGORITMA UbahDetik KAMUS DATA

J, M, D: Integer BEGIN

Input(D) J 0 M  0

While (D >= 3600) D  D – 3600 J ++

End While

While (D >= 60)

http://awanrimbawan.wordpress.com 04Nov2010

(45)

D  D – 60 M++ End While Output(J,M,D) END

32.

Buat algoritma yang menampilkan deret: 1 2 3 5 8 13

21....

ALGORITMA BuatDeret KAMUS DATA

J, M, D: Integer BEGIN

a1 b1 i1

Input(banyak) Output(b)

While ( i < banyak) c  a + b Output(c) a b b  c i++ End While End

33.

Dalam sebuah kandang ada 1000 bebek. Setiap akhir

bulan bebek tersebut serempak melahirkan satu bebek

baru. Namun sebelum melahirkan, 20% dari bebek

tersebut mati. Susun program untuk menghitung dan

mencetak jumlah bebek setelah 10 bulan.

ALGORITMA HitungBebek KAMUS DATA

http://awanrimbawan.wordpress.com 04Nov2010

(46)

I, M, T : Integer BEGIN

T1000 I1

While ( I <= 10) M  T * 0.2 T  T – M T  T * 2 I++ End While Output(T) End

34.

Sebuah truk bergerak dari Kota Malang ke Pulau

Sempu. Pada Km pertama ia menghabiskan 10kg bahan

bakar. Pada Km ke 2 ia menghabiskan 8kg bahan bakar

(atau 80% dibanding Km pertama). Demikian seterusnya

setiap Km sebelumnya. Susun algoritma untuk

menghitung dan mencetak total bahan bakar yang

dihabiskan setelah mencapai 100km.

ALGORITMA HitungBahanBakar KAMUS DATA

i: Integer n,t: Float BEGIN

t0 n10 i1

While ( i <= 100) t  t + n n  n*0.8 i++ End While Output(t) End

35.

Seseorang menyimpan uang 1.000.000 di bank dengan

bunga 2% perbulan. Jadi setelah satu bulan uangnya

menjadi 1.020.000. satu bulan berikutnya uang 1.020.000

http://awanrimbawan.wordpress.com 04Nov2010

(47)

ini mendapat bunga lagi 2% sehingga setelah 2 bulan

uangnya menjadi 1.020.000 + 20.400 = 1.040.400. Buat

algoritma untuk menghitung dan mencetak jumlah uang

setelah 10bulan.

ALGORITMA HitungBunga1 KAMUS DATA

u, b: Float i: Integer BEGIN

u1000000 i1

While ( i <= 10) b  U * 0.02 u  u + b i++ End While Output(u) End

36.

Seseorang mengendarai mobil dengan kecepatan tetap.

Tepat pukul 08:25:10 pagi kecepatannya masih tetap 5 m/

detik. Tetapi sepuluh menit kemudian, kecepatannya

dinaikkan 1 m/detik sehingga kecepatannya menjadi tetap

6 m/detik. Demikian 10 menit berikutnya kecepatannya

selalu dinaikkan 1 m/detik. susun algoritma untuk

menghitung jarak yang ditempuhnya sejak pukul 08:25:10

sampai jam tepat menunjukkan 10:00:00 pagi pada hari

yang sama.

ALGORITMA HitungJarak KAMUS DATA

Jam1, Jam2, JumWaktu, Interval, SisaWaktu, V, TS, I: Integer BEGIN

Jam1  8*3600 + 25*60 + 10 Jam2  10*3600

JumWaktu Jam2 – Jam1 Interval  10 * 60

JumInterval  JumWaktu Div Interval SisaWaktu  JumWaktu Mod Interval V5

TS 0 I1

While ( I <= JumInterval) S  Interval * V

http://awanrimbawan.wordpress.com 04Nov2010

(48)

TS  TS + S V  V+1 I++ End While

TS  TS + (SisaWaktu * V) Output(TS)

End

37.

Ali berangkat dari titik A menuju titik B tepat pukul

08:00 dengan kecepatan tetap 5 m/detik. Badu juga

berangkat dari titik A menuju titik B tepat pukul 09:00

dengan kecepatan tetap 8 m/detik. Buat algoritma untuk

menghitung dan mencetak pada pukul berapa Ali dan

Badu tepat berada pada titik yang sama dimana Badu

mulai akan mendahului Ali.

ALGORITMA Balapan KAMUS DATA

JamBerangkatBadu,JarakAli,JarakBadu,JamBertemu: Integer t, jam,menit,detik: Integer

BEGIN

JamBerangkatBadu  9*3600 t 1

JarakBadu 0 JarakAli 3600*5

While ( JarakBadu < JarakAli) JarakAli  JarakAli + 5 JarakBadu  JarakBadu + 8 t++

End While

JamBertemu  JamBerangkatBadu + t jam  JamBertemu Div 3600

detik  JamBertemu Mod 3600

http://awanrimbawan.wordpress.com 04Nov2010

(49)

menit  detik Div 60 detik  detik Mod 60 Output(jam, menit,detik) End

38.

Ali berangkat dari titik A menuju titik B yang berjarak

100km dengan kecepatan tetap 10 m/detik. Tetapi setelah

10menit kemudian, kecepatannya menjadi 11 m/detik.

Demikian setelah 10 menit berikutnya kecepatan konstan

dengan lebih cepat 1 m/detik dibandingkan 10 menit

sebelumnya. Buat algoritma yang menghitung dan

mencetak berapa lama Ali menempuh perjalanan (dalam

Jam, Menit dan Detik) dari titik A sampai titik B.

ALGORITMA BuatDeret KAMUS DATA

V, Detik, Jarak: Integer BEGIN

V10 Detik 0 Jarak0

While ( Jarak < 100000) Detik++

Jarak  Jarak + V

If (Detik Mod 600 = 0) Then V++

End If End While

Jam  Detik Div 3600 Detik  Detik Mod 3600

http://awanrimbawan.wordpress.com 04Nov2010

(50)

Menit  Detik Div 60 Detik  Detik Mod 60 Output(Jam, Menit, Detik) End

39.

Jika user memasukkan angka 5 Apa Output dari

algoritma berikut?

ALGORITMA loop1 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For (i 0 ; i<n ; i++) For(j0; j<n; j++) Output(i+1) End For

Output("\n\n") {ganti baris} End For

End

40.

Jika user memasukkan angka 5 Apa Output dari

algoritma berikut?

ALGORITMA loop2 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For (i 0 ; i<n ; i++) For(j0; j<n; j++) Output(j+1) End For

Output("\n\n") {ganti baris} End For

End

41.

Jika user memasukkan angka 4 Apa Output dari

algoritma berikut?

ALGORITMA loop3 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For (i 0 ; i<n ; i++)

http://awanrimbawan.wordpress.com 04Nov2010

(51)

For(j0; j<n-i; j++) Output(i+1) End For

Output("\n\n") {ganti baris} End For

End

42.

Jika user memasukkan angka 4 Apa Output dari

algoritma berikut?

ALGORITMA loop4 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For (i 0 ; i<n ; i++) For(j0; j<n-i; j++) Output(j+1) End For

Output("\n\n") {ganti baris} End For

End

43.

Jika user memasukkan angka 6 Apa Output dari

algoritma berikut?

ALGORITMA loop5 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For (i 0 ; i<n ; i++) For(j0; j < i+1; j++) Output(i+1) End For

Output("\n\n") {ganti baris} End For

End

44.

Jika user memasukkan angka 6 Apa Output dari

algoritma berikut?

ALGORITMA loop6 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For (i 0 ; i<n ; i++)

http://awanrimbawan.wordpress.com 04Nov2010

(52)

For(j0; j < i+1; j++) Output(j+1) End For

Output("\n\n") {ganti baris} End For

End

45.

Jika user memasukkan angka 5 Apa Output dari

algoritma berikut?

ALGORITMA loop7 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For(i0; i<n; i++)

For(j0; j<n; j++) If ( (i = j) || (i+j = n-1) ) Then Output(i+1)

Else

Output(" ")

End If End For

Output("\n") End For

End

46.

Jika user memasukkan angka 5 Apa Output dari

algoritma berikut?

ALGORITMA loop8 KAMUS DATA

http://awanrimbawan.wordpress.com 04Nov2010

(53)

I,j,n: Integer BEGIN

Input(n)

For(i0; i<n; i++)

For(j0; j<n; j++) If ( (i = j) || (i+j = n-1) ) Then Output(j+1)

Else

Output(" ")

End If End For

Output("\n") End For

End

47.

Jika user memasukkan angka 5 Apa Output dari

algoritma berikut?

ALGORITMA loop9 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For(i0; i<n; i++)

For(j0; j<n-1; j++) If ( (i = j) || (i+j = n-1) ) Then Output(i+1)

Else

Output(" ")

End If End For

Output("\n") End For

End

48.

Jika user memasukkan angka 5 Apa Output dari

algoritma berikut?

ALGORITMA loop10

http://awanrimbawan.wordpress.com 04Nov2010

(54)

KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For(i0; i<n; i++)

For(j0; j<n-1; j++) If ( (i=j) || (i+j = n-1) ) Then Output(j+1)

Else

Output(" ")

End If End For

Output("\n") End For

End

49.

Jika user memasukkan angka 4 Apa Output dari

algoritma berikut?

ALGORITMA loop11 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For(i0; i<n; i++)

For(j0; j<n; j++)

If (i+j = n-1) Then Output(i+1) Else

Output(" ")

End If End For

Output("\n") End For

End

50.

Jika user memasukkan angka 4 Apa Output dari

algoritma berikut?

http://awanrimbawan.wordpress.com 04Nov2010

(55)

ALGORITMA loop12 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For(i0; i<n; i++)

For(j0; j<n; j++) If (i+j = n-1) Then

Output(j+1) Else

Output(" ")

End If End For

Output("\n") End For

End

51.

Jika user memasukkan angka 4 Apa Output dari

algoritma berikut?

ALGORITMA loop13 KAMUS DATA

I,j,n: Integer BEGIN

Input(n)

For(i0; i<n; i++)

For(j0; j<n; j++)

If (i=j) Then Output(i+1) Else

Output(" ")

End If End For

Output("\n") End For

End

http://awanrimbawan.wordpress.com 04Nov2010

(56)

52.

http://awanrimbawan.wordpress.com 04Nov2010

Referensi

Dokumen terkait

Unsur yang dapat menunjukkan bilangan oksidasi paling positif dalam senyawanya adalah ..... Asam konjugasi dari

Buatlah deklarasi type bentukan untuk DATE dalam bentuk fungsional dan prosedural1. Buatlah konstruktor dari DATE dalam bentuk fungsional

1) Buatlah algoritma yang membaca sebuah bilangan bulat positif lalu menentukan apakah bilangan tersebut merupakan kelipatan 4. Kemudian, translasikan algoritma tersebut

Statement pengulangan digunakan untuk mengerjakan suatu pernyataan yang dilakukan berulang-ulang sesuai jumlah pengulangan yang diinginkan atau sesuai dengan kondisi atau

Buatlah listing program PASCAL untuk menghitung Total Gaji yang diterima pegawai tersebut jika data yang diinputkan adalah Gaji Pokok dan Jumlah Jam

• Dalam menggunakan sintaks FOR untuk pengulangan maka pemrogram harus mendefinisikan nilai awal dan nilai akhir pencacah yang menunjukkan jumlah iterasi. • Struktur

Soal Pilihan Ganda Penggunaan Alat Ukur Soal Ulangan Dasar - dasar Otomotif TKR Soal UAS Kejuruan Teknik Kendaraan Ringan. ►  April (1) ►

1) Buatlah algoritma yang membaca sebuah bilangan bulat positif lalu menentukan apakah bilangan tersebut merupakan kelipatan 4. Kemudian, translasikan algoritma