gabung

Unique 1:1 Traffic Exchange

Rabu, 29 Mei 2013

penerapan kombinatorik \ PROGRAM GENERATE PERMUTASI

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

using namespace std;

int hasil;
//funsi faktorial :
int faktorial (int nilai)
{
hasil = nilai;
while(nilai>1)
{
hasil = hasil*(nilai-1);
nilai = nilai-1;
}
return hasil;
}
main()
{
int p,nq,max,x,i,j,n,k,r,s,tr,no ;
int a[100];
div_t xx;

for (i=0;i<100;i++)
{
a[i] =0;
}
//Tampilkan pembuka
printf("\n PROGRAM GENERATE PERMUTASI\n\n");

//input nilai n(jumlah data <maksimal 100>)
printf("Masukan nilai n : ");
scanf("%d",&n);
//input data ke dalam array
for(i=1;i<=n;i++) //ulangi untuk semua data hingga data ke-n
{
printf("Masukan nilai himpunan a[%d] : ",i);
scanf("%d",&a[i]);
}

//input nilai r
printf("nilai r : ");
scanf("%d",&tr);

//hitung nilai permutasi
p=faktorial(n);
nq=faktorial(n-tr);
if(nq==0)nq=1;
max=p/nq;

printf("nilai permutasi : %d\n\nTekan Enter untuk melihat hasil generate permutasi...\n",max);

getche();//fungsi membaca karakter keyboard
no=1;//variabel untuk menampilkan nomor

//men-generate permutasi dengan
//algoritma generate next-permutation

//genere sabanyak nilai permutasi
for(x=1;x<=max;x++)
{
printf("%3d. ",no);
for(i=1;i<=tr;i++)
printf("%d",a[i]);
printf("\n",a[i]);
no++;

j=n-1;
while(a[j] > a[j+1])
j=j-1 ; //j adalah subcript terbesar dengan aj<aj+1
k=n;
while(a[j] > a[k])
k=k-1 ; //ak adalah integer terkecil dan lebih besar dari aj

//tukar aj dan ak
i=a[k];
a[k]=a[j];
a[j]=i;

r=n;
s=j+1;
while (r>s)
{
//tukar ar dan as
i=a[r];
a[r]=a[s];
a[s]=i;

r=r-1;
s=s+1;
}
}

system("PAUSE");
return EXIT_SUCCESS;
}

Selasa, 04 Desember 2012

tugas

Tugas 3 Individu Latihan Studi Kasus

Sistem Pendukung Keputusan Klinis dalam Mendiagnosa Penyakit Unggas

Usaha ternak unggas merupakan salah satu peluang bisnis yang prospeknya sangat menjanjikan. Meskipun binis tersebut sangat menjanjikan, bukan berarti bisnis ini tidak mempunyai kendala. Begitu banyak kendala yang ditemui oleh para pengusaha peternakan. Banyak kendala yang bisa diatasi, akan tetapi tidak sedikit pula yang pada akhirnya menyebabkan peternak unggas merugi. Wawancara pada lima pengusaha ayam dan pengelolanya, menyebutkan bahwa keuntungan yang dicapai tiap kali panen tidak maksimal atau dalam kasus ini selalu ada unggas yang mati melebihi 200 ekor. Kasus terparah dari lima lokasi survey tersebut adalah kematian 4800 ekor ayam di dusun Krapyak, kecamatan Muntilan, kabupaten Magelang akibat penyakit Newcastle Disease.
Menurut beberapa pengusaha peternakan ayam, faktor yang mempengaruhi hasil panen suatu peternakan adalah konsep kandang, anak kandang, dan penanganan penyakit. Konsep kandang yang buruk dan tidak sesuai standar dari perusahaan kemitraan ayam yang menaungi pengusaha ternak mempunyai dampak pada anak ayam yang sering terjepit dan akhirnya mati. Anak kandang juga merupakan faktor penting dalam pencapaian panen yang maksimal. Anak kandang yang buruk nantinya akan berdampak pada bobot ayam yang tidak sesuai target, gesernya penghitungan ayam yang mati, dan juga manajemen pakan ayam yang melebihi takaran. Faktor berikutnya adalah penanganan penyakit. Ayam yang mati tiba-tiba hendaknya tidak langsung dibuang begitu saja, perlu adanya diagnosa terhadap ayam yang membuat pengusaha merugi seperti kasus di atas. Kesalahan diagnosa penyakit sangat mempengaruhi hasil panen.

Berdasarkan kasus diatas mengenai Aplikasi SPK Klinis dalam Mendiagnosa Penyakit Unggas yang diberikan, tentukanlah ;
a.       Identifikasi Masalah
b.       Rumusan Masalah
c.       Kebutuhan Data yang diperoleh bila diasumsikan pengumpulan data di lapangan telah dilakukan dalam bentuk tabel rangkuman hasil pengumpulan data seperti tabel di bawah ini :

No
Klasifikasi
Definisi
1
Jenis Masalah

2
Data/Fakta yang diperoleh






3
Jenis Keputusan

4
Model keputusan

5
Input sistem



6
Proses



7
Keluaran Sistem



Rabu, 28 November 2012

PERHITUNGAN SUPERNET

