Menghitung Nilai Cost Minimum pada permasalahan Transportasi

software (rename ekstensi menjadi exe


Keseluruhan SRS silakan lihat disini
Untuk source silakan download disini
/*
NAMA    : RIZA FAUZI RAHMAN
NIM        : 0800403
KELAS    : C 2008
JURUSAN    : ILMU KOMPUTER
TUGAS    : TRO
MATERI    : NORTH WEST CORNER
DOSEN    : EDDY PRASETYO,MT
*/

#include<stdio.h>
#include<conio.h>
#include”windows.h”

int main()
{
int de[20];         //Demand values
int su[20];         //Supply values
float c[20][20];      //Cost values
int i,j,k;         //Index values
int n,m;         //Column-Row
int t;         //Temp variable
float o[20],sum;      //Ans
int tot_de=0;
int tot_su=0;

printf(“|===================================================================|\n”);
printf(“|                           Riza Fauzi Rahman                       |\n”);
printf(“|                                0800403                            |\n”);
printf(“|                         Ilmu Komputer C 2008                      |\n”);
printf(“|                    Universitas Pendidikan Indonesia               |\n”);
printf(“|===================================================================|\n\n”);

printf(“____________________________________________________________________\n”);
printf(“|                               Tugas Besar TRO                     |\n”);
printf(“|                      Menghitung Nilai Cost Terkecil               |\n”);
printf(“|                       Menggunakan North West Corner               |\n”);
printf(“____________________________________________________________________\n”);
printf(“\n\n”);

printf(“Tekan tombol enter untuk memulai:”);
getchar();
system(“cls”);

printf(“____________________________________________________________________\n”);
printf(“|                               Tugas Besar TRO                     |\n”);
printf(“|                      Menghitung Nilai Cost Terkecil               |\n”);
printf(“|                       Menggunakan North West Corner               |\n”);
printf(“____________________________________________________________________\n”);
printf(“\n\n”);
//baris
printf(“\nBanyaknya daerah asal\t: “);
scanf(“%d”,&m);
//kolom
printf(“\nBanyaknya daerah tujuan\t: “);
scanf(“%d”,&n);
// suplly
printf(“\nMasukkan nilai Supply: \n”);
for(j=0;j<m;j++)
{
printf(“Masukan Supply [%d]: “,(j+1));
scanf(“%d”,&su[j]);
tot_su=tot_su+su[j];
}
//demand
printf(“\nMasukkan nilai Demand: \n”);
for(j=0;j<n;j++)
{
printf(“masukan Demand [%d]: “,(j+1));
scanf(“%d”,&de[j]);
tot_de=tot_de+de[j];
}
//menampilkan total
printf(“\n\ntotal demand: %d, total suplyy: %d”,tot_de,tot_su);
// jika total sama
if(tot_de==tot_su){
printf(“\n\nMasukkan nilai Cost: \n”);         //matrix
for(i=0;i
{
for(j=0;j<n;j++)
{
printf(“masukan Cost[%d][%d]: “,(i+1),(j+1));
scanf(“%f”,&c[i][j]);
}
}

//Menampilkan
printf(“\nMatrix Berdasarkan Supply dan Demand”);
printf(“\n__________________________________________________________________\n”);
for(i=0;i
{
for(j=0;j<n;j++)
{
printf(“%.0f\t”,c[i][j]);
}
printf(“sup: %d”,su[i]);
printf(“\n”);
}
printf(“Demand:\n”);
for(i=0;i
{
printf(“%d\t”,de[i]);
}

//North West Corner
i=j=k=0;
while(i<=m&&j<=n)
{
if(su[i]
{
t=su[i];
o[k++]=t*c[i][j];
su[i]=0;
de[j]-=t;
i++;      //Vertical direction
}
else if(su[i]>de[j])
{
t=de[j];
o[k++]=t*c[i][j];
su[i]-=t;
de[j]=0;
j++;      //Horizontal direction
}
else
{
t=de[j];
o[k++]=t*c[i][j];
su[i]=de[j]=0;
i++;
j++;      //Diagonal direction
}
}

printf(“\n\nJawaban:”);
printf(“\n\n__________________________________________________________________”);
printf(“\nJumlah dari: “);
sum=0;
for(i=0;i<(k-1);i++)
{
sum+=o[i];
printf(“%0.f\t”,o[i]);
}
printf(“\nTotal Cost Rp. %.f,00”,sum);
printf(“\n\n”);
}else{
printf(“\n\n !!! maaf total demand harus sama dengan total suplly !!!\n\n”);

}

printf(“|===================================================================|\n”);
printf(“|                       T E R I M A  K A S I H                      |\n”);
printf(“|                                  By                               |\n”);
printf(“|                           Riza Fauzi Rahman                       |\n”);
printf(“|                                0800403                            |\n”);
printf(“|                         Ilmu Komputer C 2008                      |\n”);
printf(“|                    Universitas Pendidikan Indonesia               |\n”);
printf(“|===================================================================|\n\n”);
getchar();
}

Baca lebih lanjut