Islam, way of life

Agama Islam adalah agama yang dibawa oleh Nabi Muhammad shallallahu ‘alaihi wa sallam. Dengan agama inilah Allah menutup agama-agama sebelumnya. Baca Selengkapnya

Ayo Shalat Jamaah

"Keutamaan shalat berjamaah itu melebihi shalat sendirian sejumlah 27 derajat"(H.R Muslim)

Mengenal Ajaran Islam Lebih Dekat

Mari kita mengenal ajaran agama Islam lebih dekat. Silahkan baca, InsyaaAllah banyak faedah ilmu yang akan kita dapatkan.

Ayam Geprek Dahsyat Bantul

Ayo, rasakan ke"Dahsyat"an Ayam Geprek dahsyat ini di warung kami. Baca Selengkapnya...

Rabu, 18 Mei 2016

Selection Sort [Tugas Bulan ke-3]

Assalamu'alaikum Warohmatullohi Wabarokatuh...

Bismillah..Alhamdulillah, sholawat serta salam buat Nabi Muhammad -shallallahu'alaihi wasallam-

Pada Kesempatan kali ini saya akan memposting pengembangan algoritma tentang selection sort.
Oke cekidot.

Mengurutkan Bilangan dengan Metode Selection Sort

  1. Identifikasi Masalah
    Permasalahannya adalah dalam suatu array, isi bilangannya tidak urut dari bilangan terkecil ke bilangan terbesar.
  2. Menentukan Input & Output
    Input :
    n (banyak data)
    a[] (sebanyak n)

    Output:
    a[](data yang sudah urut)

  3. Membuat Flowchart

  4. Test Menggunakan Data
    Input:
    n = 8
    a[1]=8
    a[2]=4
    a[3]=7
    a[4]=3
    a[5]=1
    a[6]=2
    a[7]=6
    a[8]=5

    Output:
    a[1]=1
    a[2]=2
    a[3]=3
    a[4]=4
    a[5]=5
    a[6]=6
    a[7]=7
    a[8]=8
  5. Implementasi di C++
    #include <iostream>
    using namespace std;
    
    void baca_data(int A[], int n)
    { int i;
    for (i = 0; i < n; i++)
    { cout << "Masukkan data ke-"<<i+1<<" : ";
    cin >> A[i];
    }
    }
    void cetak_data(const int A[], int n)
    { int i;
    for (i = 0; i < n; i++)
    cout <<A[i]<<" ";
    cout <<"\n";
    }
    void tukar (int *a, int *b)
    { int temp;
    temp = *a;
    *a = *b;
    *b = temp;
    }
    void minimum(int A[], int dari, int n, int * tempat)
    { int i, min;
    min = A[dari];
    *tempat = dari;
    for (i = dari+1; i<n; i++)
    if (A[i] < min)
    { min = A[i];
    *tempat = i;
    }
    }
    
    void selection_sort(int A[], int n)
    { int i, t;
    for (i = 0; i<n; i++)
    { minimum(A, i, n, &t);
    tukar(&A[i], &A[t]);
    }
    }
    main() {
    int data[10], n;
    cout<< "\t\tSELECTION SORT"<<endl<<endl;
    cout<< "Masukkan Banyak Data = ";
    cin >> n;
    baca_data(data,n);
    cout<<"Data Awal : ";
    cetak_data(data,n);
    selection_sort(data,n);
    
    cout<<"Setelah diurutkan : ";
    cetak_data(data,n);
    return 0;
    }   
    
  6. Hasil Eksekusi
    hasil eksekusi
    Setelah di eksekusi ternyata hasilnya sama dengan test menggunakan data.

    Lama waktu pengerjaan  4 jam 25 menit

    Bubble Sort - Luthfi Ryanto
    Insertion Sort - Izu Tolandona

Sabtu, 07 Mei 2016

Latihan 2 pertemuan 8 Rencana kuliah bulan ke 3

