Senin, 04 Juni 2012

CARI KATA

#include<cstdio>
#include<cstring>
#include<string>
#include<iostream>
#include<algorithm>

using namespace std;

void FailureFunction(char P[], int F[],int m){
    int i,j;
    F[0]=0;    //  assignment is important!
    j=0;
    i=1;
    while(i<m){ // that i is less than the length of pattern
        if(P[i]==P[j]){
            F[i]=j+1;
            i++;
            j++;
        }else if(j>0){
            j=F[j-1];
        }else {
            F[i]=0;
            i++;
        }
    }
}

int KMP(char T[], char P[]){
    int i,j,F[100];    // the maximum size of Pattern String
    int m=strlen(P);
    int n=strlen(T);
    FailureFunction(P,F,m);
    i=0;
    j=0;
    while(i<n){
        if(T[i]==P[j]){
            if(j==m-1)
                return i-j; // means, in (i-j)th position, there is a match occur
            else{
                i++;
                j++;
            }
        }else if(j>0){
            j=F[j-1];
        }else{
            i++;
        }
    }
    return -1; // No match found
}


int main(int argc, char *argv[])
{
    //freopen("in.txt","rt",stdin);
    //freopen("out.txt","wt",stdout);

    char T[1000],P[100];
   
    cout<<"teks"<<" = ";
   

    while(gets(T)){
 cout<<"pola"<<"=";
        gets(P);
        int pos=KMP(T,P);
        if(pos!=-1)
            cout<<" terdapat pada posisi ke- "<<pos<<endl;
        else
            cout<<"tidak ketemu"<<endl;

    }

    system("PAUSE");
    return EXIT_SUCCESS;
}

Senin, 07 Mei 2012

PSEUDO-CODE ALGORITMA PRIM

#include <cstdlib>
#include <iostream>

using namespace std;

class prims
{
private:
int n; //no of nodes
int graph_edge[250][4]; //edges in the graph
int g; //no of edges in the graph
int tree_edge[250][4]; //edges in the tree
int t; //no of edges in the tree
int s; //source node
//Partition the graph in to two sets
int T1[50],t1; // Set 1
int T2[50],t2; // Set 2
public:
void input();
int findset(int);
void algorithm();
void output();
};
void prims::input()
{
cout<<"*************************************************\n"
<<"This program implements the prims algorithm\n"
<<"*************************************************\n";
cout<<"Enter the no. of nodes in the undirected weighted graph ::";
cin>>n;
g=0;
cout<<"Enter the weights for the following edges ::\n";
for(int i=1;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
cout<<" < "<<i<<" , "<<j<<" > ::";
int w;
cin>>w;
if(w!=0)
{
g++;
graph_edge[g][1]=i;
graph_edge[g][2]=j;
graph_edge[g][3]=w;
}
}
}
// print the graph edges
cout<<"\n\nThe edges in the given graph are::\n";

