PDA

View Full Version : سوال: Debug یک برنامه کوچیک



Metaldevil
شنبه 21 اسفند 1389, 11:05 صبح
درود بر همه دوستان
من برای پروژه پایانیم باید یه الگوریتمی رو پیاده سازی کنم.
پیاده سازی تموم شده الان تو Debug کردنش گیر کردم، یعنی جواب مطلوب رو بهم نمیده.
این شبه کد برنامه هستش
67389
و این هم کد C#
public double Cost(int intFragment, int intSite, clsInputArrays objInputArrays, clsInputs objInputs)
{
int intSk, intTi, intN, intN1, intCounter;
double dblCost, dblNCTR, dblN1CTR, dblT1, dblT2;

clsCommunicationCost objCommunicationCost = new clsCommunicationCost();

dblCost = 0;

for (intSk = 0; intSk < objInputs.intSites; intSk++)
{
intN = 1000000000;
intN1 = 1000000000;
dblT1 = 0;
dblT2 = 0;
dblNCTR = 1;
dblN1CTR = 1;

for (intCounter = 0; intCounter < objInputs.intSites; intCounter++)
{
if ((intSk != intCounter) && (objInputArrays.CTR[intSk, intCounter] < dblNCTR))
{
intN = intCounter;
dblNCTR = objInputArrays.CTR[intSk, intCounter];
}
}

if (intN == intSite)
{
for (intTi = 0; intTi < objInputs.intTransactions; intTi++)
{
dblT1 += objInputArrays.FREQ[intTi, intSk] * objInputArrays.RM[intTi, intFragment] * objCommunicationCost.CommunicationCost(intSk, intN, intTi, intFragment, objInputArrays, objInputs);
}

for (intCounter = 0; intCounter < objInputs.intSites; intCounter++)
{
if ((intSk != intCounter) && (objInputArrays.CTR[intSk, intCounter] < dblN1CTR) && (intN1 > intN))
{
intN1 = intCounter;
dblN1CTR = objInputArrays.CTR[intSk, intCounter];
}
}

for (intTi = 0; intTi < objInputs.intTransactions; intTi++)
{
dblT2 += objInputArrays.FREQ[intTi, intSk] * objInputArrays.RM[intTi, intFragment] * objCommunicationCost.CommunicationCost(intSk, intN1, intTi, intFragment, objInputArrays, objInputs);
}

dblCost += (dblT2 - dblT1);
}
}

return dblCost;
}

ممنون می سم تو debug کمکم کنین.
کلاس CommunicationCost جواب درستی بر می گردونه.