Anda di halaman 1dari 10

Nama Anggota Kelompok: Neike Merlia Elsa Jaka Rizky Pratama Krestear Oktaviana Nasrudin Pian Agung Milyardi

yardi Kelas : IF C / II 1. Buatlah Algoritma yang membaca sembarang karakter dan mencetaknya ke layar. Buatlah algoritmanya untuk dua kasus: a) Jumlah karakter yang dibaca diketahui, yaitu N buah (baca N terlebih dahulu) ALGORITMIK : ALGORITMA Cetak_Karakter_SmpaiN {Jmlh krkter yg dibaca diketahui} DEKLARASI a : char i, n : integer DESKRIPSI read(n) i= 1 while i < = n do read (a) write (karakter = , a) writeln( ) i i+1 endwhile }

C++ :
#include<iostream.h> #include<conio.h> void main() { char a ; int i, n; cout<<"masukan n = "; cin>>n; i=1; while(i< = n) { a=getch(); cout<<"karakter = "<<a<<endl; i++; } getch();

1. b) Jumlah karakter yang dibaca tidak diketahui, tetapi proses pembacaan berakhir jika karakter yang dimasukkan adalah karakter titik(karakter titik tidak ikut dicetak) ALGORITMIK : ALGORITMA Cetak_Karakter_SbnyakN {Jmlh krkter yg dibca diketahui tetapi proses brkhr bila titik diinputkan,titik tdk di cetak} DEKLARASI a : char DESKRIPSI while a . do read (a) if a = . break endif. write (karakter = , a) writeln( ) endwhile }

C++ :
#include<iostream.h> #include<conio.h> void main() { char a ; clrscr(); while(a!= '.') { a=getch(); if(a== '.') { break; } cout<<"karakter = <<a<<endl; }

2. Buatlah algoritma untuk hitung jumlah N buah bilangan ganjil pertama (yaitu, 1+3+5+). Catatan: N adalah bilangan bulat tidak negatif. ALGORITMIK : ALGORITMA Hitung_BilGanjil_SebanyakN DEKLARASI N, i, jumlah : integer DESKRIPSI read(N) N N*2 Jumlah 0 i1 while i < =N jumlah jumlah + i i i+2 endwhile write(jumlah)

C++ :
#include<iostream.h> #include<conio.h> main() { int N, i, jumlah; cout<<"masukan N = "; cin>>N; N=N*2; jumlah = 0; i = 1; while(i<=N) { jumlah=jumlah+i; i=i+2; } cout<<"jumlah = "<<jumlah; getch(); }

3. Buatlah algoritma untuk menghitung jumlah bilangan ganjil dari 1 sampai N (yaitu, 1+3+5++N) . ALGORITMIK : ALGORITMIK : ALGORITMA Hitung_BilGanjil_SebanyakN DEKLARASI N, i, jumlah : integer DESKRIPSI read(N) Jumlah 0 i1 while i < =N jumlah jumlah + i i i+2 endwhile write(jumlah) }

C++ :
#include<iostream.h> #include<conio.h> main() { int N, i, jumlah; cout<<"masukan N = "; cin>>N; jumlah = 0; i = 1; while(i<=N) { jumlah=jumlah+i; i=i+2; } cout<<"jumlah = "<<jumlah<<endl; getch();

4. Tuliskan program pascal dan c untuk mencetak gambar segitiga bintang sebanyak N baris, setiap baris ke-i berisi i buah bintang. Nilai N dibaca dari papan kunci. Contoh : Masukan N = 5 Keluaran : * ** *** **** ***** ALGORITMIK : // Menggunakan C++: ALGORITMA Cetak_Bintang DEKLARASI i, j, N : Integer DESKRIPSI read(n) for i = 1 to N do for j = 1 to i do write(*) endfor writeln() endfor. #include<iostream.h> #include<conio.h> main() { int i,j, N; cout<<"masukan N = "; cin>>N; cout<<endl; for(i=1; i<=N; i++) { for(j=1; j<=i; j++) { cout<<"*"; } cout<<endl; } getch(); } // Menggunakan pascal : Program bintang; Uses crt; Var i, j, N : Integer ; Begin clrscr(); write(masukan N = ); readln (N); writeln; for i:=1 to N do Begin for j:=1 to i do write(*); writeln; End; readln; End.

C++ :

PASCAL :

5. Tuliskan algoritma untuk menampilkan semua solusi bilangan bulat tidak negative dari persamaan berikut : x + y + z = 25 yang dalam hal ini, x >= 0, y >= 0, dan z >= 0. ALGORITMIK : ALGORITMA MenampilkanBil_dariPers DEKLARASI x, y, z : integer DESKRIPSI For x = 0 to 25 do For y = 0 to 25 do For z = 0 to 25 do if x + y + z = 25 then write(x,+, y ,+, z = 25) endif. endfor endfor endfor.

