Rabu, 30 April 2014

STRUKTUR DATA

- 0 komentar
Contoh Program Perpustakaan 
Antrian menggunakan stack dan Quen

uses wincrt;
const max=10;
type buku=record
     kode,judul:string;
     jb:byte;
     end;
     larik1=array[1..max] of buku;
type antrian=record
     nomor,nama:array[1..max] of string;
     head,tail:0..max;
     end;
type transaksi=record
     no_ang,nama_ang,kodeb,jdl,tgl_p,tgl_k:string;
     end;
     larik2=array[1..max] of transaksi;
var book:larik1;
    antri:antrian;
    transak:larik2;
    i,j,m,n,pil,pil2:byte;
    nomasuk,namamasuk:string;
    nokeluar,namakeluar:string;

procedure tambah_buku(var x:larik1);
var kod,ya:string; 
label ul;

begin
repeat
      writeln('Memasukkan judul buku baru');
      ul:
      write('masukkan kode buku baru : ');readln(kod);
      {cek}
      for i:=1 to n do
      begin
          if x[i].kode=kod then
          begin writeln('Kode sudah digunakan,ulang');goto ul; end;
      end;
      inc(n);
      x[n].kode :=kod;
      write('Masukkan judul buku baru    : ');readln(x[n].judul);
      write('Masukkan berapa jumlah buku : ');readln(x[n].jb);
      writeln;
      write('Tambah lagi<y/t> ? ');readln(ya);
until(ya<>'y');
end;

procedure push(var x:antrian);
var no:string;
label ul;

begin
ul:
write('masukkan nomor anggota : ');readln(no);
{cek diantrian}
for i:=1 to x.tail do
begin
     if x.nomor[i]=no then begin writeln('nomor sudah antri di posisi ',i);goto ul;end;
end;
inc(x.tail);
x.nomor[x.tail]:=no;
write('masukkan nama anggota : ');readln(x.nama[x.tail]);
end;

  
procedure pinjam_buku(var x:antrian;var Y:larik1;var Z:larik2);
var kod:string; pos:byte;
    ada:boolean;

begin
{pop dari queue dulu}
nokeluar:=x.nomor[x.head];namakeluar:=x.nama[x.head];
writeln('melayani peminjaman dari nomor anggota :',nokeluar,'   Nama  : ',namakeluar);
for i:=1 to x.tail-1 do {geser antrian}
begin
     x.nomor[i]:=x.nomor[i+1];
     x.nama[i]:=x.nama[i+1];
end;
dec(x.tail);
write('masukkan judul kode buku yang akan dipinjam : ');readln(kod);
{cek}
for i:=1 to n do
begin if (y[i].kode=kod) and (y[i].jb>0) then begin pos:=i;ada:=true;end;end;
if ada then
begin
     {catat peminjaman di transaksi}
     dec(y[pos].jb);{stok buku dikurangi}
     inc(m);
     z[m].no_ang:=nokeluar;
     z[m].nama_ang:=namakeluar;
     z[m].kodeb:=kod;
     z[m].jdl:= y[pos].judul;
     write('masukkan tanggal pinjam : ');readln(z[m].tgl_p);
end
else writeln('maaf buku saat ini tidak tersedia');
end;


procedure kembali_buku(var x:antrian;var y:larik1;var z:larik2);
var kod: string;pos:byte;
ada:boolean;

begin
{pop dari queue dulu}
nokeluar:=x.nomor[x.head];namakeluar:=x.nama[x.head];
writeln('melayani peminjaman dari nomor anggota :',nokeluar,'   Nama  : ',namakeluar);
for i:=1 to x.tail-1 do {geser antrian}
begin
     x.nomor[i]:=x.nomor[i+1];
     x.nama[i]:=x.nama[i+1];