for(int i=1;i<=g;i++)
cout<<" < "<<graph_edge[i][1]
<<" , "<<graph_edge[i][2]
<<" > ::"<<graph_edge[i][3]<<endl;
}
int prims::findset(int x)
{
for(int i=1;i<=t1;i++)
if(x==T1[i])
return 1;
for(int i=1;i<=t2;i++)
if(x==T2[i])
return 2;
return -1;
}
void prims::algorithm()
{
t=0;
t1=1;
T1[1]=1; //The source node
t2=n-1;
int i;
for(i=1;i<=n-1;i++)
T2[i]=i+1; //The reamining nodes
cout<<"\n*****The algorithm starts*****\n\n";
while(g!=0 && t!=n-1)
{
// Find the least cost edge
int min=9999;
int p;
int u,v,w;
for(i=1;i<=g;i++)
{
bool flag1=false,flag2=false;
//if u and v are in different sets
if(findset(graph_edge[i][1])!=findset(graph_edge[i][2]))
{
if(min>graph_edge[i][3])
{
min=graph_edge[i][3];
u=graph_edge[i][1];
v=graph_edge[i][2];
w=graph_edge[i][3];
p=i;
}
}

//break if there is no such edge
cout<<"The edge included in the tree is ::";
cout<<" < "<<u<<" , "<<v<<" > "<<endl;
//delete the edge from graph edges
for(int l=p;l<g;l++)
{
graph_edge[l][1]=graph_edge[l+1][1];
graph_edge[l][2]=graph_edge[l+1][2];
graph_edge[l][3]=graph_edge[l+1][3];
}
g--;
//add the edge to the tree
t++;
tree_edge[t][1]=u;
tree_edge[t][2]=v;
tree_edge[t][3]=w;
//Alter the set partitions
t1++;
int m;
if(findset(v)==2)
{
T1[t1]=v;
m=v;
}
else if(findset(u)==2)
{
T1[t1]=u;
m=u;
}
int x;
for(x=1;T2[x]!=m;x++);
for(;x<t2;x++)
T2[x]=T2[x+1];
t2--;
// Print the sets
int k;
cout<<"NOW\nT1 :: ";
for(k=1;k<=t1;k++)
cout<<T1[k]<<' ';
cout<<endl;
cout<<"T2 :: ";
for(k=1;k<=t2;k++)
cout<<T2[k]<<' ';
cout<<endl;
cout<<"The graph edges are ::\n";
for(i=1;i<=g;i++)
cout<<" < "<<graph_edge[i][1]
<<" , "<<graph_edge[i][2]
<<" > ::"<<graph_edge[i][3]<<endl;
cout<<endl<<endl;
}
}
}
void prims::output()
{
cout<<"\nThe selected edges are ::\n";
for(int i=1;i<=t;i++)
cout<<" < "<<tree_edge[i][1]
<<" , "<<tree_edge[i][2]
<<" > ::"<<tree_edge[i][3]<<endl;
}

int main(int argc, char *argv[])
{prims obj;
obj.input();
obj.algorithm();
obj.output();
    system("PAUSE");
    return EXIT_SUCCESS;
}

Kamis, 29 Maret 2012