Pengaturan IP-Address pada super jaringan (supernet) ada prosedurnya tersendiri, yaitu sebagai berikut :
Prosedur Supernetting
1.    Pada Supernet bit Host yang bernilai nol semua berfungsi sebagai Supernet Address,  bit Host yang bernilai satu semua berfungsi sebagai Broadcast Address.
2.    Pada proses netmasking, IP-Address untuk Supernet-mask ditentukan dengan mengganti semua bit Network  dengan bit 1, dan mengganti semua bit Host (termasuk bit Host yang dipinjam dari bit Network) dengan bit 0. Contohnya pembentukan supernet dari gabungan 4 buah jaringan Kelas-C dengan meminjam 2 bit Network, maka komposisi bit 1 dan bit 0 pada proses netmasking :
Sebelum Subnetting  : 110nnnnn.nnnnnnnn. nnnnnnnn.hhhhhhhh
Proses netmasking    : 11111111 . 11111111 . 11111111. 00000000
Subnet-mask  Kls-C :     255        .     255       .     255     .        0
Setelah Supernetting :   110nnnnn.nnnnnnnn. nnnnnnHH.hhhhhhhh
Proses netmasking    :   11111111.11111111.11111100.00000000
Supernet-mask          :       255    .      255    .      252     .        0
Untuk menghitung nilai desimal dari Subnet pada proses netmasking di atas, digunakan tabel konversi Biner (Tabel IX.1).
Contoh soal :
Enam buah jaringan Kelas-C dengan Nomor Network 192.168.32, 192.168.33, 192.168.34, 192.168.35, 192.168.36 dan 192.168.37,  yang masing-masing memiliki 254 Host, akan digabungkan membentuk suatu Supernet.
a.    Tentukan penambahan bit Host yang dibutuhkan, dan Supernet Mask dari gabungan jaringan tersebut !
b.    Tentukan jumlah Host maksimum yang bisa ditampung oleh Supernet tersebut !
c.    Tentukan Supernet ID (Address), Host Range dan Supernet Broadcast  untuk Supernet tersebut !
Jawab :
a.    Jumlah bit Host yang dibutuhkan untuk menggabungkan 6 buah jaringan :
-  untuk 2 bit dapat menggabungkan maksimum 4 jaringan ( 22 = 4 ).
-  untuk 3 bit dapat menggabungkan maksimum 8 jaringan ( 23 = 8 ).
Jadi jumlah bit Host tambahan yang diperlukan adalah 3 bit.
Sebelum Supernetting : 110nnnnn.nnnnnnnn. nnnnnnnn.hhhhhhhh
Setelah Supernetting    : 110nnnnn.nnnnnnnn.nnnnnHHH.hhhhhhhh
Proses netmasking         : 11111111 . 11111111 . 11111000 . 00000000
Supernet-mask     :       255     .       255     .       248     .        0
b.    Untuk Supernet dari kelas C dengan penambahan 3 bit Host, maka  :
jumlah Host maksimum yang bisa ditampung adalah :
2(8+n)  - 2  =  2(8+3)   - 2  = 2048-2 = 2046 Host.
c.    Supernet ID (Address), Host Range dan Subnet Broadcast  untuk gabungan jaringan tersebut, adalah  :
Supernet Address :  192 . 168. 8 . 0
(alternatif lain : 192.168.16.0; 192.168.24.0; 192.168....0;...; 192.168.248.0 )
Broadcast Add: 192.168.15.255
Catatan :  Yang dibentuk hanya sebuah Supernet.
Supernetmask     :  255 . 255 . 248 . 0
Supernet ID:    192.168.8.0
192.168.8.1
.
.
.
192.168.15.254
Broadcast    192.168.15.255
H o s t   Range         :     192 .  168.  8. 1   -  192 . 168.  8 . 255 = 255
192 . 168.  9. 0   -  192 . 168.  9 . 255 = 256
192 . 168. 10. 0  -  192 . 168. 10 . 255 = 256
192 . 168. 11. 0  -  192 . 168. 11 . 255 = 256
192 . 168. 12. 0  -  192 . 168. 12 . 255 = 256
192 . 168. 13. 0  -  192 . 168. 13 . 244 = 245 +
1524 host
Catatan: agar jumlah host bisa pas dipenuhi, maka bit yg terakhir bisa diubah-ubah sehingga menjadi pas...
Supernet Broadcast  :   192 . 168. 15 . 255
Host-range yang tersedia : 2046 IP-Address.
Host-range digunakan hanya : 6 x 254 = 1524 IP-Address.
Hasil dari proses Supernetting ini mengubah komposisi antara bit Network dengan bit Host, dengan demikian hal ini akan mempengaruhi nilai Network Address, Broadcast Address dan Subnetmask Jaringan.
Sebagai contoh untuk kasus di atas :
Host dengan IP-Address 192.168.12.81/21 adalah Host yang terdapat pada baris ke 5 dari supernet yang terbentuk. Network Address =   192.168.8.0 ;
Broadcast Address = 192.168.15.255 ;
Subnetmask Jaringan =  255.255.248.0
Hal ini bisa juga diperoleh melalui perhitungan sbb. :
Masking 21 bit untuk kelas-C :  192.168.12.81/21
IP-Address
192    168    12    81
1100000    10101000    00001100    0    1010001
Supernet Mask
255    255    248    0
11111111    11111111    11111000    00000000
Network Address
192    168    8    0
1100000    10101000    00001000    00000000
Broadcast Address
192    168    15    255
1100000    10101000    00001111    11111111
Gambar :  Perhitungan Supernet Mask.
Contoh perhitungan Supernet Mask untuk IP-Address lainnya :
Masking 13 bit untuk kelas-B :  144.132.28.49/13
IP-Address
144    132    28    49
10010000    10000100    00011100    0    0110001
Supernet Mask
255    248    0    0
11111111    11111000    00000000    00000000
Network Address
144    128    0    0
10010000    10000000    00000000    00000000
Broadcast Address
144    135    255    255
10010000    10000111    11111111    11111111
Masking 20 bit untuk kelas-C : 203.172. 45.112/20
IP-Address
203    172    45    112
10001011    10101100    00101101    0    1110000
Supernet Mask
255    255    240    0
11111111    11111111    11110000    00000000
Network Address
203    172    32    0
10001011    10101100    00100000    00000000
Broadcast Address
203    172    47    255
10001011    10101100    00101111    11111111
Gambar :  Perhitungan Supernet Mask untuk kelas-B dan kelas-C

Kamis, 04 Oktober 2012

tugas eprof

etika profesi guru

tindakan yang tidak boleh di lakukan guru dan dasar nya..



  • 1.       idak boleh membedakan ,Harus adanya pemerataan pembelajaran .
  • 2.       Harus memiliki serifikat hak Pengajaran.
  • 3.       Tidak boleh menerima sogokan(uang byaran tambahan untuk memperbaiki nilai).
  • 4.       Tidak boleh mengajarkan ajaran yang menyimpang.
  • 5.       Harus men jadi panutan para siswa/siswi nya.tidakmelakukan tindakan buruk

