Sabtu, 16 April 2016

Refleksi ALPRO minggu 7

13 April 2016 adalah pertemuan alpro yang terakhir sebelum UTS.
pada pertemuan kali ini adalah membahas materi Array. sebelum masuk dalam materi seperti biasa diadakan kuis. masing-masing orang mengerjakan soal kuis dengan menggunakan materi yang dibuka dilaptop masing-masing, karena kuis tersebut setiap orang tidak bekerja sama.
setelah kuis selesai llu Dosen menjelaskan materi tentang Array . kemudian setiap kelompok  diberikan tugas mengerjakan tugas yang terdiri dari buku rujukan, diktat, ppt, dan rencana kuliah. tugas tersebut dikumpulkan ke mentor masing-masing.
sebelum UTS memang banyak tugas yang diberikan mungkin karena mahasiswa agar bisa belajar sambil mengerjakan soal-soal tersebut... semangatt!!!

Jumat, 08 April 2016

Kamis, 07 April 2016

REFLEKSI ALPRO Minggu ke 6

6 April 2016

pada pertemuan yang ke 6 diadakan kuis lagi seperti biasa sebelum masuk ke materi selanjutnya, dalam kuis tersebut disuruh membuat algoritma, akan tetapi saya belum bisa membuat algoritma dengan subprogram karena masih bingung. kedepannya saya akan mencoba memahami materi yang diberikan.
dalam pertemuan minggu ini benar benar sibuk dengan tugas tugas yang diberikan. seperti mengerjakan tugas diktat ebook maupun di slide ppt.
ujian tengah semester yang akan dilaksanakan pada tanggal 18 April 2016, maka saya harus bersungguh sungguh memahami materi dan belajar dengan serius.




DIKTAT BAB 5

BAB 5
PERULANGAN/ LOOP


latihan hal 110 

 
11. cetaklah bilangan 1 sampai dengan 4 menggunakan downto 
          Algoritma menceteak bilanagn 1 sampai 4
{langsung mencetak bilanagn 1 sampai 4}
Deklarasi b=integer
b<1
repeat
 b<=4
b++
write(b)




 2. buatlah translasi dalam bahasa C untuk algoritma 4.5. Apakah diperlukan modifikasi
algoritma ?



1.       Algoritam menentukan hari
{masukkan integer 1 sampai 7, akan ditentukan hari apa yang sesuai}
Deklarasi hari= integer;
Deskripsi
read(hari);
case(hari) of
1:hari<-'senin';
2:hari<-'selasa';
3:hari<-'rabu';
4:hari<-'kamis';
5:hari<-'jumat';
6:hari<-'sabtu';
else hari<-'minggu';
endcase
write(hari)


 3.
Buatlah algoritma dan program untuk mencetak bilangan yang habis dibagi 3 dan 5
antara 1 sampai dengan 100.








4. Hitunglah nilai dari :












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 :

#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
/* Algoritma 5
1. Deklarasi
    hasil,n,k : integer
    proses[2],yesno[2]; character
   
2. 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
   
    Kelompok 4=1500018161*/

int faktorial(int N);

int main(void)

{
int hasil;
int n,k, Y=1;
char proses[2];
char yesno[2];

while(Y) {

cout<<"\tMasukkan nilai n : ";
cin>>n;
cout<<"\tMasukkan nilai k : ";
cin>>k;

if(n<k){
    cout<<"\tNilai n tidak boleh lebih kecil dari k\n";
}
else
{
cout<<"\tPilih P (permutasi) atau C (kombinasi) : ";
cin>>proses[0];
    if (proses[0]=='p' || proses[0]=='P')
    {
    hasil = faktorial(n)/faktorial(n-k);
    cout<<"\n \n";
    cout<<n<<"P"<<k<<" : "<<hasil;
    }
    else if (proses[0]=='c' || proses[0]=='C')
    {
    hasil = faktorial(n)/(faktorial(k) * faktorial(n-k));
    cout<<"\n \n";
    cout<<n<<"C"<<k<<" : "<<hasil;
    }
    else
    cout<<"\n\tAnda tidak memilih P atau C";

    cout<<"\n\tIngin mengulang? <y/n> ";
    cin>>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;
    }
    }
}