1. Tampilan Daftar Kelompok (Awal)
<html>
<head>
</head>
<body>
<table align="center" width="100%" border="4" height="100%">
<tr align="center">
<td colspan="3">
<center><IMG SRC="Penguins.jpg" width="500px" heigth="1600px"></center>
</td>
</tr>
<tr align="left"><td><br /><b>BIODATA KELOMPOK</b>
<br />NAMA : BAYU P.09018194
<br />NAMA : WAWAN R.W.
<br />NAMA : ASWINDA A.R. 09018179
</td>
<td>
</td>
<td><a href="index.html">Hal 1</a>
<br /><a href="hal2.html">Hal 2</a>
<br /><a href="hal3.html">Hal 3</a>
</td>
</tr>
<tr align="center">
<td colspan="3">
</td>
</tr>
</table>
</body>
</html>
Halaman Awal
2. Halaman Pertama
<html>
<head>
<title>Tugas P.Web 1</title>
</head>
<body>
<a href="">Home</a>
<a href="">Profile</a>
<a href="">About</a>
<h1>Digital SIgnature</h1>
<P>Digital Signature adalah salah satu teknologi yang digunakan untuk meningkatkan keamanan jaringan.
<br /> Digital Signature memiliki fungsi sebagai penanda pada data yang memastikan bahwa data tersebut adalah
<br /> data yang sebenarnya (tidak ada yang berubah). Dengan begitu, Digital Signature dapat memenuhi
<br />setidaknya dua syarat keamanan jaringan, yaitu Authenticity dan Nonrepudiation.
<br />Cara kerja Digital Signature adalah dengan memanfaatkan dua buah kunci, yaitu kunci publik dan
<br /> kunci privat. Kunci publik digunakan untuk mengenkripsi data, sedangkan kunci privat digunakan
<br /> untuk mendekripsi data. Pertama, dokumen di-hash dan menghasilkan Message Digest. Kemudian,
<br /> Message Digest dienkripsi oleh kunci publik menjadi Digital Signature.
<br />Untuk membuka Digital Signature tersebut diperlukan kunci privat. Bila data telah diubah oleh
<br /> pihak luar, maka Digital Signature juga ikut berubah sehingga kunci privat yang ada tidak akan
<br /> bisa membukanya. Ini merupakan salah satu syarat keaman jaringan, yaitu Authenticity.
<br />Artinya adalah, keaslian data dapat terjamin dari perubahan-perubahan yang dilakukan pihak luar.
<br />Dengan cara yang sama, pengirim data tidak dapat menyangkal data yang telah dikirimkannya.
<br /> Bila Digital Signature cocok dengan kunci privat yang dipegang oleh penerima data, maka dapat
<br /> dipastikan bahwa pengirim adalah pemegang kunci privat yang sama. Ini berarti Digital Signature
<br />memenuhi salah satu syarat keamanan jaringan, yaitu Nonrepudiation atau non-penyangkalan.
</P>
</body>
</html>
3. Halaman Yang dapat Menuju ke halaman bawah
<html>
<head>
<title>Tugas P.Web 1</title>
</head>
<body>
<a href="index.html">Hal 1</a>
<a href="hal2.html">Hal 2</a>
<a href="hal3.html">Hal 3</a>
<br />
<a href="#bottom">Bottom</a>
<br />
<h3>Digital Signature</h3>
<P id="#top">
Digital Signature adalah salah satu teknologi yang digunakan untuk meningkatkan keamanan jaringan.
<br /> Digital Signature memiliki fungsi sebagai penanda pada data yang memastikan bahwa data tersebut adalah
<br /> data yang sebenarnya (tidak ada yang berubah). Dengan begitu, Digital Signature dapat memenuhi
<br />setidaknya dua syarat keamanan jaringan, yaitu Authenticity dan Nonrepudiation.
<br />Cara kerja Digital Signature adalah dengan memanfaatkan dua buah kunci, yaitu kunci publik dan
<br /> kunci privat. Kunci publik digunakan untuk mengenkripsi data, sedangkan kunci privat digunakan
<br /> untuk mendekripsi data. Pertama, dokumen di-hash dan menghasilkan Message Digest. Kemudian,
<br /> Message Digest dienkripsi oleh kunci publik menjadi Digital Signature.
<br />Untuk membuka Digital Signature tersebut diperlukan kunci privat. Bila data telah diubah oleh
<br /> pihak luar, maka Digital Signature juga ikut berubah sehingga kunci privat yang ada tidak akan
<br /> bisa membukanya. Ini merupakan salah satu syarat keaman jaringan, yaitu Authenticity.
<br />Artinya adalah, keaslian data dapat terjamin dari perubahan-perubahan yang dilakukan pihak luar.
<br />Dengan cara yang sama, pengirim data tidak dapat menyangkal data yang telah dikirimkannya.
<br /> Bila Digital Signature cocok dengan kunci privat yang dipegang oleh penerima data, maka dapat
<br /> dipastikan bahwa pengirim adalah pemegang kunci privat yang sama. Ini berarti Digital Signature
<br />memenuhi salah satu syarat keamanan jaringan, yaitu Nonrepudiation atau non-penyangkalan.
</P>
<P>Digital Signature adalah salah satu teknologi yang digunakan untuk meningkatkan keamanan jaringan.
<br /> Digital Signature memiliki fungsi sebagai penanda pada data yang memastikan bahwa data tersebut adalah
<br /> data yang sebenarnya (tidak ada yang berubah). Dengan begitu, Digital Signature dapat memenuhi
<br />setidaknya dua syarat keamanan jaringan, yaitu Authenticity dan Nonrepudiation.
<br />Cara kerja Digital Signature adalah dengan memanfaatkan dua buah kunci, yaitu kunci publik dan
<br /> kunci privat. Kunci publik digunakan untuk mengenkripsi data, sedangkan kunci privat digunakan
<br /> untuk mendekripsi data. Pertama, dokumen di-hash dan menghasilkan Message Digest. Kemudian,
<br /> Message Digest dienkripsi oleh kunci publik menjadi Digital Signature.
<br />Untuk membuka Digital Signature tersebut diperlukan kunci privat. Bila data telah diubah oleh
<br /> pihak luar, maka Digital Signature juga ikut berubah sehingga kunci privat yang ada tidak akan
<br /> bisa membukanya. Ini merupakan salah satu syarat keaman jaringan, yaitu Authenticity.
<br />Artinya adalah, keaslian data dapat terjamin dari perubahan-perubahan yang dilakukan pihak luar.
<br />Dengan cara yang sama, pengirim data tidak dapat menyangkal data yang telah dikirimkannya.
<br /> Bila Digital Signature cocok dengan kunci privat yang dipegang oleh penerima data, maka dapat
<br /> dipastikan bahwa pengirim adalah pemegang kunci privat yang sama. Ini berarti Digital Signature
<br />memenuhi salah satu syarat keamanan jaringan, yaitu Nonrepudiation atau non-penyangkalan.
</P>
<P>Digital Signature adalah salah satu teknologi yang digunakan untuk meningkatkan keamanan jaringan.
<br /> Digital Signature memiliki fungsi sebagai penanda pada data yang memastikan bahwa data tersebut adalah
<br /> data yang sebenarnya (tidak ada yang berubah). Dengan begitu, Digital Signature dapat memenuhi
<br />setidaknya dua syarat keamanan jaringan, yaitu Authenticity dan Nonrepudiation.
<br />Cara kerja Digital Signature adalah dengan memanfaatkan dua buah kunci, yaitu kunci publik dan
<br /> kunci privat. Kunci publik digunakan untuk mengenkripsi data, sedangkan kunci privat digunakan
<br /> untuk mendekripsi data. Pertama, dokumen di-hash dan menghasilkan Message Digest. Kemudian,
<br /> Message Digest dienkripsi oleh kunci publik menjadi Digital Signature.
<br />Untuk membuka Digital Signature tersebut diperlukan kunci privat. Bila data telah diubah oleh
<br /> pihak luar, maka Digital Signature juga ikut berubah sehingga kunci privat yang ada tidak akan
<br /> bisa membukanya. Ini merupakan salah satu syarat keaman jaringan, yaitu Authenticity.
<br />Artinya adalah, keaslian data dapat terjamin dari perubahan-perubahan yang dilakukan pihak luar.
<br />Dengan cara yang sama, pengirim data tidak dapat menyangkal data yang telah dikirimkannya.
<br /> Bila Digital Signature cocok dengan kunci privat yang dipegang oleh penerima data, maka dapat
<br /> dipastikan bahwa pengirim adalah pemegang kunci privat yang sama. Ini berarti Digital Signature
<br />memenuhi salah satu syarat keamanan jaringan, yaitu Nonrepudiation atau non-penyangkalan.
</P>
<P>Digital Signature adalah salah satu teknologi yang digunakan untuk meningkatkan keamanan jaringan.
<br /> Digital Signature memiliki fungsi sebagai penanda pada data yang memastikan bahwa data tersebut adalah
<br /> data yang sebenarnya (tidak ada yang berubah). Dengan begitu, Digital Signature dapat memenuhi
<br />setidaknya dua syarat keamanan jaringan, yaitu Authenticity dan Nonrepudiation.
<br />Cara kerja Digital Signature adalah dengan memanfaatkan dua buah kunci, yaitu kunci publik dan
<br /> kunci privat. Kunci publik digunakan untuk mengenkripsi data, sedangkan kunci privat digunakan
<br /> untuk mendekripsi data. Pertama, dokumen di-hash dan menghasilkan Message Digest. Kemudian,
<br /> Message Digest dienkripsi oleh kunci publik menjadi Digital Signature.
<br />Untuk membuka Digital Signature tersebut diperlukan kunci privat. Bila data telah diubah oleh
<br /> pihak luar, maka Digital Signature juga ikut berubah sehingga kunci privat yang ada tidak akan
<br /> bisa membukanya. Ini merupakan salah satu syarat keaman jaringan, yaitu Authenticity.
<br />Artinya adalah, keaslian data dapat terjamin dari perubahan-perubahan yang dilakukan pihak luar.
<br />Dengan cara yang sama, pengirim data tidak dapat menyangkal data yang telah dikirimkannya.
<br /> Bila Digital Signature cocok dengan kunci privat yang dipegang oleh penerima data, maka dapat
<br /> dipastikan bahwa pengirim adalah pemegang kunci privat yang sama. Ini berarti Digital Signature
<br />memenuhi salah satu syarat keamanan jaringan, yaitu Nonrepudiation atau non-penyangkalan.
</P>
<P>Digital Signature adalah salah satu teknologi yang digunakan untuk meningkatkan keamanan jaringan.
<br /> Digital Signature memiliki fungsi sebagai penanda pada data yang memastikan bahwa data tersebut adalah
<br /> data yang sebenarnya (tidak ada yang berubah). Dengan begitu, Digital Signature dapat memenuhi
<br />setidaknya dua syarat keamanan jaringan, yaitu Authenticity dan Nonrepudiation.
<br />Cara kerja Digital Signature adalah dengan memanfaatkan dua buah kunci, yaitu kunci publik dan
<br /> kunci privat. Kunci publik digunakan untuk mengenkripsi data, sedangkan kunci privat digunakan
<br /> untuk mendekripsi data. Pertama, dokumen di-hash dan menghasilkan Message Digest. Kemudian,
<br /> Message Digest dienkripsi oleh kunci publik menjadi Digital Signature.
<br />Untuk membuka Digital Signature tersebut diperlukan kunci privat. Bila data telah diubah oleh
<br /> pihak luar, maka Digital Signature juga ikut berubah sehingga kunci privat yang ada tidak akan
<br /> bisa membukanya. Ini merupakan salah satu syarat keaman jaringan, yaitu Authenticity.
<br />Artinya adalah, keaslian data dapat terjamin dari perubahan-perubahan yang dilakukan pihak luar.
<br />Dengan cara yang sama, pengirim data tidak dapat menyangkal data yang telah dikirimkannya.
<br /> Bila Digital Signature cocok dengan kunci privat yang dipegang oleh penerima data, maka dapat
<br /> dipastikan bahwa pengirim adalah pemegang kunci privat yang sama. Ini berarti Digital Signature
<br />memenuhi salah satu syarat keamanan jaringan, yaitu Nonrepudiation atau non-penyangkalan.
</P>
<P id="bottom">
Digital Signature adalah salah satu teknologi yang digunakan untuk meningkatkan keamanan jaringan.
<br /> Digital Signature memiliki fungsi sebagai penanda pada data yang memastikan bahwa data tersebut adalah
<br /> data yang sebenarnya (tidak ada yang berubah). Dengan begitu, Digital Signature dapat memenuhi
<br />setidaknya dua syarat keamanan jaringan, yaitu Authenticity dan Nonrepudiation.
<br />Cara kerja Digital Signature adalah dengan memanfaatkan dua buah kunci, yaitu kunci publik dan
<br /> kunci privat. Kunci publik digunakan untuk mengenkripsi data, sedangkan kunci privat digunakan
<br /> untuk mendekripsi data. Pertama, dokumen di-hash dan menghasilkan Message Digest. Kemudian,
<br /> Message Digest dienkripsi oleh kunci publik menjadi Digital Signature.
<br />Untuk membuka Digital Signature tersebut diperlukan kunci privat. Bila data telah diubah oleh
<br /> pihak luar, maka Digital Signature juga ikut berubah sehingga kunci privat yang ada tidak akan
<br /> bisa membukanya. Ini merupakan salah satu syarat keaman jaringan, yaitu Authenticity.
<br />Artinya adalah, keaslian data dapat terjamin dari perubahan-perubahan yang dilakukan pihak luar.
<br />Dengan cara yang sama, pengirim data tidak dapat menyangkal data yang telah dikirimkannya.
<br /> Bila Digital Signature cocok dengan kunci privat yang dipegang oleh penerima data, maka dapat
<br /> dipastikan bahwa pengirim adalah pemegang kunci privat yang sama. Ini berarti Digital Signature
<br />memenuhi salah satu syarat keamanan jaringan, yaitu Nonrepudiation atau non-penyangkalan.
</P>
<br />
<a href="#top">Top</a>
<br />
</body>
</html>
4. Halaman Pengunjung
<html>
<head>
<title>Tugas P.Web 1</title>
</head>
<body>
<a href="index.html">Hal 1</a>
<a href="hal2.html">Hal 2</a>
<a href="hal3.html">Hal 3</a>
<br/>
<form action="" method="">
<label>Nama</label>
<input type="text" />
<br>
<label>Alamat</label>
<input type="text" />
<br>
<label>Telp</label>
<input type="text" />
<br>
<input type="submit" value="Save" />
</form>
</body>
</html>