Dan ini dasar nya ,
Pasal1
 (1)Kode Etik Guru Indonesia adalah norma dan asas yang disepakati dan diterima olehguru-guru Indonesia. Sebagai pedoman sikap dan perilaku dalam melaksan akan tugas profesi sebagai pendidik ,anggota maasyarakat dan wargan egara.

(2)Pedoman sikap dan perilaku sebagai mana yang dimaksud pada ayat (1) pasal ini adalah nilai-nilai moral yang membedakan perilaku guru yang baik dan buruk ,yang boleh dan tidak boleh dilaksanakan selama menunaikan tugas-tugas professional nya untuk mendidik, mengajar ,membimbing, mengarahkan ,melatih ,menilai,danmengevaluasi pesertadidik, serta sikap pergaulan sehari-hari didalam dan luar sekolah.

Pasal2
 (1)Kode Etik Guru Indonesia merupakan pedoman sikap dan perilaku bertujuan menempatkan guru sebagai profesi terhormat,mulia,dan bermartabat yang dilindungi undang-undang.
 (2)Kode Etik Guru Indonesia berfungsi sebagai seperangkat prinsip dan norma moral yang melandasi pelaksanaan tugas dan layanan professional guru dalam hubungan nyadengan pesertadidik,orangtua/walisiswa,sekolah dan rekanseprofesi,organisasiprofesi,dan pemerintah sesuai dengan nilai-nilai agama, pendidikan, sosial,etika dan kemanusiaan. Bagian Dua Sumpah/Janji GuruIndonesia

 Pasal3
(1)Setiap guru mengu capkan sumpah/janji guru Indonesia sebagai wujud pemahaman,penerimaan,penghormatan,dan kesediaan untuk mematuhi nilai-nilai moral yang termuat di dalam Kode Etik Guru Indonesia sebagai pedoman bersikap dan berperilaku,baik di sekolah maupun dilingkungan masyarakat.
(2)Sumpah/janji guru Indonesia diucapkan dihadapan pengurus organisasi profesi guru dan pejabat yang berwenang di wilayah kerja masing-masing.
 (3)Setiap pengambilan sumpah/janji guru Indonesia dihadiri oleh penyelenggara satuan pendidikan.

Pasal4
(1)Naskah sumpah/janji guru Indonesia di lampirkan sebagai bagian yang tidak terpisah kan dari Kode Etik Guru Indonesia.
(2)Pengambilan sumpah/janji guru Indonesia dapat dilaksanakan secara perorangan atau kelompok sebelum nya melaksanakan tugas.
Bagian Tiga Nilai-nilai Dasar dan Nilai-nilai Operasional

Pasal5

Kode Etik Guru Indonesia bersumber dari:
(1)Nilai-nilaiagamadanPancasila
(2)Nilai-nilai kompetensi pedagogik,kompetensi kepribadian, kompetensi social ,dan kompetensi profesional.
(3)Nilai-nilai jati diri,harkat dan martabat manusia yang meliputi perkembangan kesehatan jasmaniah,emosional,intelektual,sosial,dan spiritual,

Rabu, 06 Juni 2012

.ROGRAM DERAJAT GRAPH DENDGAN PASCAL

 .ROGRAM DERAJAT GRAPH  DENDGAN PASCAL
uses crt;
var
x, m,n,i,j,s:integer;
map: array[1..10,1..10] of boolean;
nil_map,temp:array[0..10,0..10] of integer;
a, derajat:array[1..10] of integer;
fi,fo:text;
procedure isi_nilai(n:integer);
{mengisi nilai kolom matrik sesuai keterhubungan}
begin
for i:= 1 to n do
for j:= 1 to n do
begin
if map[i,j]=true then
begin
nil_map[i,j]:=1;
end
else nil_map[i,j]:=0;
end;
end;
procedure baca_file(var fi:text);
begin
assign(fi,'input.in');
reset(fi);
readln(fi,n);
{m:=0;}
repeat
readln(fi,i,j);
if (i>=0) and (j>=0) then
begin
map[i,j]:=true;
map[j,i]:=true;
{inc(m);}
end;
until (i=0) and (j=0);
end;
procedure hitung(n:integer);
begin

x:=0;
a[1]:=0;
repeat
i:=1+x;
for j:= 1 to n do
begin
a[i]:=a[i]+nil_map[i,j];
end;
derajat[x+1]:=a[i];
writeln('derajat[',x+1,']:',derajat[x+1]);
inc(x);
until x=n;
end;
procedure buat_output(n:integer;var fo:text);
var k:integer;
begin

for k:= 1 to n do
begin
write(fo,'derajat[',k,']=',derajat[k]);
writeln(fo);
end;

end;
begin
baca_file(fi);
close(fi);
assign(fo,'output.out');
rewrite(fo);
isi_nilai(n);
hitung(n);
buat_output(n,fo);
close(fo);
readln;
end.ROGRAM DERAJAT GRAPH  DENDGAN PASCAL

PROGRAM C++ UNTUK MENGETAHUI GRAPH/GRAF TERHUBUNG ATAU TIDAK??

 INI ADALAH PROGRAM  C++ UNTUK MENGETAHUI GRAPH/GRAF TERHUBUNG  ATAU TIDAK??

#include <cstdlib>
#include <iostream>
using namespace std;
int main(){
bool ketemu,nolsemua;
int matrix[10] [10];
int i,j,jumlah_simpul,jumlah_sisi,asal,tujuan;
//isnisialisasi matrix
cout<<"jumlah simpul:";
cin>>jumlah_simpul;
cout<<"jumlah_sisi:";
cin>>jumlah_sisi;
for (i=1;i<=jumlah_simpul;i++)
for (j=1;j<=jumlah_simpul;j++)
matrix[i][j]=0;
//isi matrix sesuai input graf
for (i=1;i<=jumlah_sisi;i++){
cout<<"simpul asal:";
cin>>asal;
cout<<"simpul tujuan:";
cin>>tujuan;
matrix[asal][tujuan]=1;
matrix[tujuan][asal]=1;
}
//telusuri graf
i=1;nolsemua=false;
while (i<=jumlah_simpul && !nolsemua){
j=1;ketemu=false;
while (j<=jumlah_simpul && !ketemu){
if (matrix[i][j]==1)
ketemu=true;
else
j++;
}
if (!ketemu)
nolsemua=true;
else
i++;
}

if(nolsemua)
cout<<"graf tidak terhubung";
else

cout<<"graf terhubung";
//getch(4);

system ("PAUSE");
return 0;
}