Assalamu'alaikum

Soal Praktikum Pemrograman Web T. Informatika

PRETEST

1. SEBUTKAN DAN JELASKAN OPERASI DASAR YANG DIGUNAKAN
UNTUK MENDESAIN TAMPILAN WEB.

2. MENGAPA DESAIN WEB DIKATAKAN HAL PENTING DALAM MEMBUAT
WEBSITE?

3. APA YANG DIMAKSUD DENGAN OPTIMALISASI GRAFIK

Jumat, 06 Mei 2016

Kasus 6.5

Bismillah....

Pada kesempatan kali ini saya share kasus 6.5 yaitu mencari modus.

C++


#include<iostream>
    #include<conio.h>
    using namespace std;
    int x;
    void findmod(float bil[], int n, float mod[])
    {
    int total[100];
    int k=1;
    x=0;
    //untuk mengurutkan secara ascending
    for(int c=0;c<n;c++)
    {
    for(int i=(n-1);i>=0;i--)
    {
    if(bil[i]<bil[i-1])
    {
    int temp;
    temp=bil[i];
    bil[i]=bil[i-1];
    bil[i-1]=temp;
    }
    }
    }
    //menghitung berapa kali muncul tiap angka
    for(int c=0;c<n;c++)
    {
    total[c]=0;
    for(int i=0;i<n;i++)
    {
    if(bil[c]==bil[i])
    {
    total[c]++;
    }
    }
    }
    //menentukan nilai yang paling sering muncul
    for(int c=0;c<n;c++)
    {
    if(total[c]>k)
    {
    k=total[c];
    }
    }
    //jika modus lebih dari satu
    for(int c=0;c<n;c++)
    {
    if(x==0)
    mod[x]=0;
    else
    mod[x]=mod[x-1];
    if(total[c]==k)
    {
    if(bil[c]!=mod[x])
    {
    mod[x]=bil[c];
    x++;
    }
    }
    }
    //Jika Semua angka muncul sama banyak
    int z=0;
    for(int c=0;c<n;c++)
    {
    if(total[c]==k)
    {
    z++;
    }
    }
    if(z==n)
    {
    x=0;
    }
    }

 main()
    {
    int n;
    float bil[100];
    float mod[100];
    cout<<"Masukan Banyak Nilai : ";cin>>n;
    for(int c=0;c<n;c++)
    {
    cout<<"Nilai "<<(c+1)<<" : ";cin>>bil[c];
    }
    cout<<endl;
    findmod(bil,n,mod);
    if (x==0)
    cout<<"Tidak Ada Modus!"<<endl;
    else
    {
    cout<<"Modus : ";
    for(int c=0;c<x;c++)
    {
    cout<<mod[c]<<" ";
    }
    }
    getch();
    }  

Berikut Contoh Outputnya:

Latihan : menggeser elemen array (Rencana Kuliah Bulan ke-3)

Bismillah.. segala puji hanya milik Allah..
Sholawat dan salam kepada Nabi Muhammad -shallallahu alaihi wa sallam-

Akan saya bagikan bagaimana cara menggeser elemen array..
cekidot:

C++


#include <iostream>
#include <cstdlib>
#include <string>

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

using namespace std;

class Array1D{
 friend ostream& operator<<(ostream&, const Array1D&);
 friend istream& operator>>(istream&, Array1D&);
public:
 Array1D();
 void cetak();
 void geser_kiri();
 void geser_kanan();

private:
 char A[5];
 int posisi;
};

Array1D::Array1D(){
 for(int i=0;i<5;i++)
 A[i]='O';
}

void Array1D::cetak(){
 for(int i=0;i<5;i++)
 cout<<A[i]<<" ";
}

ostream& operator<<(ostream& out, const Array1D& x){
 for(int i=0;i<5;i++)
 out<<x.A[i]<<" ";
 out<<endl;
 return out;
}

