Senin, 06 Juni 2011

tugas 7

SOAL;
Jika terdapat 1000 mahasiswa baru bsi,jika diinginkan pencarian dengan number urut 212 dengan menggunakan tehnik:
-          Linear search
-          Binary search
Ada berapa langkah penyelesaian….
 
JAWABAN;
M            = ( L + U ) / 2
                = ( 1 + 1000) / 2
                = 1001/2
        = 500,5 ­­­­­­­­­­­­ maka data (M) = 500
1.      1.  X                             data (M)
212         <             500
U       = M ­­­­­­­­­­-­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­ 1
                = 500 - 1
                = 499
     M       = (L + U )/2
                = (1 + 499)/2
                = 500/2
                = 250
2.      2.  X                             data (M)
212         <             250
U       = M - 1
                = 250 – 1
                =249
   M         = (L + U ) / 2
                = (1 + 249 )/ 2
                =125
3.      3.  X                             data (M)
212         >             125
L        =M + 1
                =125 + 1
                =126
  M          = ( L + U )/2
                = ( 126 + 249 )/ 2
                = 375 / 2
                =187,5     data (M ) = 187
4.     4.   X                             data (M)
212         >             187
→ L        = M + 1
                = 187 + 1
                = 188
M            = ( L + U )/2
                = ( 188 + 249 ) /2
                =437 /2
                =218,5    data ( M ) = 218
5.     5.   X                             data (M)
212         <             218
 → U      = M - 1
                = 218 - 1
                = 217
M            = ( L + U ) /2
                = ( 188 + 217 ) /2
                = 405 / 2
                = 202,5    data ( M ) = 202
6.    6.   X                             data (M)
212         >             202
 → L       = M + 1
                = 202 + 1
                = 203
M            = ( L + U ) /2
                = ( 203 + 217 ) /2
                = 420 / 2
                = 210
7.      7.  X                             data (M)
212         >             210
 → L       = M + 1
                = 210 + 1
                = 211
M            = ( L + U ) /2
                = ( 211 + 217 ) /2
                = 428 / 2
                = 214
8.     8.   X                             data (M)
212         <             214
 → U      = M - 1
                = 214 - 1
                = 213
M            = ( L + U ) /2
                = ( 211 + 213 ) /2
                = 424 / 2
                = 212
9.     9.   X                             data (M)
212         =             212
Data sama berarti data di temukan

Minggu, 17 April 2011

tugas 4 pertemuan 5

TUGAS STRUKTUR DATA Pertemuan V (STACK)

Soal dan Jawaban

1.Stack termasuk (a) Linear list atau (b) Non Linear list?Jelaskan?!
   Jawab : 
(a) Linear List
Stack merupakan bentuk khusus dari linear list yang pemasukan dan penghapusan elemennya hanya dapat dilakukan pada satu posisi, yaitu posisi akhir dari list (TOP)

2.Apa saja perlakuan yang di mungkinkan sehingga suatu stack dikatakan dalam kondisi hampa?
   Jawab :
Dengan cara memeriksa TOP of STACK.
Jika TOP masih = -1
maka berarti STACK masih kosong

3.Sebutkan 4 (empat) operasi pada stack dan berikan contoh-contohnya?!
   Jawab : 
            A. ISEMPTY