Jumat, 01 Juni 2012

CSCW ADALAH

CSCW adalah cara merancang suatu sistem yang digunakan untuk membantu pekerjaan sebagai suatu group dan bagaimana memahami dampak suatu teknologi pada pola pekerjaan mereka CSCW adalah suatu sistem yang mendukung pekerjaan groupware.

Beberapa fenomena yang mempengaruhi penggunaan computer-mediated communication:

1. Personal space

* Dalam komunikasi face-to-face, setiap orang cenderung mempertahankan jarak tertentu dengan lawan bicaranya.
* Konsep personal space berbeda untuk setiap negara/budaya.
* Masalah personal space dapat timbul apabila percakapan dilakukan melalui video links.

2. Kontak dan tatapan mata

* Dalam berkomunikasi, kontak mata memberikan beberapa petunjuk, a.l. perasaan tertarik/bosan, otoritas/power, kehadiran sosial, dll.
* Video-tunnel memungkinkan kontak mata bahkan seluruh ekspresi wajah.

3. Gerak isyarat dan bahasa tubuh

* Dalam berkomunikasi, kita menggunakan tangan (gerak isyarat) untuk menunjuk sesuatu.
* Beberapa groupware system mencoba mengatasi hal tersebut dengan menggunakan group pointer.
* Banyak computer-supported meeting room menempatkan monitor pada meja sehingga para peserta dapat saling melihat dengan jelas.

4. Back channel

* Response dari pendengar berupa gerakan tubuh disebut back channel.
* Dengan adanya back channel, pembicara merasa bahwa pendengar cukup memahami pembicaraan.
* Beberapa masalah berkaitan dengan back channel yang mungkin timbul dalam komunikasi video, a.l.:
o Komunikasi video cenderung banyak menyoroti kepala dan bahu, sehingga kehilangan beberapa gerak tubuh dan isyarat.
o Layar yang besar cenderung mengurangi detail sehingga mungkin kehilangan beberapa informasi.
* Audio links (mis. telepon) hanya memiliki verbal back channel.
* Komunikasi berbasis teks biasanya tidak memiliki back channel.

5. Turn-taking

* Turn-taking adalah proses dimana peran dari pembicara dan pendengar ditukar.
* Dalam proses turn-taking, back channel biasanya merupakan bagian yang penting.
* Terjadinya proses turn-taking, a.l. karena:
* Pembicara menawarkan kesempatan kepada pendengar secara eksplisit, mis. mengajukan pertanyaan.
* Pembicara memberikan gap singkat dalam pembicaraan.
o Bentuk pemberian gap dari pembicara terutama berhubungan dengan audio channel.
o Masalah yang cukup serius dalam kaitan dengan pemberian gap timbul dalam komunikasi jarak jauh (komunikasi berbasis satelit) karena kelambatan waktu. Akan terjadi gap sekitar 4 detik.

Percakapan

Tiga fungsi teori percakapan dalam CSCW:

1. digunakan untuk menganalisa catatan (transkrip), mis. konferensi elektronik. Ini akan membantu memahami seberapa baik partisipan menyalin dengan komunikasi elektronik.
2. digunakan sebagai petunjuk untuk keputusan desain. Pemahaman percakapan normal antar manusia menghindari kesalahan besar dalam perancangan media elektronik.
3. dapat digunakan untuk mengarahkan desain, menstrukturkan sistem dengan teori.

Struktur percakapan dasar

Pada tingkat yang lebih tinggi, struktur percakapan dapat dilihat sebagai urutan giliran, biasanya pergantian di antara partisipan.

Konteks

Setiap ucapan dan fragmen dari percakapan sangat tergantung pada konteks yang digunakan untuk menghilangkan ambiguitas dari ucapan.

Ada 2 tipe konteks dalam percakapan:

1. konteks internal, tergantung pada ucapan sebelumnya.
2. konteks eksternal, tergantung pada lingkungan.

Breakdown

Breakdown dalam komunikasi terjadi apabila terdapat perbedaan fokus dari pembicara dan pendengar.

Breakdown ini dapat diperbaiki dengan pertanyaan atau ucapan dari pembicara/pendengar yang dapat menimbulkan fokus dialog yang sama.

Speech act theory

Merupakan suatu analisis yang detail dari struktur percakapan, biasanya digunakan untuk memberikan petunjuk dalam perancangan Coordinator, yaitu sistem email terstruktur yang komersial.

Komunikasi Berbasis Teks

* Dalam groupware yang asynchronous (dan beberapa sistem synchronous), bentuk komunikasi langsung yang dominan adalah berbasis teks.
* Komunikasi berbasis teks dalam sistem groupware seperti tiruan dari percakapan, sehingga terdapat beberapa masalah dalam mengadaptasi antara 2 media.

Ada 4 tipe komunikasi tekstual dalam groupware:

1. discrete; pesan langsung seperti dalam email
2. linear; pesan partisipan ditambahkan pada akhir dari catatan tunggal
3. non-linear; saat pesan dihubungkan ke yang lainnya dalam model hypertext
4. spatial; dimana pesan diatur dalam permukaan dua dimensi

Beberapa masalah yang timbul dalam komunikasi berbasis teks:

1. Back channel

* Kehilangan back channel dan nada suara serta bahasa tubuh pembicara.

2. Grounding constraint

* Adalah sifat dari channel dimana para pembicara berkomunikasi, meliputi:

1. cotemporality; ucapan didengar segera setelah diucapkan
2. simultaneity; partisipan dapat mengirim dan menerima pada waktu yang bersamaan
3. sequence; ucapan-ucapan diurutkan

