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;
}
Tampilkan postingan dengan label madis. Tampilkan semua postingan
Tampilkan postingan dengan label madis. Tampilkan semua postingan
Rabu, 06 Juni 2012
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;
}
#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;
}
Langganan:
Postingan (Atom)