Home » » tugas program struktur data pertemuan 14

tugas program struktur data pertemuan 14

Written By Bubu Kanaeru on Minggu, 28 Juni 2020 | 02.50

Program 1

#include <iostream>
#include <conio.h>

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();

}

output


Program 2

#include <iostream>
#include <conio.h>
#include <string.h>
using namespace std;
int main()
{
    char kata1,kata2,kata3,kata4;
    int hasil1,hasil2,hasil3,hasil4,hasil5,hasil6,x;
    cout<<"DANDY ALFIANTO - 41119189"<<endl<<endl;
    cout<<"\t\t =======================\n";
    cout<<"Graf 4 simpul\n";
    cout<<"Simpul Pertama : ";
    cin>>kata1;
    cout<<"Simpul Kedua   : ";
    cin>>kata2;
    cout<<"Simpul Ketiga  : ";
    cin>>kata3;
    cout<<"Simpul Keempat : ";
    cin>>kata4;

    cout<<"Sisi-sisnya adalah : ";
    cout<<kata1<<kata2<<",";
    cout<<kata1<<kata3<<",";
    cout<<kata1<<kata4<<",";
    cout<<kata2<<kata3<<",";
    cout<<kata2<<kata4<<",";
    cout<<kata3<<kata4<<endl<<endl;

    cout<<"Jarak "<<kata1<<" ke "<<kata2<<" : ";cin>>hasil1;
    cout<<"Jarak "<<kata1<<" ke "<<kata3<<" : ";cin>>hasil2;
    cout<<"Jarak "<<kata1<<" ke "<<kata4<<" : ";cin>>hasil3;
    cout<<"Jarak "<<kata2<<" ke "<<kata3<<" : ";cin>>hasil4;
    cout<<"Jarak "<<kata2<<" ke "<<kata4<<" : ";cin>>hasil5;
    cout<<"Jarak "<<kata3<<" ke "<<kata4<<" : ";cin>>hasil6;
    cout<<endl<<endl;

    cout<<"panjang jarak pada graf totalnya = "<<hasil1+hasil2+hasil3+hasil4+hasil5+hasil6<<endl<<endl;

   cout<<"Mau cari alternatif : \n";
   cout<<"1. AD    2.CB  \n";
   cout<<"pilihan = ";;cin>>x;
   if(x==1){
     cout<<"Alternatif ke-1: "<<kata1<<kata2<<kata3<<kata4<<" = "<<hasil1+hasil2+hasil3+hasil4<<endl;
    cout<<"Alternatif ke-2: "<<kata1<<kata2<<kata4<<" = "<<hasil1+hasil2+hasil4<<endl;
    cout<<"Alternatif ke-3: "<<kata1<<kata3<<kata4<<" = "<<hasil1+hasil3+hasil4<<endl;
    cout<<"Alternatif ke-4: "<<kata1<<kata3<<kata2<<kata4<<" = "<<hasil1+hasil2+hasil3+hasil4<<endl;
    cout<<"Alternatif ke-5: "<<kata1<<kata4<<" = "<<hasil1+hasil4<<" ((ini merupakan jalur terpendek)) "<<endl<<endl; } 
else if(x==2){
    cout<<"Alternatif ke-1: "<<kata3<<kata4<<kata1<<kata2<<" = "<<hasil1+hasil2+hasil3+hasil4<<endl;
    cout<<"Alternatif ke-2: "<<kata3<<kata1<<kata2<<" = "<<hasil1+hasil2+hasil3<<endl;
    cout<<"Alternatif ke-3: "<<kata3<<kata4<<kata2<<" = "<<hasil2+hasil3+hasil4<<endl;
    cout<<"Alternatif ke-4: "<<kata3<<kata1<<kata4<<kata2<<" = "<<hasil1+hasil2+hasil3+hasil4<<endl;
    cout<<"Alternatif ke-5: "<<kata3<<kata2<<" = "<<hasil3+hasil2<<" ((ini merupakan jalur terpendek)) "<<endl<<endl; } 
   
    getch();
    return 0;
}



Program 3

#include <iostream>
#include <conio.h>
#include <string.h>
using namespace std;
int main()
{
int simpul,garis=0;
char A[20];
cout<<"DANDY ALFIANTO - 41119189"<<endl<<endl;
cout<<"banyak simpul = ";
cin>>simpul;
cout<<endl;

for (int i=0; i<simpul; i++){
cout<<"Simpul ke "<<i+1;
cout<<" = ";
cin>>A[i];
}

cout<<"\nSisi-sinya = ";
for (int i=0; i<simpul; i++){
for (int j=i+1; j<simpul; j++){
cout<<" ";
cout<<A[i]<<A[j];
}
}
getch();
return 0;
}




program 4

#include <stdlib.h>
#include <stdio.h>
#include <iostream>
using namespace std;
int ordo[5][5];
void masukkan(int a, int b, int c){
 for (int i = 1; i <= 4; i++){
  for (int j = 1; j <= 4; j++)
  if (i == a && j == b){
   ordo[a][b] = ordo[i][j];
   ordo[a][b] = c;
  }
 }
}
void tampilkan(int a, int b, int c){
 for (int i = 1; i <= 4; i++){
  for (int j = 1; j <= 4; j++)
   cout << ordo[i][j] << " ";
  cout << endl;
 }
}
void inisialisasi(){
 for (int i = 1; i <= 4; i++){
  for (int j = 1; j <= 4; j++)
   ordo[i][j] = 0;
 }
}
void menu(){
 cout << "-----------------MENU-----------------\n";
 cout << "1. Masukkan Data\n";
 cout << "2. Tampilkan\n";
 cout << "0. Keluar\n";
 cout << "Masukkan Pilihan Anda: ";
}
int main(){
 inisialisasi();
 int a, b, c;
 int m;
 do{
 
  menu();
  cin >> m;
  switch (m){
  case 1:
 
   cout << "\nMasukkan Koordinat x : ";
   cin >> a;
   cout << "Masukkan Koordinat y : ";
   cin >> b;
   cout << "Masukkan Isi : ";
   cin >> c;
   if (a <= 4 && b <= 4){
    masukkan(a, b, c);
   }
   else{
    cout << "\nIndeks harus kurang dari 4\n";
   }break;
  case 2:
     tampilkan(a, b, c); break;
  }
 } while (m != 0);
}





referensi :
http://lukmanreza.blogspot.com/2011/06/program-c-graph.html
https://yusufruli.wordpress.com/2011/06/16/panjang-jarak-dan-alternatif-panjang-simpul-graph-c/
https://yusufruli.wordpress.com/2011/06/08/graf-c/
http://kurniatyping.blogspot.com/2019/05/graf-dan-pohon-dalam-algoritma.html

0 komentar:

Posting Komentar

Dukung Dandy Alfianto ^^
Diberdayakan oleh Blogger.