* Dalam sistem berbasis teks, partisipan yang berbeda dapat menyusun simultaneously, tapi kurang cotemporality.

3. Turn taking

* Tidak adanya back channel menimbulkan kesulitan bagi pendengar untuk menginterupsi percakapan (turn-taking).

4. Konteks

* Hilangnya back channel dan kemungkinan giliran yang overlapping, menyebabkan sulitnya menentukan konteks dari ungkapan tekstual.

5. Hypertext

* Berkurangnya langkah dari percakapan berbasis teks berarti bahwa partisipan dipaksa untuk meningkatkan granulity pesan.

Rabu, 30 Mei 2012

POSTES MADIS 9

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

using namespace std;

int hasil;
//funsi faktorial :
int faktorial (int nilai)
{
hasil = nilai;
while(nilai>1)
{
hasil = hasil*(nilai-1);
nilai = nilai-1;
}
return hasil;
}
main()
{
int p,nq,max,x,i,j,n,k,r,s,tr,no ;
int a[100];
div_t xx;

for (i=0;i<100;i++)
{
a[i] =0;
}
//Tampilkan pembuka
printf("\n PROGRAM GENERATE PERMUTASI\n\n");

//input nilai n(jumlah data <maksimal 100>)
printf("Masukan nilai n : ");
scanf("%d",&n);
//input data ke dalam array
for(i=1;i<=n;i++) //ulangi untuk semua data hingga data ke-n
{
printf("Masukan nilai himpunan a[%d] : ",i);
scanf("%d",&a[i]);
}

//input nilai r
printf("nilai r : ");
scanf("%d",&tr);

//hitung nilai permutasi
p=faktorial(n);
nq=faktorial(n-tr);
if(nq==0)nq=1;
max=p/nq;

printf("nilai permutasi : %d\n\nTekan Enter untuk melihat hasil generate permutasi...\n",max);

getche();//fungsi membaca karakter keyboard
no=1;//variabel untuk menampilkan nomor

//men-generate permutasi dengan
//algoritma generate next-permutation

//genere sabanyak nilai permutasi
for(x=1;x<=max;x++)
{
printf("%3d. ",no);
for(i=1;i<=tr;i++)
printf("%d",a[i]);
printf("\n",a[i]);
no++;

j=n-1;
while(a[j] > a[j+1])
j=j-1 ; //j adalah subcript terbesar dengan aj<aj+1
k=n;
while(a[j] > a[k])
k=k-1 ; //ak adalah integer terkecil dan lebih besar dari aj

//tukar aj dan ak
i=a[k];
a[k]=a[j];
a[j]=i;

r=n;
s=j+1;
while (r>s)
{
//tukar ar dan as
i=a[r];
a[r]=a[s];
a[s]=i;

r=r-1;
s=s+1;
}
}

system("PAUSE");
return EXIT_SUCCESS;
}

DESAIN WEB


Pengertian Desain Web atau definisi Desain Web adalah jenis desain grafis yang ditujukan untuk pengembangan dan styling obyek lingkungan informasi Internet untuk menyediakan dengan fitur konsumen high-end dan kualitas estetika. Definisi yang ditawarkan memisahkan desain web dari pemrograman web, menekankan fitur fungsional dari sebuah situs web, serta desain posisi web sebagai semacam desain grafis.
Tujuan desain web adalah untuk membuat situs web atau dokumen elektronik dan aplikasi yang berada pada web server dan menampilkan konten dan fitur antarmuka interaktif kepada pengguna akhir dalam bentuk halaman Web. Seperti unsur-unsur teks, gambar (gif, jpeg) untuk ditempatkan pada halaman menggunakan HTML / XHTML / tag XML. Menampilkan media yang lebih kompleks (vektor grafis, animasi, video, suara) membutuhkan plug-in seperti Adobe Flash, QuickTime, Java run-time dan lain-lain. Plug-in juga dimasukkan ke dalam halaman web dengan menggunakan HTML / tag XHTML.
Perbaikan sesuai browser dengan standar W3C diminta penerimaan luas dan penggunaan XHTML / XML bersama dengan Cascading Style Sheets (CSS) untuk posisi dan memanipulasi unsur-unsur halaman web dan objek. Kemampuan browser untuk mengirimkan berbagai konten dan pilihan aksesibilitas kepada klien tanpa menggunakan plug-in.
Dengan spesialisasi yang tumbuh di bidang teknologi informasi ada kecenderungan kuat untuk membedakan antara desain web (web design) dan pengembangan web (web development).
Sumber: http://ewawan.com/pengertian-desain-web.html


Saat membuat , web designseorang web designer tentunya membutuhkan software. Beberapa web design software yang cukup populer ialah Adobe Dreamweaver dan tentunya beberapa program pendukungnya seperti Adobe Photoshop dan Adobe Illustrator. Tetapi untuk berbagai keperluan khusus, program-program tersebut kadang belum cukup. Dalam kenyataannya, dibutuhkan banyak program atau tools lain yang sesuai dengan kebutuhan web design. Di bawah ini kita tampilkan 10 software gratis yang sekiranya bisa dipakai untuk membuat website design secara simpel dan cepat. Gratis karena free software, jadi bisa langsung didownload tanpa membayar. Untuk mengetahui lebih detil tentang cara install, fungsi, dan pengoperasian software internet ini, silahkan kunjungi website penciptanya.

Expression Web Design Menu 1.0


Expression Web Menu Adalah sebuah web design tool untuk membuat web DropDown Menu. Anda hanya tinggal menseting jumlah tombol beserta sub itemnya, teks, link target, dan beberapa parameter lain. Di program ini sudah tersedia banyak template, yang terdiri dari 500+ button, 100+ sub menu design, 6600+ icon, dan 100+ sample.

Atrise Web Design HTMLock 2.2.0