int faktorial(int N)
{
int F;
if (N<=1)
{
return(1);
}
else
{
F = N * faktorial(N-1);
return(F);
}
}

Pemutasi 


combinasi






6. Buatlah algoritma dan program untuk mengkonversi bilangan desimal menjadi bilangan
biner. Petunjuk : Gunakan operator mod dan div !
 #include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
/* Algoritma 6
1. Deklarasi
    desimal, pembagi, bit : long
    pembagi=1073741824

3. 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")
  
    Kelompok 4=1500018161 */

int main(int argc, char** argv) {
  
    long desimal, pembagi, bit;
    pembagi=1073741824;
  
    cout<<"\t\t Program Konversi Bilangan Desimal ke Biner"<<endl<<endl;
    cout<<" Masukan bilangan  desimal : ";
    cin>>desimal;
  
    while(pembagi>desimal)pembagi/=2;
    do{
        bit=desimal/pembagi;
        cout<<bit;
        desimal=desimal%pembagi;
        pembagi/=2;
    }
    while(pembagi>=1);
    cout<<"\n";
    return 0;
}





. Buatlah algoritma, flowchart dan program untuk menampilkan permutasi dari 3 huruf.
Misalnya diberikan : abc
output :
abc
bca
bac, dan seterusnya

#include <iostream>
#include <string.h>
#include <conio.h>
#include <stdio.h>
using namespace std;
void masuk(char a[50]);
void keluar(char b[50]);
void identitas();

int main()
 {
  char kata[50];
      cout<<"\nPermutasi dari tiga huruf"<<endl;
      masuk(kata);
      keluar(kata);;
  getch();
 }

void masuk(char a[50]){
   cout<<"\nMasukkan Kata           : ";
  gets(a);
  cout<<endl;

      }

void keluar(char b[50]){
cout<<"\nHasil Pembalikkan kata  :";
  for(int a=strlen(b);a>=0;a--)
   {
    cout<<b[a];
   }
      cout<<endl;
      }

LATIHAN Hal 120-121
1. 1. Buatlah fungsi fibonacci dengan cara iteratif.


#include <iostream>


using namespace std;

int iteratif (int suku, int a, int b, int c)
{
a=0, b=1;
 
if (suku == 1) return b;
if (suku == 0) return a;

else{
for(int i=2; i<=suku; i++){

c = a + b;
a = b;
b = c;
}
return c;
}
}

int main()
{
int suku, a, b,c;

cout<<"Masukkan nilai suku ke-: ";

cin>>suku;
cout<<"\nBilangan fibonaccinya untuk "<<suku<<" adalah ";
cout<< iteratif ( suku,  a,  b,  c);
return 0;
}

 2. Buatlah fungsi fibonacci dengan 2 cara rekursif yang lain.

#include <iostream>
using namespace std;
int nextTerm(int n){
    int firstTerm = 0, secondTerm = 1;
    int nextTerm;
    cout << "Fibonacci Series: " << firstTerm << " " << secondTerm << " ";
    for (int i = 1; i <= n-2; ++i) {
        nextTerm = firstTerm + secondTerm;
        cout<<nextTerm << " ";
        firstTerm = secondTerm;
        secondTerm = nextTerm;
    }
}
int main() {
    int n;
    cout << "Enter number of terms: ";
    cin >> n;
    nextTerm(n);
    return 0;
}


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

#include <iostream>
#include <math.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
    int a,b,i,jumlah=0;
    cout<<"Menghitung Perkalian dengan Penjumlahan"<<endl;
    cout<<"Masukan Nilai pertama = ";cin>>a;
    cout<<"Masukan Nilai Kedua   = ";cin>>b;
    if (a>0 && a<0 || b>0){
    for(i=1;i<=b;i++)
        jumlah+=a;
        cout<<a<<"x"<<b<<"="<<jumlah;
    }else if(b<0 && a<0){
        for(i=0;i>a;i--)
        jumlah-=b;
        cout<<a<<"x"<<b<<"="<<jumlah;          
    }else{
        for(i=1;i<=a;i++)
        jumlah+=b;
        cout<<a<<"x"<<b<<"="<<jumlah;
    }
    return 0;
}

