Jumat, 01 April 2016

KASUS ALPRO MINGGU KELIMA

Pagi ini saya akan memposting kasus-kasus alpro yang ada di materi ppt minggu kelima.

Ada 6 kasus yaitu kasus 5.2 kasus 5.3 kasus 5.4 kasus 5.5 kasus 5.6 dan kasus 5.8
Kasus ini dikerjakan secara berkelompok. Saya mendapat bagian mengerjakan kasus 5.4 dan kasus 5.8

KASUS 5.4

Program cpp nya dibuat menggunakan function.

#include <iostream>
#include <math.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int kali(int a, int b){
    int i, hasil=0;
    for(i=1; i<=abs(b); i++)
    hasil +=a;
    if(b<0) return(-hasil); else return(hasil);
}
int main(int argc, char** argv) {
    cout<<"menghitung hasil perkalian\n";
    int x,y;
    cout<<"masukkan bil-1 = "; cin>>x;
    cout<<"masukkan bil-2 = "; cin>>y;
    cout<<x<<" x "<<y<<" = "<<kali(x,y);
    return 0;
}


Perulangan yang digunakan dalam script di atas berfungsi untuk menjumlahkan bilangan pertama secara berulang sebanyak bilangan kedua, jadi bisa diperoleh hasilnya.

outputnya akan seperti ini

Raptornya

KASUS 5.8


Algoritma iteratifnya seperti berikut:

-          Deskripsi :
·         While (n<0) do
·         r <- m%n
·         m <- n
·         n <- r {untuk menghentikan perulangan}
·         end while
·         gcd <- c


Program cpp

#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int  gcd(int m, int n){
    int r;
    while(n>0){
        r=m%n;
        m=n;
        n=r;
    }
    return(m);
}
using namespace std;
int main(int argc, char** argv) {
    int a, b;
    cout<<"masukkan nilai 1 = "; cin>>a;
    cout<<"masukkan nilai 2 = "; cin>>b;
    cout<<"\nFPB("<<a<<","<<b<<") = "<<gcd(a,b);
    return 0;
}


Raptornya

Algoritma rekursifnya

-          Deskripsi :
·         if(n==0) then gcd <- m
·          else if (m<n) then gcd <- gcd(n,m)
·         Else gcd <- gcd(m-n,n)


Program cpp

#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int gcd(int m, int n){
    if(n==0) return(m);
    if(m<n) return(gcd(n,m));
    return(gcd(m-n,n));
}
using namespace std;
int main(int argc, char** argv) {
    int a, b;
    cout<<"masukkan bilangan ke-1 = "; cin>>a;
    cout<<"masukkan bilangan ke-2 = "; cin>>b;
    cout<<"FPB("<<a<<","<<b<<") = "<<gcd(a,b);
    return 0;
}


Raptornya

                
















Baik iteratif maupun rekursif akan menampilkan output seperti berikut


untuk kasus 5.3 dan kasus 5.6 dapat di lihat di http://nisanurist.blogspot.co.id/2016/04/minggu-kelima-alpro-kasus-kasus-ppt-5.html

untuk kasus 5.2 dan kasus 5.5 dapat dilihat di http://vitawijaya.blogspot.co.id/2016/04/kasus-alpro-minggu-ke-5kelompok.html

Tidak ada komentar:

Posting Komentar