C++ :
#include<iostream.h> #include<conio.h> void main() { int x, y, z; clrscr(); for(x=0; x<=25; x++) { for(y=0; y<=25; y++) { for(z=0; z<=25; z++) { if(x+y+z==25) cout<<x<<" + "<<y<<" + " <<z<< " = 25 "<<endl; } } } getch(); }

6. Buatlah algoritma yang akan mengonversi bilangan bulat positif ke angka romawinya. Rancanglah algoritma tersebut sehingga pengonversian tersebut dapat dilakukan berulangkali sampai nilai nol dibaca dari piranti masukan. ALGORITMIK : Algoritma Cetak_Romawi Deklarasi Bil : integer Deskripsi while bil 0 do read ( bil ) case bil 1 : write (I) 2 : write (II) 3 : write (III) 4 : write (IV) 5: write (V) 6 : write (VI) 7 : write (VII) 8 : write (VIII) 9 : write (IX) 10 : write (X) endcase. Endwhile.

C++ :
#include <iostream.h> #include <conio.h> void main() { int bil; clrscr(); while(bil!=0) { cout<<"masukan pilihan [1..10] :"; cin>>bil; switch(bil) { case 1 :cout<<"I"<<endl;break; case 2 :cout<<"II"<<endl;break; case 3 :cout<<"III"<<endl;break; case 4 :cout<<"IV"<<endl;break; case 5 :cout<<"V"<<endl;break; case 6 :cout<<"VI"<<endl;break; case 7 :cout<<"VII"<<endl;break; case 8 :cout<<"VIII"<<endl;break; case 9 :cout<<"IX"<<endl;break; case 10:cout<<"X"<<endl;break; } } }

7. Seseorang mempunyai tabungan di sebuah bank. Ia dapat menyetor dan mengambil uangnya di bank tersebut, namun jumlah saldo minimum yang harus disisakan di dalam adalah Rp.10000, ia tidak dapat mengambil uang lagi. Ini artinya, jika saldonya Rp.10000, ia tidak dapat mengambil uang lagi. Kode transaksi untuk menyetor adalah 0 dan kode transaksi untuk mengambil adalah 1. Buatlah algoritma yang menyimulasikan transaksi yang dilakukan orang tersebut. Algoritma menerima masukan berupa kode transaksi dan jumlah uang yang disetor/ diambil. Rancanglah algoritma tersebut sehingga memungkinkan penabung dapat melakukan transaksi berulangkali sampai saldo yng tersisa Rp.10000 atau jumlah uang yang diambil lebih besar dari saldonya. Catatan : nilai uang yang diambil selalu merupakan bilangan bulat. ALGORITMIK : ALGORITMA Transaksi DEKLARASI lagi : char kode, saldo, jumsaldo : integer DESKRIPSI read(jumsaldo) repeat write (saldo Anda Saai ini, jumsaldo) write(kode transaksi) write(0 untuk menyetor) write(1 untuk mengambil) read (kode) case kode 0 : read (saldo) jumsaldo jumsaldo + saldo write (jumsaldo) 1: read (saldo) if saldo < jumsaldo then jumsaldo jumsaldo saldo write (jumsaldo) else if saldo > = jumsaldo then saldo jumsaldo -10000 write (max pengambilan, saldo) endif. endcase. read (lagi) until (lagi = y && jumsaldo>10000)

C++ :
#include<iostream.h> #include<conio.h> main() { char lagi; int kode, saldo, jumsaldo; cout<<"Masukan Jumlah Saldo Anda :"; cin>>jumsaldo; do { clrscr(); cout<<"Saldo Anda Saat Ini Rp. <<jumsaldo<<endl; cout<<"~~~~~~~~~~~~~~~~~~~"<<endl; cout<<"kode transaksi"<<endl; cout<<"0 untuk Menyetor "<<endl; cout<<"1 untuk Mengambil"<<endl; cout<<"~~~~~~~~~~~~~~~~~~~"<<endl; cout<<"masukan kode transaksi : "; cin>>kode; switch(kode) { case 0:{ cout<<"saldo = ";cin>>saldo; jumsaldo = jumsaldo + saldo; cout<<"Saldo Anda Saat Ini Rp. " <<jumsaldo<<endl; getch(); break; } case 1:{ cout<<"saldo : ";cin>>saldo; if(saldo<jumsaldo) { jumsaldo = jumsaldo - saldo;

cout<<"Saldo Anda Saat Ini : Rp. "<<jumsaldo<<endl; } else if(saldo>=jumsaldo) { saldo = jumsaldo - 10000; cout<<"Maximal Pengambilan Rp. " <<saldo<<endl; getch(); } getch(); break; } } cout<<"Anda Ingin Melakukan Transaksi Lagi [y/t] :" ;cin>>lagi; } while(lagi=='y' && jumsaldo>10000); getch(); }

Anda mungkin juga menyukai