istream& operator>>(istream& in, Array1D& x){
 int posisi;
 for (int posisi=1; posisi<=5; posisi++){
 cout<<"\nMasukkan Nilai Array Posisi Ke- : ";
 in>>x.posisi;
 if(posisi >= 0 && posisi <= 5){cout<<"Masukkan Elemen Array : ";
 in>>x.A[posisi-1];
 }
 }
 return in;
}

void Array1D::geser_kanan(){
 int n=5;
 int temp=A[n-1];
 for(int i=n-1;i>=0;i--)
 A[i+1]=A[i];
 A[0]=temp;
}

void Array1D::geser_kiri(){
 int n=5;
 int temp=A[0];
 for(int i=0;i<n;i++)
 A[i]=A[i+1];
 A[n-1]=temp;
}

int main(int argc, char *argv[]){
 Array1D x;
 cout<<"\t\t\tArray Masih Kosong : "<<x;
 cin>>x;

 cout<<"\nIsi Array Saat ini : "<<x;
 x.geser_kiri();
 cout<<"Isi Array Setelah di Geser Kiri  : "<<x;
 x.geser_kanan();
 cout<<"Isi Array Setelah di Geser Kanan : "<<x;
 cout<<"\nUrutan Elemen Pada Indeksnya Saat ini  : "<<x;
 system("PAUSE");

    return 0;
}


Outputnya:


E-Book (Problem Solving And Program Design in C) = Summary Of Hospital Revenue (page 419)

 Assalamu'alaikum Warahmatullah Wabarakatuh

Alhamdulillah, All praises only to Allah ta'ala. Sholawat and Sallam to prophet Mohammad -shallallahu alaihi wa sallam-.

Okay in this section i will explain to you about how to solve "E-Book (Problem Solving And Program Design in C) = Summary Of Hospital Revenue (page 419)".

Let's begin...
Analysis :
                You will need separate arrays to hold the revenue table, the unit totals (row sums)
                and the hospital quarterly totals (column sums).

Algorithm :
  Declaration :
             I, j, max, temp : integer

  Description :
            Max <--- Input
            for (i=1;i<=max;i++)then
            write("Masukkan Data Ke- 'I'")
            for(i=1;i<=max;i++)then
            write('data[1]')
            for(i=1;i<=max;i++)then
            for(j=1;j<=max;j++)then
            if(data[i]>data[j])then
            write('temp=data[i])
            data[i] <--- data[j];
            data[j] <--- temp;


Source Code with Code::Blocks


 #include <iostream>
#include <cstdlib>
using namespace std;

int main(int argc, char** argv) {
    int i, j, max, temp;
    int data[10];
    cout<<"\t\t\t++++ Summary of Hospital Revenue ++++"<<endl<<endl;
    cout<<"Masukkan Banyak Data : ";
    cin>>max;
    for(i=1;i<=max;i++){
        cout<<"\nMasukkan Data Ke-"<<i<<" ; ";
        cin>>data[i];
        }
    cout<<"\nData Awal : ";
    for(i=1;i<=max;i++){
        cout<<data[i]<<" ";
    }
    for(i=1;i<=max;i++){
        for(j=1;j<=max;j++){
        if(data[i]>data[j]){
            temp=data[i];
            data[i]=data[j];
            data[j]=temp;
        }
    }
}
    return 0;
}



And this is the output

Okey.. thanks for visiting my blogs..

Barakallahu fiykum
Wassalamualaikum warahmatullahi wabarakatuh

Kamis, 05 Mei 2016

Refleksi Alpro Minggu Ke-8

Assalamu'alaikum

Pada minggu ke-8 Kuliah Algoritma & Pemrograman, di kelas kita membahasa soal UTS, dan sedikit review materi tentang perulangan iteratif dan rekursif.

Pada kesempatan tersebut yang belum saya pahami adalah bagaimana cara menggunakan fungsi rekursif di RAptor.

Maka dari itu saya bertanya dengan kawan saya.... ^^