Senin, 26 Maret 2012

#include <cstdlib>
#include <iostream>
#include <conio.h>
#include<ctype.h>
#include<math.h>

using namespace std;



int main(int argc, char *argv[])
{
   
int isprime(int P);
      for(int n=1; n<50;n++)
      if (isprime(n)) cout<<n<<" ";

      cout<<endl;
      }
      int isPrime(int p)
      {
          float sqrtp=sqrt(p);
          if(p<2)return 0;  //2 is

          if(p==2)return 1;
          if (p%2==0) return 0; // 2 is
     
          for (int d=3;d<=sqrtp;d+=2)
          if(p%d==0)return 0;
          return 1;
       

    system("PAUSE");
    return EXIT_SUCCESS;
}

Kamis, 05 Januari 2012

STRING

Fungsi Manipulasi String
String dapat dimanipulasi dengan aturan tertentu. Berikut adalah fungsi-fungsi yang digunakan untuk melakukan manipulasi string.

Fungsi strcat
Fungsi strcat digunakan untuk menggabungkan dua string menjadi satu.
Contoh penggunaaan :
char *str1 = "halo";
char *str2 = "dunia";
char *str3 = strcat(str1, str2);
Maka nilai dari str3 adalah : halo dunia

Sabtu, 17 Desember 2011

MACAM-MACAM PENYAKIT PARU-PARU



1.Emfisema
  • Penyebab: Emfisema disebabkan karena hilangnya elastisitas alveolus. Alveolus sendiri adalah gelembung-gelembung yang terdapat dalam paru-paru. Pada penderita emfisema, volume paru-paru lebih besar dibandingkan dengan orang yang sehat karena karbondioksida yang seharusnya dikeluarkan dari paru-paru terperangkap didalamnya. Asap rokok dan kekurangan enzim alfa-1-antitripsin adalah penyebab kehilangan elastisitas pada paru-paru ini.
  • Gejala: Sesak napas dalam waktu lama dan tidak dapat disembuhkan dengan obat pelega yang biasa digunakan penderita sesak napas. Nafsu makan yang menurun dan berat badan yang menurun juga biasa dialami penderita emfisema.
  • Pencegahan dan solusi: Menghindari asap rokok adalah langkah terbaik untuk mencegah penyakit ini. Berhenti merokok juga sangat penting.