end;
dec(x.tail);
write('masukkan kode buku yang akan dikembalikan : ');readln(kod);
{cek}
for i:=1 to m do         {mengecek buku yang dipinjam di larik transaksi}
begin if (z[i].kodeb=kod) and (z[i].nama_ang=namakeluar)  then begin pos:=i;ada:=true;end;end;
if ada then
begin
     {cek di larik buku diposisi mana buku tsb dan kembalikan stoknya}
     for j:=1 to n do if y[j].kode=kod then inc(y[j].jb);
     {catat pengembalian di transaksi}
     write('masukkan tanggal kembali : ');readln(z[pos].tgl_k);
     writeln('Terimakasih sudah mengembalikan buku');
end
else writeln('maaf kode buku salah atau nama pengantre tidak cocok dengan data di perpustakaan');
end;

procedure cetak_buku(var x:larik1);
begin
writeln(' DAFTAR BUKU DI PERPUSTAKAAN MANDIRI');writeln;
writeln('-------------------------------------------------');
writeln('No   Kode      Judul                Jumlah');
writeln('-------------------------------------------------');
for i:=1 to n do writeln(i:2,'    ',x[i].kode:4,'       ',x[i].judul:15,'    ',x[i].jb:3);
writeln('-------------------------------------------------');
end;

procedure cetak_antrian(var x:antrian);
begin
writeln(' DAFTAR ANTRIAN PERPUSTAKAAN MANDIRI');writeln;
writeln('-------------------------------------------------');
writeln('POSISI      NO ANGGOTA      NAMA');
writeln('-------------------------------------------------');
for i:=1 to x.tail do writeln(i:4,'        ',x.nomor[i]:4,'         ',x.nama[i]);
writeln('-------------------------------------------------');
end;

procedure cetak_transaksi(var x:larik2);
begin
writeln(' DAFTAR BUKU DI PERPUSTAKAAN MANDIRI');writeln;
writeln('----------------------------------------------------------------------------');
writeln('No   No Anggota  Nama Anggota   Judul Buku       Tgl Pinjam   Tgl Kembali');
writeln('----------------------------------------------------------------------------');
for i:=1 to m do writeln(i:2,'   ',x[i].no_ang:4,'  ',x[i].nama_ang:10,'   ',x[i].jdl:12,
'       ',x[i].tgl_p:10,'    ',x[i].tgl_k:10);
writeln('----------------------------------------------------------------------------');
end;


begin
antri.head:=1;antri.tail:=0;
repeat
begin
     clrscr;
     writeln('    PELAYANAN PERPUSTAKAAN MANDIRI');
     writeln('1. Menambah judul buku baru');
     writeln('2. Masuk Antrean');                        
     writeln('3. Layanan Pinjam dan Pengembalian');
     writeln('4. Cetak daftar buku');
     writeln('5. Cetak antrean');
     writeln('6. Cetak transaksi peminjaman/pengembalian');
     writeln('7. Selesai');
     write('Pilih 1-7 : ');readln(pil);
     case pil of
     1: tambah_buku(book);
     2: if antri.tail=max then writeln('antrian penuh saat ini')
        else  push(antri);
     3: begin
        if antri.tail=0 then writeln('antrian kosong, tidak ada yang perlu dilayani')
        else
            begin
                 writeln('Anda akan melakukan apa? 1. Pinjam Buku 2. Mengembalikan buku');
                 readln(pil2);
                 if pil2=1 then pinjam_buku(antri,book,transak) else
                 if pil2=2 then kembali_buku(antri,book,transak) else
                 writeln('Pilihan salah');
            end;
          end;
     4: if n=0 then writeln('Buku blm dientri') else cetak_buku(book);
     5: if antri.tail=0 then writeln('Tidak ada antrian') else cetak_antrian(antri);
     6: if m=0 then writeln('Tidak ada transaksi') else cetak_transaksi(transak);
     7: writeln('Terimakasih');
     end;
     readln;
end
until(pil=7);
end.

[Continue reading...]

Senin, 28 April 2014

Metode Statistika

- 0 komentar
Metode Statistika 

I.   Tujuan Laporan
Dari Tugas ini kita dapat mempelajari cara  membuat tabel  seperti :
·            Membuat Tabel T
·                  Membuat Tabel F
·                  Membuat Tabel CHI SQUARE
Dengan memahami tabel statistik dengan menggunakan paket program SPSS

