Sabtu, 09 April 2016

KASUS ALPRO MINGGU KE 5

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

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

Tidak ada komentar:

Posting Komentar

Diberdayakan oleh Blogger.

search

BTemplates.com

Blogroll

Pages - Menu

Pages - Menu