Ex: Int ISEMPTY ()                 
          {                                                        
          If (tumpuk.top==-1                        
          Return 1;                     
          Else                                                   
          Return 0;
          }


B. ISFULL
Ex: Int ISFULL ()
          {
          If (tumpuk, top==MAX_STACK-1                    
          Return 1;                                                         
          Else                                           
          Return 0;                                 
          }   
                                           
          C. PUSH
          Ex: Void Push (char d[s])
                   {tumpuk.top++
                   Strcpy(tumpuk.data[tumpuk.top],d);
                   }
      
                
           D. CLEAR
           Ex: Void POP ()
                    {
                     Print(“Data yang di POP=%5/n”,tumpuk.data
                     [tumpuk.top]);tumpuk.top--;

4.Sebutkan dua kesalahan yang mungkin terjadi pada pengoperasian Stack dan pada kondisi apa kesalahan itu bisa terjadi?!
Jawab :
1). Apabila penghapusan dilakukan pada posisi awal
2). Apabila TOP tidak = -1
Kesalahan itu bisa terjadi pada posisi hampa

5.Konversikan notasi infix A-B*C^D^(E*F/(G-H))  ke notasi postfix
Jawab :
AB-CD*^E^F*GH-+


      



Sabtu, 09 April 2011

TUGAS 3

SOAL:
1.             Terdapat array float A[5][4] dan lokasi awal terletak di alamat 00F (h), maka lokasi A[3][4] secara kolom dan baris adalah ….
2.             Terdapat array long double A[50][75] dan lokasi awal terletak di alamat 00ff(h) , maka lokasi A[48][60] secara kolom dan baris adalah …..
3.             Terdapat array double A [25][50] dan lokasi awal teletak 009F (h) ,maka lokasi teletak A[17][48] secara kolom dan baris adalah …………
4.             Deklarasi array adalah double  A[2][4][5], dengan alamat awal index A[0][0][0] berada di 0021 (h) tentukan berapa alamat array di A[2][2][2] …….
Penyelesaian :
1.          A. baris
Dik : float = A[5] [4]                   B =    00f                  k = 5                   j = 4
L        = 4                            I =     3                     n = 4
@m [i] [j] =                                   m[0] [0] + {(j-i) * k + (i-1) }*l
                    = 00f (h) + {(4-1-) * 5 + (3-1)} *4
                    = 00f(h) + { 17 } * 4
                    = 00f(h ) + 68 (d)
                    = 00f(h) + 44 (h)
                    = 053 (h)
B. kolom
@ m[i] [j] = m[0] [0] + {(i-1) * n + (j-1)}*l
                    = 00f (h) + {(3-1) * 4 + (4-1)}* 4
                    = 00f (h) + {11} * 4
                    = 00f (h) + 44 (d)
                    = 00f (h) + 2C (h)
                    = 03B (h)

2.          A. baris
          Dik : long double A [50] [75]    l = 10                      I = 48               n =  75
                   A [0][0] = 00f (h)            j = 60                      k = 50
          @A[i] [j]   = A [40] [60]
          A[48] [60]= 00ff (h) + {(48-1) * 75) + (60-1)} * 10
                              = 00FF(h) + {(3525 + 59 ) * 10 }
                              = 00FF (h) + 35840 (d)
                              = 00FF (h) + 8C00
                              = 8CFF
          b. kolom
          @[48] [60]= 00FF (h) + {(60-1) * 50 + (48-1)}* 10
                              = 00FF (h) + { (59 * 50) + 47}*50
                              = 00FF(h) + 29970(d)
                              = 00FF (h) + 7212 (d)
                              = 7611 (h)