II.   Data
Input Data dengan N =1 – 25.
No
df
1
5
2
7
3
8
4
4
5
5
6
6
7
3
8
4
9
5
10
8
11
11
12
8
13
12
14
14
15
10
16
13
17
8
18
9
19
10
20
11
21
13
22
12
23
15
24
16
25
15
































III.         Hasil Output

A.Tabel Distribusi T

Berikut ini adalah hasil output tabel distribusu T dengan alpha =0,05
No
df
to.05
1
5
2.015048
2
7
1.894579
3
8
1.859548
4
4
2.131847
5
5
2.015048
6
6
1.94318
7
3
2.353363
8
4
2.131847
9
5
2.015048
10
8
1.859548
11
11
1.795885
12
8
1.859548
13
12
1.782288
14
14
1.76131
15
10
1.812461
16
13
1.770933
17
8
1.859548
18
9
1.833113
19
10
1.812461
20
11
1.795885
21
13
1.770933
22
12
1.782288
23
15
1.75305
24
16
1.745884
25
15
1.75305
                                                             





B. Tabel Distribusi F

Berikut ini adalah hasil output tabel distribusu T dengan alpha =0,06 degan df1=7
No
df
f0.06
1
5
4.439153
2
7
3.505372
3
8
3.256534
4
4
5.466126
5
5
4.439153
6
6
3.867286
7
3
7.767859
8
4
5.466126
9
5
4.439153
10
8
3.256534
11
11
2.829191
12
8
3.256534
13
12
2.741954
14
14
2.610074
15
10
2.937435
16
13
2.670169
17
8
3.256534
18
9
3.075251
19
10
2.937435
20
11
2.829191
21
13
2.670169
22
12
2.741954
23
15
2.559034
24
16
2.51515
25
15
2.559034

  


C. . Tabel Distribusi CHI SQUARE

Berikut ini adalah hasil output tabel distribusu T dengan alpha =0,07.

No
df
chi_7
1
5
10.19103
2
7
13.08771
3
8
14.48357
4
4
8.666428
5
5
10.19103
6
6
11.65992
7
3
7.060314
8
4
8.666428
9
5
10.19103
10
8
14.48357
11
11
18.53344
12
8
14.48357
13
12
19.84884
14
14
22.44077
15
10
17.20257
16
13
21.15075
17
8
14.48357
18
9
15.85371
19
10
17.20257
20
11
18.53344
21
13
21.15075
22
12
19.84884
23
15
23.72019
24
16
24.99011
25
15
23.72019







IV.            ANALISIS HASIL
Dari data diatas Kita mendaptkan rumus  :
a)      Tabel Distribusi T
Dari compute Variabel ,isikan pada target variabel dengan nama variabel baru t0.05.Kemudain pada numerik expresion pilih dan isikan function IDF.T(1-0.05,df).
b)      Tabel Distribusi  F
Dari compute Variabel ,isikan pada target variabel dengan nama variabel baru f0.06.Kemudain pada numerik expresion pilih dan isikan function IDF.T(1-0.06,7,df). 7 nya di dapat dari rumus fd1=7,sehingga diisi  IDF.T(1-0.06,7,df) dan sesuai dengan rumus tabel distribusi F.
       C)   Tabel Distribusi CHI SQUARE
                 Dari compute Variabel ,target variabel sebagai nama variabel untuk tabel,kita ketiakn chi_7. pada numerik expresion kita ketik IDF.CHISQ(0.93,df). Disini dipakai 93% (dari 100% - tingkat signifikan).Sedang df adalah nama dari variabel yang dibuat  sebelumnya.





                V.    KESIMPULAN
                  Jadi dari tiga tabel diatas terdapat rumus-rumus yang berbeda untuk memunculkannya  seperti yang sudah kita bahas di Analisis dan juga terdapat alpha berbeda-beda diantara ketiganya.




  




[Continue reading...]

Popular Posts

 
Copyright © . peace love unity respect - Posts · Comments
Theme Template by BTDesigner · Powered by Blogger