Code Trong Vô Thức
Đăng Nhập
Tìm kiếm
Display results as :
Advanced Search

Share
Xem chủ đề cũ hơnXem chủ đề mới hơn
avatar
Blue Knight
Blue Knight
Gender : Nam

Posts Posts : 1118
Thanked : 660
Coins Coins : 6824
Tham Gia : 26/08/2008
Birthday : 05/08/1920

Status Status : Sẽ ra sao nếu như, tao là mày và mày là tao ?
Xem lý lịch thành viên
10102012
Code:
Mauto::Mauto()
{

}

Mauto::~Mauto()
{

}
void Mauto::NhapMang()
{
   fstream file;
   file.open ("Mang.txt", ios::in);
   cout<<"Nhap Vao So n: ";
   cin>>n;

   for (int i=0; i<n; i++)
   {
      for (int j=0;j<n;j++)
      {
         file>>a[i][j];;
      }
   }
   file.close();
}

bool Mauto::KT()
{
   bool kt =true;
   for (int i =0; i<n; i++)
   {
      if (D[i].Mau==0)
      {
         kt= kt&&false;
      }
      kt=kt&&true;
   }
   return kt;
}

void Mauto::HuyCamTo()
{
   for (int i= 0; i<n; i++)
   {
      D[i].Cam=0;
   }
}

void Mauto::TaoMau()
{
   for (int i =0; i<n; i++)
   {
      D[i].Mau=0;
   }
}
//=======================================================//
//=======================================================//
void Mauto::ToMau(int mau)
{
   HuyCamTo();
   if (KT()==false)
   {
      for (int i=0; i<n; i++)
      {
         if (D[i].Mau==0 && D[i].Cam==0)
         {
            D[i].Mau=mau;
            for (int j=0; j<n; j++)
            {
               if (a[i][j])
                  D[j].Cam=1;
            }
         }
      }
      ToMau(mau+1);
   }
}

void Mauto::Xuat()
{
   for (int i=0; i<n; i++)
   {
      cout<<"Dinh thu "<<i<<" co mau: "<<D[i].Mau<<endl;
   }
}

Code:

Work::Work()
{

}

Work::~Work()
{

}

void Work::NhapMang()
{
   fstream file ("PhanCong.txt", ios::in);
   file>>n;

   file>>m;

   for (int i=0;i<n; i++)
   {
      file>>CV[i].ThoiGian;
      CV[i].SoHieu=(i+1);
   }
}

void Work::SapXep()
{
   CongViec temp1;
   for (int i=0; i<n; i++)
   {
      for (int j=i+1; j<n; j++)
      {
         if (CV[i].ThoiGian < CV[j].ThoiGian)
         {
            temp1 = CV[i];
            CV[i] = CV[j];
            CV[j] = temp1;
         }
      }
   }
}


void Work::TaoMayRong()
{
   for (int i=0; i<m; i++)
   {
      M[i].TongTG = 0;
      for (int j =0; j<(n/2); j++)
      {
         M[i].PhanCong[j] = 0;
      }
      
   }
}

int Work::TimMay()
{
   int position=0;
   int min = M[0].TongTG;

   for (int i=0; i<m; i++)
   {
      if (M[i].TongTG < min)
      {
         min = M[i].TongTG;
         position=i;
      }else continue;
   }
   return position;
}

void Work::NhapCongViec (int i, int pos, int n)
{
   
   for (int j=0; j<(n/2); j++)
   {   
      if (M[pos].PhanCong[j] == 0)
      {

         M[pos].PhanCong[j] = CV[i].SoHieu;
         break;
      }
      else continue;
   }
}

void Work::ThucHien ()
{
   
   for (int i =0; i<n; i++)
   {

      int pos = TimMay ();
      M[pos].TongTG += CV[i].ThoiGian;
      NhapCongViec(i, pos, n);
      
   }

}

//===========================================================
void Work::XuatMay()
{
   for (int i=0; i<m; i++)
   {
      cout<<"May ["<<i+1<<"] :"<<endl;
      cout<<"Tong Thoi Gian: "<<M[i].TongTG<<endl;
      for (int j=0; j <(n/2); j++)
      {
         if (M[i].PhanCong[j] != 0)
         {
            cout<<"Cong Viec: "<<M[i].PhanCong[j]<<endl;
      
         }else break;
      }
   }
}

Code:


TPho::TPho()
{

}

TPho::~TPho()
{

}
//==================Doc file txt.
void TPho::NhapTp()
{
   fstream file ("ThanhPho.txt",ios::in);
   
   file>>n;

   for (int i=0;i<n;i++)
   {
      for (int j= 0; j<n;j++)
      {
         file>>ChiPhi[i][j];
      }
   }
}

//====================Tao TP rong
void TPho::TaoTpRong()
{
   for (int i=0; i<n ;i++)
   {
      TotalCost = 0;
      Visited[i] = 0 ;
   }
}

//====================Tim TP co Cost min
int TPho::TimTp (int a, int ChiPhi[MAX][MAX])
{
   int pos;
   int min = 99;
//   for (a; a<n; a++)
//   {
      for (int j= 0; j<n; j++)
      {
         if (ChiPhi[a][j] < min)
         {
            min=ChiPhi[a][j];
            pos = j;
         }
      }
//   }
   if (Visited[pos] == 0)
   {
      return pos;
   }
   else
   {
      ChiPhi[a][pos] = 100;
      TimTp(a, ChiPhi);
   }
}

//=====================Thuc hien Chuyen di
void TPho::Thuchien (int a)
{
   if (mCity >= n)
      cout<<"Da Thuc Hien Xong"<<endl;
   else
   {
      int pos = TimTp (a, ChiPhi);
      Tour[mCity] = pos;
      mCity++;
      Visited[pos] = 1;
      TotalCost += ChiPhi[a][pos];
      ChiPhi[a][pos] = 100;
      Thuchien(pos);
   }

}
Share this post on:Excite BookmarksDiggRedditDel.icio.usGoogleLiveSlashdotNetscapeTechnoratiStumbleUponNewsvineFurlYahooSmarking

Comments

No Comment.

Xem chủ đề cũ hơnXem chủ đề mới hơn
Permissions in this forum:
Bạn không có quyền trả lời bài viết