Diktat
(Workshop Pemrograman)
Latihan 1
1. Cetaklah
bilangan 1 sampai dengan 4 menggunakan downto.
Algoritma :
C++:
Deklarasi :
i : integer
Deskripsi :
For i ← 4 to 0 do
Write (i)
Endfor
Inilah Programnya :
2.
buatlah
translasi dalam bahasa C untuk algoritma 4.5. Apakah diperlukan modifikasi
algoritma
?
Algoritma :
C++ :
Inilah Programnya :
Inilah Outputnya :
Raptor :
Inilah Programnya :
Inilah Outputnya :
3.
Buatlah algoritma dan program untuk mencetak bilangan yang habis dibagi 3 dan 5Algoritma :
Deklarasi
Hari_ke :int;
Hari :string;
Deskripsi
Read (hari_ke)
Pilih(hari_ke)untuk
1 : hari ←
|senin|;
2: hari ←
|selasa|;
3: hari ←
|Rabu|;
4: hari ←
|Kamis|;
5: hari ←
|Jumat|;
6: hari ←
|Sabtu|;
7: hari ←
|Minggu|;
End{pilih}
Write{hari}
C++ :
Inilah Programnya :
Inilah Outputnya :
Raptor :
Inilah Programnya :
Inilah Outputnya :
antara
1 sampai dengan 100.
Algoritma :
4.
Hitunglah nilai dari :Algoritma :
Deklarasi
i :
integer {bilangan 1
sampai dengan 100}
Deskripsi
Read i
I ß 1 sampai dengan 100
for (int i=1; i<=100; i++)
if (i mod 3==0)
Write i
Else (i mod 5==0)
Write i
I ß 1 sampai dengan 100
for (int i=1; i<=100; i++)
if (i mod 3==0)
Write i
Else (i mod 5==0)
Write i
C++:
Inilah Programnya :
Inilah Outputnya :
Raptor:
Inilah Programnya :
Inilah Outputnya :
1
1 1 1 12
3
4 n
5.
Buatlah algoritma dan program untuk menghitung nilai dari permutasi dan
kombinasi n
buah
bola yang diambil r bola.
Petunjuk
:
Rumus
permutasi dan kombinasi adalah sebagai berikut :
(
, ) !
(
)!
P
n r n
n
r
dan
( , ) !
!(
)!
C
n r n
r
n r
6.
Buatlah algoritma dan program untuk mengkonversi bilangan desimal menjadi
bilangan
Algoritma :
Deklarasi
hasil,n,k : integer
proses[2],yesno[2];
character
. Deskripsi
Read(n,k)
if(n<k)
then write("Nilai n
tidak boleh lebih kecil dari k")
else
write"(Pilih P
(permutasi) atau C (kombinasi))"
if(proses[0]=='p' ||
proses[0]=='P')
hasil =
faktorial(n)/faktorial(n-k);
then write("\n
\n")
then
write(n,"P",k," : ",hasil)
else if (proses[0]=='c'
|| proses[0]=='C')
hasil =
faktorial(n)/(faktorial(k) * faktorial(n-k));
then write("\n
\n")
then
write(n,"C",k," : ",hasil)
else
then
write("\n\tAnda tidak memilih P atau C")
then
write("\n\tIngin mengulang? <y/n> ")
Read(yesno[0])
if
(yesno[0]=='Y'||yesno[0]=='y')
Y=1
else if
(yesno[0]=='N'||yesno[0]=='n'||yesno[0]!='Y'||yesno[0]!='y')
Y=0
Inilah Programnya :
Inilah Outputnya :
biner.
Petunjuk : Gunakan operator mod dan div !
Algoritma :
Deklarasi
desimal, pembagi, bit :
long
pembagi=1073741824
Deskripsi
Read(desimal)
while(pembagi>desimal)pembagi/=2
do
bit=desimal/pembagi
then write(bit)
desimal=desimal%pembagi
pembagi/=2;
while(pembagi>=1)
write("\n")
Inilah Programnya :
Inilah Outputnya :
Misalnya
diberikan : abc
output
:
abc
bca
2.
Buatlah
fungsi fibonacci dengan 2 cara rekursif yang lain.
Inilah Programnya :
Cara 1 =
Inilah Outputnya :
Cara 2 =
Inilah Programnya :
Inilah Outputnya :
Inilah Programnya :
Cara 1 =
Inilah Outputnya :
Cara 2 =
Inilah Programnya :
Inilah Outputnya :
3.
Algoritma
perkalian dengan cara penjumlahan pada algoritma 5.3. belum sempurna karena
belum mencakup semua kemungkinan, misalnya untuk harga b negatif. Buatlah fungsi
perkalian dengan cara penjumlahan dengan menyempurnakan algoritma 5.3. di atas.
Inilah Programnya :
Inilah Outputnya :
5.
Diberikan suatu bilangan bulat positif. Cetaklah bilangan bulat tersebut secara
terbalik, secara
iteratif maupun rekursif.Inilah Programnya :
Inilah Outputnya :
#include
<iostream>
#include
<cstdlib>
using namespace std;
class perulangan{
public :
perulangan() {int i=0;}
void balik_while(int);
void balik_iteratif(int);
void balik_rekursif(int);
private :
int a,b,c,d;
};
void balik(char*s)
{
if(*s !='\0'){
balik(&s[1]);
cout<<s[0];
}
}
main(){
char*balik="balik bilagan";
int a,b;
cout<<"masukan iteratif maupun rekursif
"<<endl;
cin>>a>>b;
cout<<b<<a;
return 0;
}
Inilah Program dan Outputnya :
7. Algoritma 5.5 menggunakan fungsi untuk menghitung n faktorial secara rekursif. Buatlah algoritma menghitung n faktorial dengan menggunakan prosedur !
Inil;ah Programnya & Outputnya :
8. [Pengamatan : membayar barang belanja di kasir] Amatilah kejadian di mana seorang
pembeli
(yang membeli barang cukup banyak) pada sebuah took swalayan. Perhatikan
apa
yang dilakukan pembeli dan apa yang dilakukan oleh kasir ketika mengambil
barang belanjaan untuk menghitung berapa harga keseluruhan yang harus dibayar
pembeli.
Laporkan
konsep counter dan konsep total yang anda temukan pada kejadian tersebut.
Konsep
counter :
a.
b.
c.
Konsep
total :
a.
b.
c.
Langkah
yang dilakukan saat belanja :
a.
mulai : kondisi awal sebelum belanja
b.
proses :kegiatan apa saja yang dilakukan saat belanja
c.
akhir : berapa uang yang diserahkan ke kasir, berapa jumlah barang yang dibeli
beserta jumlah uang yang harus dibayar dan uang kembalian (jika ada).
Inilah Programnya & Outputnya :
9.
[Proyek] Buatlah suatu class yang akan mengeksplorasi kalimat. Kalimat
dapat disimpan dalam bentuk array (kumpulan) karakter.
Inilah Programnya & Outputnya :
a.
masukan user diterima huruf demi huruf sampai diakhiri tanda akhir baris (sentinel)
b.
buat method untuk menghitung statistik :
i.
huruf hidup (vokal)
ii.
huruf mati (konsonan)
iii.
banyak kata
iv.
huruf terbanyak dalam kalimat.
c.
buat method untuk mengubah huruf awal setiap kata menjadi huruf besar
class
Kalimat {
friend
friend
public
:
private
:
};
Operator
overloading input :
Operator
overloading output :
Method
statistik :
Penjelasannya udah bagus, gambarnya aja yg kurang jelas
BalasHapus