Contoh soal

 

Contoh soal

➤  Buatlah input data berupa variabel angka menggunakan array berisi 14 indeks, dan hitunglah ada          berapa angka yang habis dibagi 2 dan 3.

Notasi Algoritma 

Judul
    project                 : hitung angka yang habis dibagi 2 dan 3 pada array
    programmer        : Erdin Purwa Putra

kamus
    bilangan [1...14]  ←  array of integer
    habis, x                ←  integer

Deskripsi
//input bilangan dengan array
x = 0;
do 
{
        output "Masukan Bilangan = "
        input bilangan[x]
        x ← x + 1
} until ( x  < 14 )

//tampilkan data input dengan array
x = 0;
do 
{
        output bilangan[x]
        x ← x + 1
} until ( x  < 14 )

//Deteksi habis dibagi 3 & 2
while (x < 14 )
{
        if (bilangan[x] % 3 = 0   &   bilangan[x] % 2 = 0)
            {
                    habis ← habis + 1
            }
            else if (bilangan[x] % 3 = 0)
            {
                    habis ← habis + 1
            }
            else if (bilangan[x] % 2 = 0)
            {
                    habis ← habis + 1
            }
        x ← x + 1
}

output bilangan yang habis dibagi 2 dan 3 adalah 


Coding 
//judul
//project              : hitung angka yang habis dibagi 2 dan 3 pada array
//programmer     : Erdin Purwa Putra

#include <iostream>
using namespace std;

//kamus
int bilangan[14];
int habis, x;

//deskripsi
main()
{
    x = 0;
    do
    {
        cout<<"Masukan bilangan = ";
        cin >> bilangan[x];
        x = x + 1;
    }
    while(x < 14);

    cout<<"----------------------------"<<endl;

    x = 0;
    do
    {
        cout<<"BILANGAN = " << bilangan[x] <<endl;
        x = x + 1;
    }
    while(x < 14);

    cout<<"----------------------------"<<endl;
    //DETEKSI HABIS DIBAGI 3

    x = 0;
    habis = 0;

    while(x < 14)
    {
        if (bilangan[x] % 3 == 0 && bilangan[x] % 2 == 0)
            {
                habis = habis + 1;
            }
            else if (bilangan[x] % 2 == 0)
            {
                habis = habis + 1;
            }
            else if (bilangan[x] % 3 == 0)
            {
                habis = habis + 1;
            }
        x = x + 1;
    }

    cout<<"bilangan yang habis dibagi 3 dan 2 adalah = " << habis <<endl;
}

Hasil Run codingan





➤ Menentukan rata rata, mengurutkan bilangan dari terbesar ke terkecil atau sebaliknya, dan mencari         index angka

Notasi Algoritma 

Judul
    project                 : Array lanjutan
    programmer        : Erdin Purwa Putra

kamus
    Tabumur[13], posisi[12]  array of integer

    ArrBeratBadan[1...10], AvgRata  float

    Maximum, TabLength, Sumini, x, y, z, caricari, w, banyak, M, i, wadah  integer

    Ketemu  bool

Deskripsi

    output "menyisipkan data umur”

               Tabumur[0]=17

               Tabumur[1]=18

               Tabumur[2]=17

               Tabumur[3]=34

               Tabumur[4]=46

               Tabumur[5]=22

               Tabumur[6]=17

               Tabumur[7]=18

               Tabumur[8]=35

               Tabumur[9]=34

               Tabumur[10]=17

               Tabumur[11]=18

               //sesuaikan data

 

    output "menyisipkan data berat badan”

               ArrBeratBadan[0]=34.9

               ArrBeratBadan[1]=74.19

 

    // tampilkan TabUmur & ArrBeratBadan

               TabLength = 0

               x = 0;

               repeat

               {

                       TabLength=TabLength + 1;

                       x = x + 1;

               }until(x<12);


    // jumlah isi tabel

               Sumini=0

               y=0

               do

               {              

                      output Tabumur[y] 

                      Sumini = Sumini + Tabumur[y]

                      y = y + 1

               } while(y<12)

    // rata isi tabel

               AvgRata = Sumini / TabLength

               output "Rata-rata"

    //mengurutkan data

        x=0

        repeat

        {

            y=x+1

            while(y<12)

            {

                   if  (Tabumur[x]<Tabumur[y]) then

                   {

                        wadah=Tabumur[x]

                        Tabumur[x]=Tabumur[y]

                        Tabumur[y]=wadah

                   } y++

            }x++

        }until(x<12)

    output "data terbesar ke terkecil"

    x=0

   while(x<12)

  {

       Tabumur[x] ß output

       x++

      x=0;

  }

    repeat

    {

        y=x+1

        while(y<12)

       {

         if (Tabumur[x]>Tabumur[y]) then  

         {       wadah=Tabumur[x]

                  Tabumur[x]=Tabumur[y]

                  Tabumur[y]=wadah

         } y++

       } x++

    } until(x<12)

    output "data terkecil ke besar"

    x=0

   while (x<12)

   {

       Tabumur[x] ß output

       x++

   }