4. Buatlah algoritma rekursif dari algoritma 5.3

 5. Diberikan suatu bilangan bulat positif. Cetaklah bilangan bulat tersebut secara terbalik,
secara iteratif maupun rekursif.


#include"iostream"
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;
}
 
6. Buatlah suatu subprogram yang mengembalikan nilai maksimum pertama (misal m1) dan
nilai maksimum kedua (misal m2, dan m1 tidak samadengan m2) dari array dengan n bilangan bulat.


.

7. Algoritma 5.5 menggunakan fungsi untuk menghitung n faktorial secara rekursif. Buatlah
algoritma menghitung n faktorial dengan menggunakan prosedur !
*ALGORITMA :
Dimisalkan menginputkan angka 4 sebagai bilangan positif, maka perhitungan menjadi 4*3*2*1.
int n; merupakan inisialisasi variabel n dengan tipe data integer sebagai proses perhitungan.
int faktorial(int k); merupakan inisialisasi variabel dengan nama faktorial yang dimana digunakan
untuk melakukan perhitungan variabel yang akan dijadikan variabel dalam melakukan perhitungan secara rekursif.
printf("Masukkan sembarang bilangan positif"); adalah perintah awal untuk menginputkan bilangan positif yang akan diproses.
printf(\nMelalui perhitungan rekursif, %d!= %d\n",n,faktorial(m)); adalah perintah untuk mengeksekusi
fungsi angka faktorialdimana angka akan terus berulang selama nilai variabel k belum bernilai 0, namun
jika sudah benar (0) maka akan mengembalikan nilai k*faktorial(k-1);

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.
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).

*ALGORITMA :
Menggunakan tipe data integer, menginputkan kode barang, nama barang, harga barang,
jumlah barang, kemudian akan muncul total harga belanjanya, jika harga belanjanya
kurang dari sama dengan 5000 maka diskonnya 0, jika lebih dari sama dengan 100000
maka mendapatkan diskon,total yang harus dibayarkan adalah total belanja dikurangi diskon, jika
total yang harus dibayarkan 230000 dan uang yang dibayar kekasir 250000 maka kembaliannya adalah 20000.
*C++
#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int main(int argc, char** argv) {
    char nm_brg [50],lnjt='Y';
    int diskon,Total_Belanja,bayar,kd_brg,jml_brg,hrg_brg,jml_uang,kembali;
    do{
        system("cls");
        cout<<"Program kasir sederhana"<<endl;
        cout<<"======================="<<endl;
        cout<<"Masukkan kode barang : ";cin>>kd_brg;
        cout<<"Masukkan nama barang : ";cin>>nm_brg;
        cout<<"Masukkan harga barang : ";cin>>hrg_brg;
        cout<<"Masukkan jumlah barang : ";cin>>jml_brg;
        cout<<"========================="<<endl;
        Total_Belanja=hrg_brg*jml_brg;
        cout<<"Total : Rp."<<Total_Belanja<<endl;
        cout<<"========================="<<endl;
        if(Total_Belanja<=5000){
        diskon=Total_Belanja*0;
        }
        else if(Total_Belanja>=100000){
            diskon=Total_Belanja*10/100;
        }
        cout<<"Diskon : Rp."<<diskon<<endl;
        bayar=Total_Belanja-diskon;
        cout<<"Total bayar : Rp."<<bayar<<endl;
        cout<<"========================"<<endl;
        cout<<"Masukkan jumlah uang : Rp.";cin>>jml_uang;
        cout<<"========================(-)"<<endl;
        kembali=jml_uang-bayar;
        cout<<"Kembali : Rp."<<kembali<<endl<<endl;
        cout<<"Brang yang sudah dibeli tidak dapat ditukar atau dikembalikan"<<endl;
        cout<<"Terimakasih atas kunjungan anda"<<endl<<endl;
        cout<<"Ulangi lagi [Y/T] : ";cin>>lnjt;
        cout<<endl<<endl;
    }while(lnjt=='Y');
    system("pause");
} 