Atrise HTMLock adalah sebuah software komputer untuk membuat proteksi password pada teks file dan HTML file. Dengan HTML tool ini Anda juga bisa membuat encrypt HTML untuk kemudian ditempatkan pada website, CD, DVD, bahkan harddisk. Free software ini berbasis JavaScript sehingga bebas digunakan dimana saja tanpa perlu database. User-Friendly wizard-nya sangan membantu Anda untuk mengenkripsi HTML dan text files dalam beberapa kali klik.

ZoloPages 1.33


Zolopages adalah program yang berfungsi meng-capture data di web page lalu menyimpannya dalam format database. Program ini berguna jika kita hendak mengambil dan menyimpan data dari situs-situs direktori seperti Yellow Pages.

RBT 1.3.1


RBT adalah sebuah browser seperti internet explorer 9 atau mozzila firefox, tetapi browser ini berbasis PHP query yang ditenagai J2EE technology. Program ini berguna jika Anda ingin membuat desain web berbasis community yang memiliki banyak user. Dengan software ini Anda bisa mengatur security setup untuk user/group access serta  mengontrol tabel & kolom databasenya.

Free Colored ScrollBars 2.2

Free Colored ScrollBars adalah sebuah tool pembuat JavaScript code dan CSS Style untuk membuat animated scrollbars pada website. Program ini disertai 44 theme warna dan template yang dapat dikostumisasi sesuai kebutuhan penggunanya.

Sigma Visual Ajax GUI builder 2.02

Sigma Visual adalah web based tool untuk aplikasi Ajax. Dengan tools ini, programmer dan developer bisa membuat website seperti yang biasa dilakukan dalam VB atau Delphi. Program ini juga mensupport code highlight dan syntax checking.

eMule Ultra Accelerator 2.8.9

Fungsi eMule Ultra Accelerator mirip dengan Internet Download Manager. Program gratis ini berfungsi untuk mempercepat proses download file dengan memaksimalkan kapasitas bandwith koneksi yang Anda miliki.

AAA Web Album 2.10

AAA Web Design Album adalah softare untuk menciptakan web photo albums lalu menguploadnya ke website. Web designer juga bisa membuat berbagai tampilan web album tersebut.

Pixel Ruler 2.0.2

Sesuai dengan namanya, Pixel Ruler berfungsi sebagai penggaris untuk mengukur panjang objek di monitor secara vertikal dan horisontal dalam satuan Pixel. Tools ini sangat berguna bagi web designer yang berkonsentrasi pada pembuatan template.

CoffeeCup Free HTML Editor 9.4

Fungsi CoffeeCup Free HTML Editor sangat mirip dengan Adobe Dreamweaver yaitu untuk mengedit file html dan PHP hingga membuat website secara komplit. Cara design web yang ditampilkan CoffeeCup cukup praktis. Selain gratis, free software ini juga jauh lebih ringan dari pada dreamweaver serta sudah mensupport HTML 5.0 dan CSS 3.0.

 

Selasa, 20 September 2011

puisi 6

andai
 
Andai kau tau berapa kadar garam dilautan

Maka kau kan tau berapa besar aku mencintamu

Andai kau tau berapa jumlah partikel air, 
maka kau kan tau pula berapa kali dlam sehari aku merindukanmu..

Tapi aku tak peduli kau sudi menyadari atau kah tidak

Yg ku tau, tak manusia terhebat yg menggatikan cintaku atas kamu...

puisi 5

' Dia...'

Dia lembut seperti kapas '
Dia indah bagaikan malaikat bersayap yang turun dari langit '
Dia anugerah terindah yang ada di hidupku '
...
Wajahnya meneduhkan jiwaku yang rapuh '
Tutur katanya menenangkan hatiku yang bimbang '
Senyumnya menghiasai hari – hariku '
Dan canda tawanya menghangatkan suasana di hidupku

puisi 5

Gadis Suciku

Kain suci menutupi auratmu….
Kebaikan menjadi perinsipmu...
Senyum senantiasa menghiasi bibirmu.
... Gadis suci itulah julukanmu.

Gadis berjilbab itulah panggilanmu.
Yang kan terus terukir dalam hatiku.
Kau sungguh makhluk terindah dalam bumiku.
Yang mampu menerangi gelap hatiku.

Kau telah merasuki relung hatiku.
Dengan kecantikan iman-mu.
Aku terpana kepadamu.
Sejak pertama ku memandangmu.

Engkaulah Gadis Suciku...!!

puisi 4

sadarkah
 
Sadarkah kamu... Tiada hariku terlewat tanpa bayangmu
. Tiada malamku berlalu tanpa memikirmu. 
Tiada tidurku terbangun tanpa memimpimu. 
Sadarkah sayang....... Cintamu tlah buat diriku mabuk kepayang. 
Lihat senyummu buatku serasa terbang
. Rayuanmu membuat anganku semakin melayang.
Oh..... Sadarkah kasih.... Cintaku untukmu tiada kan pernah mati.
Cintaku ini adalah cinta putih. Yang tercipta dari niat suci setulus hati.

puisi 3

 perih
terdengar lirih,,,,
dalam hati yg perih,,,
ingin teriakkan satu suara,,,
agar tercipta satu kebahagiaan,,,

... semua serasa tak mampu lagi,,,
seiring debtuman nafas kehidupan,,,

teronggok diam seorang diri,,,
tak tau,,,
menanti yg tak pasti,,,
wahai mentari pagi,,,
wahai bulan malam,,,
sanggupkah kau membantu,,,
sampaikan salam rinduku,,,

pungguk merindukan bulan,,,
embun merindukan mentari,,,
inilah aku yg sendiri,,,

puisi 2

Ceritakan padaku

Tentang pedihnya sebuah kehilangan
Yang terbang diatas awan senja merah saga
Dan menyisakan ngilu menikam didada
... Dalam derap waktu yg bergegas

Agar segera kubaluri hatimu
Dengan sejuk bening embun
Dan tulus cintaku
Ceritakan padaku tentang perihnya

Sebuah pengorbanan
Yg membakar habis segenap asa mu
Dan meninggalkan sepotong lara
Mengedap didasar kalbu

puisi 1

Demi Cinta

