Tadi Praktikum MTK Diskret disuruh buat program mencari alternatif jalur terpendek dari beberapa simpul graph... Tpi, akhirnya cuma bisa jadi gini doank....
Ni Source Codenya....
#include <iostream.h>
#include <conio.h>
int main(){
int AB,AC,AD,BC,BD,CD,x,n;
cout<<"\tProgram Panjang 4 Simpul Graf\n";
cout<<"\nMasukkan panjang AB: ";cin>>AB;
cout<<"Masukkan panjang AC: ";cin>>AC;
cout<<"Masukkan panjang AD: ";cin>>AD;
cout<<"Masukkan panjang BC: ";cin>>BC;
cout<<"Masukkan panjang BD: ";cin>>BD;
cout<<"Masukkan panjang CD: ";cin>>CD;
cout<<"\nJalur yang Di cari \n1. AD \t2. BC\n";
cari:
cout<<"\nPanjang apa yg di cari? ";cin>>x;
if (x==1)
{cout<<"\nBisa lewat AD : "<<AD;
cout<<"\nBisa lewat ACD : "<<AC+CD;
cout<<"\nBisa lewat ABD : "<<AB+BD;
cout<<"\nBisa lewat ABCD : "<<AB+BC+CD;
cout<<"\nBisa lewat ACBD : "<<AC+BC+BD;{
if ((AD<AC+CD)|| (AD<AB+BC+CD))
{cout<<"\n\nJalur AD paling pendek";}
else if ((AC+CD<AD)|| (AC+CD<AB+BC+CD) ||(AC+CD<AB+BD))
{cout<<"\n\nJalur ACD paling pendek";}
else if ((AB+BD<AD)|| (AB+BD<AB+BC+CD) || (AB+BD<AC+CD))
{cout<<"\n\nJalur ABD paling pendek";}
else if ((AB+BC+CD<AD)|| (AB+BC+CD<AC+CD))
{cout<<"\n\nJalur ABCD paling pendek";}
else {cout<<"Jalur ACBD paling pendek";}}}
else if (x==2)
{cout<<"\nBisa lewat BC : "<<BC";
cout<<"\nBisa lewat BDC : "<<BD+CD;
cout<<"\nBisa lewat BAC : "<<AB+AC;
cout<<"\nBisa lewat BADC : "<<AB+AD+CD;
cout<<"\nBisa lewat BDAC : "<<BD+AD+AC;}
else {cout<<"\nPilihan gak ada / Gunakan Angka";}
cout<<"\n\nTekan 1 untuk mengulang. Jika Tidak Tekan 'Terserah'.";
cout<<"\nNgulang gak?? ";cin>>n;
if (n==1) {goto cari;}
else cout<<"\nThanks....";
getch();
return 0;}
==============
Masih butuh sedikit utak-atik nich....
0 Komentar