9. [Proyek] Buatlah suatu class yang akan mengeksplorasi kalimat. Kalimat dapat disimpan
dalam bentuk array (kumpulan) karakter.
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 :
};

DIKTAT BAB 4

revisi blog silahkan klik link dibawah ini :
diktat bab 4 revisi


Berikut adalah hasil perkerjaan diktat BAB 4 :

PEMILIHAN/ KONTROL PROGRAM

1. Buatlah flowchart dan translasi program dari algoritma 3.2.b.
#include <iostream>

using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char* argv[]) {
  
    int a, b, c;
    cout<<"Masukkan nilai A = ";
    cin>>a;
    cout<<"Masukkan nilai b = ";
    cin>>b;
    cout<<"Masukkan nilai c = ";
    cin>>c;
  
    if(a>b) {
    if(a>c) {
        cout<<"Nilai terbesar adalah nilai A = "<<a;
            }
            }
    if(b>a) {
    if(b>c) {
        cout<<"Nilai terbesar adalah nilai B = "<<b;
            }
            }
    else if(c>a)
    if(c>b) {
        cout<<"Nilai terbesar adalah nilai C = "<<c;
         }
     
  
    return 0;
}



flowchart:



 3. Buatlah program dari algoritma 3.4. menggunakan case … of .

#include <iostream>
#include <math.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
 int a,b,c;
 long disk;
 float x1,x2;
 cout<<"Koefisien pangkat 2 : ";cin>>a;
 cout<<"Koefisien pangkat 1 : ";cin>>b;
 cout<<"Koefisien pangkat 0 : ";cin>>c;
 if(a==0){
  cout<<"Bukan Pers.Kuadrat"<<endl;
  cout<<"Harga Akar= "<<-c/b;
 }
 else {
  disk=b*b - 4*a*c;
 }
 if(disk>0){
  x1=-b+sqrt(disk)/(2*a);
  x2=-b-sqrt(disk)/(2*a);
  cout<<"Diskriminan = " <<disk << endl;
  cout<<"x1 : "<<x1<<endl;
  cout<<"x2 : "<<x2<<endl;
 } else if(disk == 0){
  x1 = -b/(2*a);
  x2=x1;
  cout<<"Diskriminan = 0 "<<endl;
  cout<<"x1 : "<<x1<<endl;
  cout<<"x2 : "<<x2<<endl;
 } else
 cout<<"Akar Imajiner";

 return 0;
}


4. Buatlah algoritma, flowchart dan program untuk mengecek apakah pemakai
memasukkan bilangan bulat atau bilangan real.
Lebih dulu, carilah perbedaan dari 1.0 dan 1 kemudian 1 dan 1.23.





#include <cstdlib>
#include <iostream>

using namespace std;

void satuan (int a)
{

    if (a==1)
    cout<<"satu ";
    else if (a==2)
    cout << "dua";
    else if (a==3)
    cout << "tiga";
    else if (a==4)
    cout << "empat";
    else if (a==5)
    cout << "lima";
    else if (a==6)
    cout << "enam";
    else if (a==7)
    cout << "tujuh";
    else if (a==8)
    cout << "delapan";
    else if (a==9)
    cout << "sembilan";
    else if (a==10)
    cout << "sepuluh";
    else if (a==11)
    cout << "sebelas";
}
void pembilang (int b)
{
    if (b<=11)
    satuan (b);
    else if (b<=11)&&(b<=19)
    pembilang (b%10);
    cout<<"belas";
    else if (b>=20)&&(b<=99)
    pembilang (b/10);
    cout<<"puluh"; pembilang (b%10)
    else if (b>=100)&&(b<=199)
    pembilang (b/100);
    cout<<"seratus"; pembilang(b%100)
    else if (b>=200)&&(b<=999)
    pembilang (b/100);
    cout<<"ratus"; pembilang(b%100)
    else if (b>=1000)&&(b<=1999)
    pembilang (b/1000);
    cout<<"seribu"; pembilang(b%1000)
    else if (b>=2000)&&(b<=9999)
    pembilang (b/1000);
    cout<<"ribu"; pembilang(b%1000)
    else if (b>=10000)&&(b<=99999)
    pembilang (b/1000);
    cout<<"ribu"; pembilang(b%1000)
    else if (b>=100000)&&(b<=999999)
    pembilang (b/1000);
    cout<<"ribu"; pembilang(b%1000)
    else if (b==1000000)
    pembilang (b/1000);
    cout<<"juta"; pembilang(b%1000)
    else
    cout << "Error";   
}
   
   
   
   