Memikirkn apa yg kan terjadi.
Kekasihku,engkau tahu.
Indahnya dirimu Menyakitkan aku.
... Kau bagaikan mawar yg berduri.

Semakin kugenggam smakin Perih.
Tak terbendung luka.
Apapun demi Cinta.
Tebaslah semua sayapku.

Bunuhlah dengan pedangmu.
Semua demi Cinta.
Kaulah pengusa hatiku.
Darah mengalir hanya untukmu.

puisi romantis

Sihir-Mu

Ketika mata ini mulai terbuka
Wajahmu melintas.
Sepintas ku berharap.
... Agar tak kau hantui lagi.

Tapi mustahil.
Nama dan pesna mu,
Melayang di hati ku.
Seiring pancaran mentari.

Senandung rindu pun mengalun,
Hati ku benar2 terjerat.
Berteriak histeris.
Memanggil cinta mu.

Hati ku sungguh2 tersihir.
Pikiran ku padamu.
Menunggu cintamu.

Kamis, 16 Juni 2011

CARA BUAT ANTIVIRUS SENDIRI

Pertama kita harus mengerti bagaimana cara kerja
sebuah AV sederhana, pada dasarnya sebuah software AV mempunyai
komponen-komponen :

1. Engine scanner, ini merupakan komponen utama AV
dalam mengenali sebuah pattern virus. Engine ini dapat dikelompokkan
menjadi statis dan dinamis. Statis dalam hal ini dapat disebut menjadi
spesifik terhadap pattern tertentu dari sebuah file virus. Checksum
merupakan salah satu contoh dari engine statis ini. Dinamis dalam
artian dia mengenali perilaku ‘umum’ sebuah virus. Heuristic menjadi
salah satu contohnya.

2. Database definition, menjadi sebuah referensi dari sebuah pattern
file virus. Engine statis sangat bergantung kepada komponen ini.

3. Decompress atau unpacking engine, khusus untuk pengecekan file-file
yang terkompresi (*.rar, *.zip, dll) atau kompresi atau packing untuk
file PE seperti UPX, MeW , dll.

Tidak jarang hasil dari pengecekan terhadap file
suspect virus menghasilkan false-positive bahkan false-negative (–
false-positive berarti file yang bersih dianggap thread oleh AV, dan
false-negative berarti file yang 100% thread akan dianggap bersih).
Semua itu dapat diakibatkan oleh ketidak-sempurnaan dari engine scanner
itu sendiri. Misal

pada contoh kasus Engine String scanner (–Engine scanner yang
menyeleksi string-string dari file text-based), bila diterapkan rule 3
out of 5 (– bila AV menemukan 3 dari daftar 5 string kategori
malicious) maka AV akan memberikan bahwa file terindikasi sebuah thread
yang positif. Padahal file tsb nyatanya tidak menimbulkan efek
berbahaya bila dijalankan atau dieksekusi. Kesalahan scanning macam ini
lazim ditemukan untuk file-file *.VBS, *.HTML, dll. Untuk penggunaan
engine checksum sangat banyak ditemui di beberapa software AV lokal.
Checksum yang lazim digunakan diantaranya CRC16, CRC32, MD5, dll.
Dikarenakan mudah untuk diimplementasikan. Engine ini sendiri bukannya
tanpa cacat, Checksum bekerja dengan memproses byte demi byte dari
sebuah file dengan sebuah algoritma tertenu (– tergantung dari jenis
checksum yang digunakan) sehingga menghasilkan sebuah format tertentu
dari file tsb. Contoh checksum menggunakan CRC32 dan MD5 :

* calCrc = CRC32(file_name_and_path)

* calMD5 = MD5(file_name_and_path)

Maka isi dari string calCrc adalah 7AF9E376,
sedangkan untuk MD5nya adalah 529CA8050A00180790CF88B63468826A. Perlu
diketahui bila virus menerapkan rutin yang mengubah byte tertentu dari
badan virus tsb setiap kali maka penggunaan engine checksum ini akan
kurang optimal karena bila 1 byte berubah dari file maka checksum juga
akan berubah.

Mari kita belajar membuat sebuah AV sederhana, yang diperlukan :

1. Software Visual Basic 6.0

2. Sedikit pemahaman akan pemograman Visual Basic 6.0

3. Sampel file bersih atau virus (– opsional)

First#

Sekarang kita akan belajar membuat sebuah rutin sederhana untuk :

- Memilih file yang akan dicek

- Membuka file tersebut dalam mode binary

- Memproses byte demi byte untuk menghasilkan Checksum

Buka MS-Visual Basic 6.0 anda, lalu buatlah sebuah
class module dan Form dengan menambahkan sebuah objek Textbox,
CommonDialog dan Command Button. (Objek CommonDialog dapat ditambahkan
dengan memilih Project -> COmponent atau Ctrl-T dan memilih
Microsoft Common Dialog Control 6.0) Ketikkan kode berikut pada class
module (kita beri nama class module tsb clsCrc) :

================= START HERE ====================

Private crcTable(0 To 255) As Long ‘crc32

Public Function CRC32(ByRef bArrayIn() As Byte, ByVal lLen As Long, Optional ByVal lcrc As Long = 0) As Long

‘bArrayIn adalah array byte dari file yang dibaca, lLen adalah ukuran atau size file

Dim lCurPos As Long ‘Current position untuk iterasi proses array bArrayIn

Dim lTemp As Long ‘variabel temp hasil perhitungan

If lLen = 0 Then Exit Function ‘keluar fungsi apabila ukuran file = 0

lTemp = lcrc Xor &HFFFFFFFF

For lCurPos = 0 To lLen

lTemp = (((lTemp And &HFFFFFF00) \\ &H100) And &HFFFFFF) Xor (crcTable((lTemp And 255) Xor bArrayIn(lCurPos)))

Next lCurPos

CRC32 = lTemp Xor &HFFFFFFFF

End Function

Private Function BuildTable() As Boolean

Dim i As Long, x As Long, crc As Long

Const Limit = &HEDB88320

For i = 0 To 255

crc = i

For x = 0 To 7

If crc And 1 Then