// pencarian nilai terbesar

               output Maximum=Tabumur[0]  // in code index ke 0

               z=0

               repeat

               {

                   if (Tabumur[z] > Maximum) then

                      {                        

                            Maximum=Tabumur[z]

                      }                    

                   z=z + 1

              } until(z<10)

    //pencarian sebuah data pada array

               output "masukan yang dicari"

               output Caricari

               banyak = 0

               w =1

               repeat

               {

                              if (Tabumur[w] = caricari) then   

                                    {         

                                             ketemu=true       //ketemu <--boolean      // bool ketemu; <- di c++

                                             posisi[banyak]=w

                                             banyak=banyak + 1

                                    }                              

                              w =w + 1

               } Until (w<10)

 

               if (ketemu == true) then

                       { 

                              output " yang dicari "   caricari   " ditemukan sebanyak "   banyak 

                              output "di lokasi indek ke = "

                              M=0

                              repeat

                              {

                                             posisi[i] ß output

                                             M = M + 1

                              } Until (M <banyak)

               } else

                    {

                              output "yg saya cari "  caricari   "rak ktemu"

                    }

               output "Data Usia"


Codingan 

 //judul

//project             : array lanjut

//programmer    : Erdin Purwa Putra


#include <iostream>

using namespace std;


//kamus

int Tabumur[13],posisi[12];

float ArrBeratBadan[10],AvgRata ;

int   Maximum,TabLength,Sumini,x,y,z,caricari,w,banya,M,i,wadah;

bool  ketemu;


//deskripsi

int main ()

{

    cout<<"menyisipkan data umur"<<endl;

    Tabumur[0]=17;

Tabumur[1]=18;

Tabumur[2]=17;

Tabumur[3]=34;

Tabumur[4]=46;

Tabumur[5]=22;

Tabumur[6]=17;

Tabumur[7]=18;

Tabumur[8]=35;

Tabumur[9]=34;

Tabumur[10]=17;

Tabumur[11]=18;

//sesuaikan data


cout<<"menyisipkan data berat badan"<<endl;

ArrBeratBadan[0]=34.9;

ArrBeratBadan[1]=74.19;

//


// tampilkan TabUmur & ArrBeratBadan

TabLength=0;

x=0;

do

{

TabLength=TabLength + 1;

x=x + 1;

}while(x<12);


// jumlah isi tabel

Sumini=0;

y=0;

do

{

    cout<<Tabumur[y]<<endl;

Sumini=Sumini + Tabumur[y];

y=y + 1;

}while(y<12);

// rata isi tabel

AvgRata=Sumini / TabLength;

    cout<<"Rata-rata "<< AvgRata<<endl;

    //mengurutkan data

    x=0;

    do{

        y=x+1;

        while(y<12)

        {

            if(Tabumur[x]<Tabumur[y])

            {

                wadah=Tabumur[x];

                Tabumur[x]=Tabumur[y];

                Tabumur[y]=wadah;


            }y++;

        }x++;

    }while(x<12);

    cout << "data terbesar ke terkecil"<<endl;

    x=0;

   while(x<12)

   {

       cout<< Tabumur[x]<< " ";

       x++;

   }

   cout<<endl;

   x=0;

    do{

        y=x+1;

        while(y<12)

        {

            if(Tabumur[x]>Tabumur[y])

            {

                wadah=Tabumur[x];

                Tabumur[x]=Tabumur[y];

                Tabumur[y]=wadah;


            }y++;

        }x++;

    }while(x<12);

   cout << "data terkecil ke besar"<<endl;

    x=0;

   while(x<12)

   {

       cout<< Tabumur[x]<< " ";

       x++;

   }

// pencarian nilai terbesar

Maximum=Tabumur[0];  // in code index ke 0

z=0;

do

{

if (Tabumur[z] > Maximum)

{

Maximum=Tabumur[z];

}

z=z + 1;

}while(z<10);

cout<<endl;


//pencarian sebuah data pada array

cout<<"masukan yang dicari"<<endl;

cin>> caricari;

banyak = 0;

w = 1;

do

{

if (Tabumur[w] == caricari)

{

ketemu = true; //ketemu <--boolean // bool ketemu; <- di c++

posisi[banyak] = w;

banyak = banyak + 1;

}

w =w + 1;

}while(w<10);


if(ketemu == true)

{

cout<<"yg dicari "<< caricari << " ditemukan sebanyak "<< banyak;

cout<<" di lokasi indek ke = ";

M=0;

do

{

cout<<posisi[i];

M = M + 1;

}

while(M < banyak);


  }

else

  {

cout<<"yg saya cari "<< caricari << " rak ktemu"<<endl;

  }

    cout<<endl;


    cout<< "Data Usia"<<endl;

}

Hasil Run coding











Komentar