int main(int argc, char *argv[])
{
int angka;

    cout<<"====================================="<<endl<<endl;
    cout<<"program mengubah angka menjadi ejaan "<<endl;
    cout<<"====================================="<<endl<<endl;
    cout<<"masukan angka : " ;cin>>angka;
   
    if(angka<0)
    {    cout << "minus" ;}
    else
    {cout<<" <"<<pembilang(angka);cout<<" >";
        }
    cout<<"\n---------------------------------\n"<<endl<<endl;   

    system("pause");
    return 0;
}



5. Buatlah algoritma, flowchart dan program untuk menentukan banyaknya hari
dalam suatu bulan dan tahun yang diberikan. Pertimbangkan pula adanya tahun
kabisat di mana bulan Februari mempunyai jumlah 29 hari. Gunakan case .. of
dan if .. then .. else .. yang tepat untuk setiap kasus.



#include <iostream>
using namespace std;

int year, month, day;
void input();
void errorYear();
void errorMonth();
void again();
int main()
{
    cout<<"Program menghitung hari dalam satu bulan."<<endl;
    input();
}
void input()
{
    cout<<"Masukkan angka tahun:"<<endl;
    cin>>year;
    cout<<"Masukkan angka bulan:"<<endl;
    cin>>month;
    if (year <= 0)
    errorYear();
    switch (month)
    {
        case 1:
        cout<<"Bulan Januari tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 2:
        if (year % 4 == 0)
        cout<<"Bulan Februari tahun "<<year<<" ada 29 hari."<<endl;
        else
        cout<<"Bulan Februari tahun "<<year<<" ada 28 hari."<<endl;
        break;
        case 3:
        cout<<"Bulan Maret tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 4:
        cout<<"Bulan April tahun "<<year<<" ada 30 hari."<<endl;
        break;
        case 5:
        cout<<"Bulan Mei tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 6:
        cout<<"Bulan Juni tahun "<<year<<" ada 30 hari."<<endl;
        break;
        case 7:
        cout<<"Bulan Juli tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 8:
        cout<<"Bulan Agustus tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 9:
        cout<<"Bulan September tahun "<<year<<" ada 30 hari."<<endl;
        break;
        case 10:
        cout<<"Bulan Oktober tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 11:
        cout<<"Bulan November tahun "<<year<<" ada 30 hari."<<endl;
        break;
        case 12:
        cout<<"Bulan Desember tahun "<<year<<" ada 31 hari."<<endl;
        break;
        default :
        errorMonth();
        break;
    }
    again();
}
void errorYear()
{
    cout<<"Masukkan data tahun tidak valid."<<endl;
    again();
    main();
}
void errorMonth()
{
    cout<<"Masukkan data bulan tidak valid."<<endl;
    again();
    main();
}
void again()
{
    char answer;
    cout<<endl<<"Tekan Y untuk mencoba lagi."<<endl<<"Mau mencoba lagi?"<<endl;
    cin>>answer;
    if (answer == 'Y' || answer == 'y')
    {
        main();
    }
    else
    {
        return;
    }
}