crc = (((crc And &HFFFFFFFE) \\ 2) And &H7FFFFFFF) Xor Limit

Else

crc = ((crc And &HFFFFFFFE) \\ 2) And &H7FFFFFFF

End If

Next x

crcTable(i) = crc

Next i

End Function

Private Sub Class_Initialize()

BuildTable

End Sub

================= END HERE ====================

Lalu ketikkan kode berikut dalam event Command1_Click :

================= START HERE ====================

Dim namaFileBuka As String, HasilCrc As String

Dim CCrc As New clsCrc ‘bikin objek baru dari class ClsCrc

Dim calCrc As Long

Dim tmp() As Byte ‘array buat file yang dibaca

Private Sub Command1_Click()

CommonDialog1.CancelError = True ‘error bila user mengklik cancel pada CommonDialog

CommonDialog1.DialogTitle = “Baca File” ‘Caption commondialog

On Error GoTo erorhandle ‘label error handle

CommonDialog1.ShowOpen

namafilbuka = CommonDialog1.FileName

Open namafilbuka For Binary Access Read As #1 ‘buka file yang dipilih dengan akses baca pada mode binary

ReDim tmp(LOF(1) – 1) As Byte ‘deklarasi ulang untuk array, # Bugs Fixed #

Get #1, , tmp()

Close #1

calCrc = UBound(tmp) ‘mengambil ukuran file dari array

calCrc = CCrc.CRC32(tmp, calCrc) ‘hitung CRC

HasilCrc = Hex(calCrc) ‘diubah ke format hexadesimal, karena hasil perhitungan dari class CRC masih berupa numeric

Text1.Text = HasilCrc ‘tampilkan hasilnya

Exit Sub

erorhandle:

If Err.Number <> 32755 Then MsgBox Err.Description ‘error number
32755 dalah bila user mengklik tombol cancel pada saat memilih file

================= END HERE ====================

COba anda jalankan program diatas dengan memencet
tombol F5, lalu klik Command1 untuk memilih dan membuka file. Maka
program akan menampilkan CRC32nya.

Second#

Kode diatas dapat kita buat menjadi sebuah rutin pengecekan file
suspect virus dengan antara membandingkan hasil CRC32nya dan database
CRC kita sendiri. Algoritmanya adalah :

- Memilih file yang akan dicek

- Membuka file tersebut dalam mode binary

- Memproses byte demi byte untuk menghasilkan Checksum

- Buka file database

- Ambil isi file baris demi baris

- Samakan Checksum hasil perhitungan dengan checksum dari file

Format file database dapat kita tentukan sendiri, misal :

- FluBurung.A=ABCDEFGH

- Diary.A=12345678

Dimana FluBurung.A adalah nama virus dan ABCDEFGH dalah Crc32nya. Jika
kita mempunyai format file seperti diatas, maka kita perlu membaca file
secara sekuensial per baris serta memisahkan antara nama virus dan
Crc32nya. Dalam hal ini yang menjadi pemisah adalah karakter ‘=’.

Buat 1 module baru (– diberi nama module1) lalu isi dengan kode :

================= START HERE ====================

Public namaVirus As String, CrcVirus As String
‘deklarasi variabel global untuk nama dan CRC virus Public pathExe as
String ‘deklarasi variabel penyimpan lokasi file EXE AV kita

Public Function cariDatabase(Crc As String, namaFileDB As String) As Boolean

Dim lineStr As String, tmp() As String ‘variabel penampung untuk isi file

Open namaFileDB For Input As #1 ‘buka file dengan mode input

Do

Line Input #1, lineStr

tmp = Split(lineStr, “=”) ‘pisahkan isi file bedasarkan pemisah karakter ‘=’

namaVirus = tmp(0) ‘masukkan namavirus ke variabel dari array

CrcVirus = tmp(1) ‘masukkan Crcvirus ke variabel dari array

If CrcVirus = Crc Then ‘bila CRC perhitungan cocok/match dengan database

cariDatabase = True ‘kembalikan nilai TRUE

Exit Do ‘keluar dari perulangan

End If

Loop Until EOF(1)

Close #1

End Function

================= END HERE ====================

Lalu tambahkan 1 objek baru kedalam Form, yaitu
Command button2. lalu ketikkan listing kode berikut kedalam event
Command2_Click :

================= START HERE ====================

If Len(App.Path) <= 3 Then ‘bila direktori kita adalah root direktori

pathEXE = App.Path

Else

pathEXE = App.Path & “\\”

End If

CommonDialog1.CancelError = True ‘error bila user mengklik cancel pada CommonDialog

CommonDialog1.DialogTitle = “Baca File” ‘Caption commondialog

On Error GoTo erorhandle ‘label error handle

CommonDialog1.ShowOpen

namafilbuka = CommonDialog1.FileName

Open namafilbuka For Binary Access Read As #1 ‘buka file yang dipilih dengan akses baca pada mode binary

ReDim tmp(LOF(1) – 1) As Byte ‘deklarasi ulang untuk array # Bugs Fixed #

Get #1, , tmp()

Close #1

calCrc = UBound(tmp) ‘mengambil ukuran file dari array

calCrc = CCrc.CRC32(tmp, calCrc) ‘hitung CRC

HasilCrc = Hex(calCrc) ‘diubah ke format hexadesimal, karena hasil perhitungan dari class CRC masih berupa numeric

If cariDatabase(HasilCrc, pathEXE & “DB.txt”) Then ‘bila fungsi bernilai TRUE

MsgBox “Virus ditemukan : ” & namaVirus ‘tampilkan message Box

End If

Exit Sub

erorhandle:

If Err.Number <> 32755 Then MsgBox Err.Description ‘error number
32755 dalah bila user mengklik tombol cancel pada saat memilih file

================= END HERE ====================

Fitur AV sederhana ini dapat ditambahkan dengan
fitur process scanner, akses registry, real-time protection (RTP) dan
lain lain. Untuk process scanner pada dasarnya adalah teknik enumerasi
seluruh proses yang sedang berjalan pada Sistem Operasi, lalu mencari
letak atau lokasi file dan melakukan proses scanning.