3.          A. baris
          Dik : i=17                                          j= 48                     
                  K = 25                                     n= 50
          @m [i] [j] = m[0] [0] +  {(i-1) * n + (j-1)}*l
          A[17] [48]                                        = 009F (h) + {(17-1)*50 + (48-1)}*8
                              = 009F (h) + {800+47}* 8
                              = 009F (h) + 6776 (d)
                              = 009F (h) + 1A78
                              = 1B17 (h)

          B. kolom
          @ M[i] [j]    = M[0] [0] + {(j-1) * k + (i-1)}*l
          A[17] [48]   = 009F (h) + {(48-1)*25 + (17-1) }* 8
                              = 009F (h) + {(47)*25 +(16)*8
                              = 009F (h) + 9528 (d)
                              = 009F (h) + 2538 (h)
                              = 25D7 (h)

4.          Dik :           A : [2] [4] [5]
                              A [0] [0] [0] = 0021 (h)
                              L =8
@ [m] [n] [p]   = A [2] [2] [2]
                              = 0021(h) + {(2-1)*2 + (2-1) * 4 + (2-1)*5}*8
                              = 0021(h) +{2+4+5}*8
                              = 0021(h) +88 (d)
                              = 0076 (h)

Kamis, 07 April 2011

         soal:tugas ke 2
           1.       Diketahui float A[5] dan lokasi awal terletak di alamat 00f (h) , maka lokasi A[3] adalah ………..
            2.       Diketahui double A[20] dan lokasi awal terletak di alamat 00AB (h) , maka lokasi A[15] adalah ……….
             3.       Diketahui int A[100] dan lokasi awal terletak di alamat 00FB (h), maka lokasi A[78] adalah……..
             4.       Diketahui char A[50] dan lokasi awal terletak di alamat 00F (h) , maka lokasi A[38] adalah……


JAWABAN:
          1.     Dik : float A[5]
B = 00f (h)
I = 3
L = 4
A[3] = B +  ( i-1 )*L
Penyelesaian
A[3] =00F + ( 3-1 ) * 4                   00F
          =00F (h) + 8 (d)                         8 +
          = 0017                                     0017
     2.         DOUBLE
        Dik :  double A[20]
                    B = 00AB (h) / 0021 (h) A[5] @ A[15]
                    L = 8
                    = B + ( i-1 )* L                       00AB(h)
                    = 0021(h) + (15-1)*8              9A(h) +
                    = 0021(h) + 112(d)             011B (h)
                    = 011B (h)









      3.             INTERGER
            Dik : int A[100}
                      B = 00FB (h) /   A[78]   @A[i]=A[78]
                      L = 2
                         = B + ( i-1 )*L
                         = 00FB (h) + (78-1)*2
                        = 00FB(h) + 154(d)     00FB
                        = 00FB (h) 9A                   9A +
                        = 0195 (h)                   0195

       4.             CHAR
            Dik ;  char A[50]
                        B = 00FF (h)
                        C = 1
            @ A[i] = A[38]                             00FF
                        = B + (I – 1)*L                        25 +
                        = 00FF (h) + (38-1)*1       0124
                        = 00FF (h) + 37(d)
                        = 00FF (h) 25 (h)
                        = 0124 (h)

Sabtu, 26 Maret 2011

tugas


Hartati 12.2c.14

1.       Type data di bawah ini, yang tidak termasuk dalam sederhana tunggal adalah :
a.      Boolean               d.      Integer
b.      String                    e.      Float
c.       Char

jawaban :  b string
alasan    :   karena merupakan type data majemuk yang terbentuk dari kumpulan character sebanyak 256 (default) dengan jangkauan nilai 0 – 225.

2.    ==, <=, >=, !=, termsuk dalam operator…….
        a.      Aritmatika           d.    Relasi
        b.      Uinary                   e.    Bitwise
        c.       Binary
jawaban      :                                                                 d. relasi
alasan    :    
·         relasi ( ==, >, <, <=,>= dll)
·         aritmatika ( *=, /=, %= dll)
·         unary ( +, - )
·         bitwise ( <<, >>,& dll)

3.    Type data yang menghasilkan bentuk keluaran nilai TRUE dan FALSE (benar dan salah) adalah :
        a.      Boolean                     d.    Integer
        b.      String                          e.    Float
        c.       Char
jawaban :      a. Boolean
alas an    :       bukan merupakan pecahan,bilangan bulat, atau character tetapi hanya mempunyai dua bentuk keluaran

4.    Void main ()
        {
        …… (a) ….. x, y, z ;
        clrscr () :
        cout <<”\n input nilai x=”; cin >> x;
cout <<”\n input nilai y=”; cin >> y;
z= x + y ;
cout <<”\n hasil penjumlahan = “ << z;
getche ();
}
       
        Type data yang tepat untuk (a) adalah…..
a.      Boolean           d.    Integer
b.      String                e.    Array
c.       Char
jawaban :     d. integer
alasan    :       karena ada proses penjumlahan


5.    Void main ()
        {
        Int r = 10; int = 5;
        Clrscr ();
        S = 10 +  ++r ;
        cout << “ r = “ << r << ‘\n ;
        cout << “s = “ << s << ‘\n ;
        getche () ;
        }
        Hasil eksekusi dari program di atas adalah
a.       r = 11, s = 21       d.    r = 10 , s = 21
b.      r = 11, s = 20       e     e = 10, s = 20
c.       r = 12, s = 21
jawaban      :                                                               a. r = 11, s = 21
alasan      :   s = 10 +  ++r
                  s = 10 +  10 + 1
                  s = 21