6. Buatlah algoritma, flowchart dan program untuk mengecek apakah karakter yang
dimasukkan itu merupakan huruf besar, huruf kecil atau digit (bilangan).
Gunakan fungsi ORD(char) untuk menyatakan nomor urut dalam tabel ASCII.

#include <iostream>
#include <conio.h>
using namespace std;
class Karakter
{
private:
    char karakter;
public:
  void Proses ();
  void Output ();
};

void Karakter::Proses()
{
cout<<"Masukkan Karakter = ";cin>>karakter;
};

void Karakter::Output(){
if (karakter >='A' && karakter <='Z')
cout<<"Huruf Besar"<<endl;
else if (karakter >= 'a' && karakter <='z')
cout<<"Huruf Kecil"<<endl;
else if (karakter >= '0' && karakter <= '9')
cout<<"Digit (Bilangan)"<<endl;
else
cout<<"Simbol"<<endl;
};
main ()
{
Karakter bilhur;
bilhur.Proses();
bilhur.Output();
getch ();
return 0;
}



7.Seorang dosen ingin mengkonversikan nilai angka hasil ujian mahasiswa
menjadi nilai huruf dengan ketentuan :

#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
    int nilai;
    string nilaihuruf;
    cout<<"masukkan nilai (0-100) : ";cin>>nilai;
    if(nilai <=100 && nilai>=91)
    nilaihuruf='A';
    else if(nilai<=90 && nilai>=81)
    nilaihuruf='B';
    else if(nilai<=80 && nilai>=71)
    nilaihuruf='C';
    else if(nilai<=70 && nilai>=61)
    nilaihuruf='D';
    else
    nilaihuruf='F';
   
cout<<"Nilai = "<<nilaihuruf;

    return 0;
}




8.Diberikan ketentuan pecahan uang di Indonesia. User memasukkan sebuah
bilangan, program harus dapat memecahnya menjadi pecahan sesuai dengan
mata uang di Indonesia.
Misalkan dimasukkan nilai uang 127.675 rupiah. Cobalah memecah secara
manual nilai uang di atas.




DIKTAT BAB 3

Bab 3 : Sekuen

Berikut adalah hasil pekerjaan bab 3 :

1.Buatlah analisis dan algoritma untuk mencari titik tengah sebuah garis yang ujung
titiknya adalah A(x1,y1) dan B(x2,y2).


2. Buatlah algoritma untuk mencari isi bola bila diketahui jari-jari bola


4.Buatlah analisis dan algoritma untuk menghitung konversi detik menjadi format
jam:menit:detik
Buat contoh kasus, misalnya konversikan 1230 detik menjadi … jam … menit … detik.




5. Buatlah analisis dan algoritma untuk menghitung konversi dari jam:menit:detik ke detik
Buat contoh kasus, misalnya konversikan 2 jam 13 menit 43 detik menjadi … detik.




7. Buatlah analisis dan algoritma untuk menghitung jumlah komponen sejumlah uang
menjadi pecahan-pecahannya. Misalkan Rp 188.875,- menjadi : 1 seratus ribuan, 1 lima
puluh ribuan, 1 dua puluh ribuan, 1 puluhan ribu, 1 lima ribuan, 3 ribuan, 1 lima ratusan,
1 dua ratusan, 1 ratusan, 1 lima puluhan, 1 dua puluh limaan







8. [Pengamatan] Buatlah analisis dan algoritma untuk menghitung luas sebuah plat CD.
Diameter lingkaran luar = …. cm.
Diameter lingkaran dalam = …. cm.



10. Buatlah analisis dan algoritma untuk mengkonversi bilangan biner 4 digit menjadi
bilangan desimal. Operator overloading input mencegah user untuk memasukkan
bilangan selain 0 dan 1. Deklarasi variabel input dan output adalah bertipe integer.



12. Buatlah analisis dan algoritma untuk menghitung jumlah dari dari dua tanggal yang
dimasukkan user. Misalnya, berapa hari dari 6/1/90 sampai 8/3/92 ? Anggap satu tahun
365 hari dan anggap semua komponen tanggal pertama SELALU LEBIH KECIL dari
komponen tanggal kedua.