Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Pascal | c++

Ответить
Настройки темы
C/C++ - Pascal | c++

Аватара для Snake750

Старожил


Сообщения: 175
Благодарности: 0

Профиль | Отправить PM | Цитировать


Это снова я.все ошибки исправил,но прога работает не правильно.гляньте "свежым взлядом" что я не так сделал.работает почему то только половина программы.
выкладываю исходную версию на паскале и мою на с++.переделывал в среде microsoft visual studio 2008
Код: Выделить весь код
#include "stdafx.h"
#include <iostream>
#include <string.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
#include <math.h>
#include <iomanip>
using namespace std;
const 
int N=6;
int n1=7;
int n2=7;
long int Sa=0;
long int Sb=0;
typedef long int predpr[N];
typedef long int rasp[N][N];
predpr A,B,alfa,betta,B_d,x;
rasp c,p;
int Na,Nb,i,k,j;
long int f,f0,x_min,Sp;
unsigned char Nt,x_p,r,r_min,ki,kj,h,l;
char d;
unsigned char u[N*N];
void gotoxy(int x, int y)// Аналог функции gotoxy в Паскале
{
COORD coord;
coord.X = x;
coord.Y = y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);	
}
void div_mod(char c, char a, char b)
{ b=(c%Nb);
 a=(c/Nb)+1;
 if (b==false) 
{b=Nb;
a--;
}
}

void Rek(unsigned char Xi,unsigned char Yi,bool z, unsigned char   c)
{
int i,j;
z=false;
switch (c)
{case 1:{for (i=1;i<=Na;i++) if (i!=Xi) if (p[i][Yi]>-1) 
{
if (u[(i-1)*Nb+Yi]==0) { u[(Xi-1)*Nb+Yi]=(i-1)*Nb+Yi;
c=2;
Rek(i,Yi,z,c);
if (z==true) exit;
}
} 
else if ((i==ki) && (Yi==kj)) 
{u[(Xi-1)*Nb+Yi]=(ki-1)*Nb+kj;
z=!z;
exit;
}
break;}
case 2:{ for (i=1;i<=Nb;i++) if (i!=Yi) if (p[Xi][i]>-1)
{if (u[(Xi-1)*Nb+i]==0) 
{u[(Xi-1)*Nb+Yi]=(Xi-1)*Nb+i;
c=1;
Rek(Xi,i,z,c);
if (z==true)  exit;
	   }} else if ((Xi==ki) && (i==kj)) 
{u[(Xi-1)*Nb+Yi]=(ki-1)*Nb+kj;
z=!z;
exit;
}u[(Xi-1)*Nb+Yi]=0;
	   c=c%2+1;
	   }break;}}

void kontur()
{int i,j,k,mi,mj,l;
bool z;
long int p_m;
for (i=1;i<=N*N;i++) u[i]=0;
l=1;
Rek(ki,kj,z,l);
i=ki; j=kj;
k=u[(i-1)*Nb+j];
div_mod(k,i,j);
mi=i;
mj=j;
l=1;
do
{l++;
k=u[(i-1)*Nb+j];
div_mod(k,i,j);
if (l%2==1) 
if (p[i][j]<p[mi][mj]) 
{
mi=i; mj=j;
}}
while ((i==ki) && (j==kj));
i=ki; j=kj; l=0;
p_m=p[mi][mj];
do
{
if (l%2==0) 
{
p[i][j]=p[i][j]+p_m;
} else 
{
p[i][j]=p[i][j]-p_m;
}
if (l==0) p[i][j]++;
k=u[(i-1)*Nb+j];
div_mod(k,i,j);
l++;}
while ((i==ki) && (j==kj));
p[mi][mj]=-1;
}

long int  FF()
{int i,j;
long int f;
f=0;
for (i=1;i<=Na;i++)
for (j=1;j<=Nb;j++)
if (p[i][j]>0) 
{f=f+c[i][j]*p[i][j];
}
//i++;
//j++;
gotoxy(65,Nt+2);
std::cout<<"F"<<"="<<f;
return f;
}
void Pauza()
{char ad;
//d=KeyPressed;
d=getch();
gotoxy(40,1);
system("cls");
}
int kkk(unsigned char ki,unsigned char kj)
{int i,j;
int k,k_min;
bool b;
b=true;
for (i=1;i<=Na;i++)
for (j=1;j<=Nb;j++)
if (p[i][j]==-1)
{k=c[i][j]-alfa[i]-betta[j];
if (b==true)
{b=false;
ki=i;
kj=j;
k_min=k;
} else if (k<k_min) 
{k_min=k;
ki=j;
kj=j;
}}
return k_min;
}

void PrintS(int x,int  y, char  s[30])
{gotoxy(x,y);
cout<<s;
}
void Print(int x,int y,long int a )
{gotoxy(x,y);
cout<<"   "<<a;
}
void Nul(predpr a)
{int i;
for (i=1;i<=N;i++)
{a[i]=0;}
}
void Tabl()
{system("cls");
h=6+Na*3;
l=14+Nb*7;
gotoxy(1,3);
for (i=1;i<=Na+1;i++)
{gotoxy(1,i*3+2);
}
for (i=1;i<=Na;i++)
{gotoxy(5,i*3+3);
std::cout<<"A"<<i;
}
for (i=1;i<=Nb;i++)
{gotoxy(i*(n1+1)+n2-2,3);
std::cout<<"B"<<i;
}
l=Nb*(n1+1)+n2+3;
h=Na*3+6;
PrintS(4,3,"\\Bj");
PrintS(4,4,"Ai\\");
PrintS(l,4,"Ui");
PrintS(3,h," Vj");

}
bool a_b()
{int k,i,j;
predpr Z_a,Z_b;
bool d;
Nul(Z_a);
Nul(Z_b);
alfa[1]=0;
Z_a[1]=1;
k=1;
do
{d=true;
for (i=1;i<=Na;i++)
if (Z_a[i]==1)
for (j=1;j<=Nb;j++)
if ((p[i][j]>-1)&&(Z_b[j]==0))
{
Z_b[j]=1;
betta[j]=c[i][j]-alfa[i];
k++;
d=false;
}
for (i=1;i<=Nb;i++)
if (Z_b[i]==1) for (j=1;j<=Na;j++)
if  ((p[i][j]>-1)&&(Z_a[j]==0)) 
{Z_a[j]=1;
alfa[j]=c[i][j]-betta[i];
k++;
d=false;
}}
while ((k==Na+Nb) || d);
if (d==true) 
{i=1;
while (Z_a[i]==1)
{
i++;
}
j=1;
while (Z_b[j]==0) 
{
j++;
}
p[i][j]=0;
Print((j+1)*(n1+1)+n2-8,i*3+4,p[i][j]);
}
return d;
}
void W_P()
{int i,j,h,l,k;
long int c_max;
k=0;
for (i=1;i<=Na;i++)
{
h=i*3+4;
for (j=1;j<=Nb;j++) 
{
l=j*(n1+1)+n2-5;
gotoxy(l,h);
std::cout<<std::setw(n1)<<" ";
if (p[i][j]>0) 
{
k++;
Print(l-floor(log((double)p[i][j])/log(10.0))+5,h,p[i][j]);
}
else if (p[i][j]==0) 
{
Print(l+n1-2,h,p[i][j]);
k++;
}}}
while (a_b()==true) 
{k++;}
if (k>Na+Nb-1) PrintS(40,1,"k > n+m-1");
}
void W_W(predpr a,unsigned char b,char c)
{int i,l,m;
for (i=1;i<=b;i++)
{gotoxy(32,1);
//system("cls");
std::cout<<c<<i<<"= ";
cin>>a[i];
switch (c)
{case 'A':{gotoxy(n2-floor(log((double)a[i])/log(10.0)),i*3+4);break;}
case 'B': {gotoxy(n2+i*(n1+1)-floor(log((double)a[i])/log(10.0)),4);break;}
}
std::cout<<a[i];
}
}

int _tmain(int argc, _TCHAR* argv[])
{
Nul(alfa); 
Nul(betta);
Nt=1;
system("cls");
std::cout<<"Postavshiki:";
std::cin>>Na;
std::cout<<"Potrebiteli:";
std::cin>>Nb;
Tabl();
////////////////////////////////////////
PrintS(1,1,"Kol-vo tovara:");
W_W(A,Na,'A');
W_W(B,Nb,'B');
gotoxy(1,1);
cout<<"Stoimost peremozki:";
for (i=1;i<=Na;i++)
for (j=1;j<=Nb;j++)
{
gotoxy(29,1);
cout<<"A"<<i<<" - B"<<j<<" \t ";
cin>>c[i][j];
Print((n1+1)*j+n2-4,i*3+3,c[i][j]);
}
//////////////////////////////////////
gotoxy(1,1);
//ClrEOL;
for (i=1;i<=Na;i++) Sa=Sa+A[i];
for (i=1;i<=Nb;i++) Sb=Sb+B[i];
if (Sa!=Sb) 
{
//d:=ReadKey;
//d=getch();
if (Sa>Sb) 
{
Nb++;
B[Nb]=Sa-Sb;
for (i=1;i<=Na;i++) c[i][Nb]=0;
} else 
{
Na++;
A[Na]=Sb-Sa;
for (i=1;i<=Nb;i++) c[Na][i]=0;
}
Tabl();
for (i=1;i<=Na;i++)
for (j=1;j<=Nb;j++) Print((n1+1)*j+n2-4,i*3+3,c[i][j]);
for (i=1;i<=Na;i++)
Print(n2-floor(log((double)A[i])/log(10.0)),i*3+4,A[i]);
for (i=1;i<=Nb;i++)
Print(n2+i*(n1+1)-floor(log((double)B[i])/log(10.0)),4,B[i]);
}
//////////////////////////////////////
for (i=1;i<=Nb;i++) B_d[i]=B[i];
for (i=1;i<=Na;i++) 
{
for (j=1;j<=Nb;j++) x[j]=j;
for (j=1;j<=Nb-1;j++) 
{
x_min=c[i][x[j]];
r_min=j;
for (r=j+1;r<=Nb;r++) 
if ((x_min>c[i][x[r]]) ||((x_min==c[i][x[r]]) && (B[x[r]]>B[x[r_min]]))) 
{
x_min=c[i][x[r]];
r_min=r;
}
x_p=x[r_min];
x[r_min]=x[j];
x[j]=x_p;
}
Sp=0;
for (j=1;j<=Nb;j++) 
{
p[i][x[j]]=B_d[x[j]];
if (p[i][x[j]]>A[i]-Sp)  p[i][x[j]]=A[i]-Sp;
//inc(Sp,p[i,x[j]]);
Sp=Sp+p[i][x[j]];
//dec(B_d[x[j]],p[i,x[j]]);
B_d[x[j]]-B_d[x[j]]-p[i][x[j]];
}
}
///////////////////////////////////////////////
for (i=1;i<=Na;i++)
for (j=1;j<=Nb;j++) if (p[i][j]==0) p[i][j]=-1;
W_P();
f=FF(); 
f0=f;
while (a_b()==true) 
for (i=1;i<=Na;i++)
Print(l+1,i*3+3,alfa[i]);

for (i=1;i<=Nb;i++) 
Print(i*(n1+1)+n2-4,h,betta[i]);
                                                    //Pauza();
while (kkk(ki,kj)<0)  
{
kontur();
													//Pauza();
for (i=1;i<=Na;i++) 
for (j=1;j<=Nb;j++) PrintS((n1+1)*j+n2-1,i*3+3,"   ");
Nt++;
gotoxy(1,1);
W_P();
f0=f; 
f=FF();
if (a_b()==true)  goto l1;
for (i=1;i<=Na;i++) Print(l+1,i*3+3,alfa[i]);
for (i=1;i<=Nb;i++) Print(i*(n1+1)+n2-4,h,betta[i]);
													//Pauza;
}
/////////////////////////////////////////////
for (i=1;i<=Na;i++)
for (j=1;j<=Nb;j++) if (p[i][j]==-1) 
{
h=i*3+4;
l=j*(n1+1)+n2-5;
gotoxy(l,h);
std::cout<<std::setw(n1)<<" ";
}
gotoxy(40,1);
l1:d=getch();

getch();
	return 0;
}
Код: Выделить весь код
Program transportnaj_zadatsha;
Uses Crt;
Label l1;
Const N=6;
n1=7; n2=7;
Sa:longint=0;
Sb:longint=0;
Type predpr=Array [1..N] of longint;
rasp=Array [1..N,1..N] of longint;
Var A,B,alfa,betta,B_d,x:predpr;
c,p:rasp;
f,f0,x_min,Sp:longint;
Nt,x_p,r,r_min,ki,kj,Na,Nb,h,l,i,j:byte;
d:char;
u:Array[1..N*N] of byte;
//..................................
Procedure Nul (var a:predpr);
var i:byte;
Begin
for i:=1 to N do a[i]:=0;
End;
//..................................
Procedure PrintS (x,y:byte; s:string);
Begin
GotoXY(x,y);
Write(s);
End;
//..................................
Procedure Print (x,y:byte;a:longint);
Begin
GotoXY(x,y); Write(a);
End;
//..................................
Procedure Tabl;
Begin
ClrScr;
h:=6+Na*3;
l:=14+Nb*7;
GotoXY(1,3);
{for i:=1 to Na+1 do begin
GotoXY(1,i*3+2);
end;}
for i:=1 to Na do begin
GotoXY(5,i*3+3);
Write('A',i);
end;
for i:=1 to Nb do begin
GotoXY(i*(n1+1)+n2-2,3);
Write('B',i);
end;
l:=Nb*(n1+1)+n2+3;
h:=Na*3+6;
PrintS(4,3,'\Bj');
PrintS(4,4,'Ai\');
PrintS(l,4,'Ui');
PrintS(3,h,' Vj');
End;
//..................................
Function FF:longint;
var i,j:integer;
f:longint;
Begin
f:=0;
for i:=1 to Na do
for j:=1 to Nb do
if p[i,j]>0 then
// inc(f,c[i,j]*p[i,j]);
f:=f+c[i,j]*p[i,j];
i:=i+1;
j:=j+1;
GotoXY(65,Nt+2);
Write('F',Nt,'=',f);
FF:=f;
End;
//..................................
Function a_b:boolean;
var k,i,j:byte;
Z_a,Z_b:predpr;
d:boolean;
Begin
Nul(Z_a);
Nul(Z_b);
alfa[1]:=0;
Z_a[1]:=1;
k:=1;
Repeat
d:=1=1;
for i:=1 to Na do
if Z_a[i]=1 then
for j:=1 to Nb do
if (p[i,j]>-1) and (Z_b[j]=0) then begin
Z_b[j]:=1;
betta[j]:=c[i,j]-alfa[i];
inc(k);
d:=1=2;
end;
for i:=1 to Nb do
if Z_b[i]=1 then
for j:=1 to Na do
if (p[j,i]>-1) and (Z_a[j]=0) then begin
Z_a[j]:=1;
alfa[j]:=c[j,i]-betta[i];
inc(k);
d:=1=2;
end;
Until (k=Na+Nb) or d;
if d then begin
i:=1;
While Z_a[i]=1 do inc(i);
j:=1;
While Z_b[j]=0 do inc(j);
p[i,j]:=0;
Print((j+1)*(n1+1)+n2-8,i*3+4,p[i,j]);
end;
a_b:=d;
End;
//..................................
Function kkk(var ki,kj:byte):integer;
var i,j:byte;
k,k_min:integer;
b:boolean;
Begin
b:=1=1;
for i:=1 to Na do
for j:=1 to Nb do
if p[i,j]=-1 then begin
k:=c[i,j]-alfa[i]-betta[j];
if b then begin
b:=1=2;
ki:=i; kj:=j; k_min:=k;
end else
if k<k_min then begin
k_min:=k;
ki:=i; kj:=j;
end;
end;
kkk:=k_min;
End;
//..................................
Procedure Rid (var x:longint; y:byte); {????????? ????? ????? x}
var i:integer;
s:string;
c:char;
j,k:byte;
Begin
s:=''; i:=1;
Repeat

c:=ReadKey;
Case ord(c) of
48..57:         begin s:=s+c;
Write(c);
inc(i);
end;
8:if i>1 then begin dec(i);
Delete(s,i,1);
Write(chr(8),' ',chr(8));
end;
end;
j:=WhereX;
GotoXY(60,1);
ClrEOL;
GotoXY(j,1);
Until (ord(c)=13) and (i<y+1);
val(s,x,i);
End;
//..................................
Procedure W_W (var a:predpr; b:byte; c:char);
var i,l,m:byte;
Begin
for i:=1 to b do begin
GotoXY(32,1);
ClrEOL;
Write(c,i,'=  ');
Rid(a[i],n1);
Case c of
'A':     GotoXY(n2-trunc(ln(a[i])/ln(10)),i*3+4);
'B':     GotoXY(n2+i*(n1+1)-trunc(ln(a[i])/ln(10)),4);
end;
Write(a[i]);
end;
End;
//..................................
Procedure W_p;
var i,j,h,l,k:byte;
c_max:longint;
Begin
k:=0;
for i:=1 to Na do begin
h:=i*3+4;
for j:=1 to Nb do begin
l:=j*(n1+1)+n2-5;
GotoXY(l,h);
Write(' ':n1);
if p[i,j]>0 then begin
inc(k);
Print(l-trunc(ln(p[i,j])/ln(10))+5,h,p[i,j]);
end
else if p[i,j]=0 then begin
Print(l+n1-2,h,p[i,j]);
inc(k);
end;
end;
end;
While a_b do inc(k);
if k>Na+Nb-1 then PrintS(40,1,'k > n+m-1');
End;
//..................................
Procedure div_mod(c:byte; var a,b:byte);
Begin
b:=c mod Nb; a:=c div Nb +1;
if b=0 then begin
b:=Nb; dec(a);
end;
End;
//..................................
Procedure Rek(Xi,Yi:byte; var z:boolean; var c:byte);
var i,j:byte;
Begin
z:=1=2;
Case c of
1:   for i:=1 to Na do
if i<>Xi then
if p[i,Yi]>-1 then begin
if u[(i-1)*Nb+Yi]=0 then begin
u[(Xi-1)*Nb+Yi]:=(i-1)*Nb+Yi;
c:=2;
Rek(i,Yi,z,c);
if z then exit;
end;
end
else if (i=ki) and (Yi=kj) then begin
u[(Xi-1)*Nb+Yi]:=(ki-1)*Nb+kj;
z:=not z;
exit;
end;
2:   for i:=1 to Nb do
if i<>Yi then
if p[Xi,i]>-1 then begin
if u[(Xi-1)*Nb+i]=0 then begin
u[(Xi-1)*Nb+Yi]:=(Xi-1)*Nb+i;
c:=1;
Rek(Xi,i,z,c);
if z then exit;
end;
end
else if (Xi=ki) and (i=kj) then begin
u[(Xi-1)*Nb+Yi]:=(ki-1)*Nb+kj;
z:=not z;
exit;
end;
end;
u[(Xi-1)*Nb+Yi]:=0;
c:=c mod 2 +1;
End;
//..................................
Procedure kontur;
var i,j,k,mi,mj,l:byte;
z:boolean;
p_m:longint;
Begin
for i:=1 to N*N do u[i]:=0;
l:=1;
Rek(ki,kj,z,l);
i:=ki; j:=kj;
k:=u[(i-1)*Nb+j];
div_mod(k,i,j);
mi:=i; mj:=j; l:=1;
Repeat
inc(l);
k:=u[(i-1)*Nb+j];
div_mod(k,i,j);
if l mod 2=1 then
if p[i,j]<p[mi,mj] then begin
mi:=i; mj:=j;
end;
Until (i=ki) and (j=kj);
i:=ki; j:=kj; l:=0;
p_m:=p[mi,mj];
Repeat
if l mod 2=0 then begin
inc(p[i,j],p_m);
end else begin
dec(p[i,j],p_m);
end;
if l=0 then inc(p[i,j]);
k:=u[(i-1)*Nb+j];
div_mod(k,i,j);
inc(l);
Until (i=ki) and (j=kj);
p[mi,mj]:=-1;
End;
//..................................

Procedure Pauza;
var d:char;
Begin
d:=ReadKey;
GotoXY(40,1);
ClrEOL;
End;

BEGIN
Nul(alfa); Nul(betta);
Nt:=1;
ClrScr;
Repeat
Write('Postavshiki: ');
ReadLn(Na);
Write('Potrebiteli: ');
ReadLn(Nb);
Until (Na>1) and (Na<=N-1) and (Nb>1) and (Nb<=N-1);
Tabl;

(******************* ???? ????????? ?????? ******************)
PrintS(1,1,'Kol-vo tovara:');
W_W(A,Na,'A');
W_W(B,Nb,'B');
GotoXY(1,1); ClrEOL;
Write('Stoimost peremozki:');
for i:=1 to Na do
for j:=1 to Nb do begin
GotoXY(29,1); ClrEOL;
Write('A',i,' - B',j,'  ');
Rid(c[i,j],5);
Print((n1+1)*j+n2-4,i*3+3,c[i,j]);
end;

(**********************************************************)
GotoXY(1,1);
ClrEOL;
for i:=1 to Na do Sa:=Sa+A[i];
for i:=1 to Nb do Sb:=Sb+B[i];
if Sa<>Sb then begin
d:=ReadKey;
if Sa>Sb then begin
inc(Nb);
B[Nb]:=Sa-Sb;
for i:=1 to Na do c[i,Nb]:=0;
end else begin
inc(Na);
A[Na]:=Sb-Sa;
for i:=1 to Nb do c[Na,i]:=0;
end;
Tabl;
for i:=1 to Na do
for j:=1 to Nb do Print((n1+1)*j+n2-4,i*3+3,c[i,j]);
for i:=1 to Na do
Print(n2-trunc(ln(A[i])/ln(10)),i*3+4,A[i]);
for i:=1 to Nb do
Print(n2+i*(n1+1)-trunc(ln(B[i])/ln(10)),4,B[i]);
end;
(************** c?????????? ???????? ????? ****************)
for i:=1 to Nb do B_d[i]:=B[i];
for i:=1 to Na do begin
for j:=1 to Nb do x[j]:=j;
for j:=1 to Nb-1 do begin
x_min:=c[i,x[j]];
r_min:=j;
for r:= j+1 to Nb do
if (x_min>c[i,x[r]]) or
((x_min=c[i,x[r]]) and (B[x[r]]>b[x[r_min]])) then
begin
x_min :=c[i,x[r]];
r_min:=r;
end;
x_p:=x[r_min];
x[r_min]:=x[j];
x[j]:=x_p;
end;
Sp:=0;
for j:=1 to Nb do begin
p[i,x[j]]:=B_d[x[j]];
if p[i,x[j]]>A[i]-Sp then p[i,x[j]]:=A[i]-Sp;
inc(Sp,p[i,x[j]]);
dec(B_d[x[j]],p[i,x[j]]);
end;
end;
(***********************************************************)

for i:=1 to Na do
for j:=1 to Nb do if p[i,j]=0 then p[i,j]:=-1;
W_p;
f:=FF; f0:=F;
While a_b do;
for i:=1 to Na do Print(l+1,i*3+3,alfa[i]);
for i:=1 to Nb do Print(i*(n1+1)+n2-4,h,betta[i]);
//Pauza;
(******* ??????????? ??????????? ????? ? ???????????? ******)
While kkk(ki,kj)<0 do begin
kontur;
//pauza;
for i:=1 to Na do
for j:=1 to Nb do PrintS((n1+1)*j+n2-1,i*3+3,'   ');
inc(Nt);
GotoXY(1,1);
//Write('??????? N',Nt);
W_p;
f0:=f; f:=FF;
if a_b then Goto l1;
for i:=1 to Na do Print(l+1,i*3+3,alfa[i]);
for i:=1 to Nb do Print(i*(n1+1)+n2-4,h,betta[i]);
//Pauza;
end;
(***********************************************************)
for i:=1 to Na do
for j:=1 to Nb do if p[i,j]=-1 then begin
h:=i*3+4;
l:=j*(n1+1)+n2-5;
GotoXY(l,h);
Write(' ':n1);
end;
GotoXY(40,1);
l1: d:=ReadKey;
END.

Отправлено: 23:31, 04-04-2009

 

Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


Цитата Snake750:
почему то только половина программы. »
Давайте по порядку.
1. Как работает программа? (Считать с клавиатуры такие-то значения, посчитать, вывести на экран.)
2. Где эта половина, на которой заканчивается нормальная работа программы? Участок кода.

Я её откомпилировал, вроде отработала до конца, без вылетов. Разве что нечитабельное представление данных на экране.

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 11:47, 06-04-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Snake750

Старожил


Сообщения: 175
Благодарности: 0

Профиль | Отправить PM | Цитировать


в программу необходимо ввести исходные данные
количество поставщиков 2
количество потребителей 3
запасы 1-2 поставщиков 150,90
запросы 1-3 потребителя 60,70,110
стоимость перевозки составляет 6,10,4,12,2,8.
Это транспортная задача.Результат ее работу можно посмотреть в исходном коде на паскале который я выложил выше.
Программа должна выводить оптимальный план распределения и стоимость перевозки F.
Моя программа на си начинает работать не так с того момента когда она вычислила оценки для нижней стоки,А оценки для столбцов она не вычесляет

Отправлено: 21:59, 06-04-2009 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Pascal | c++

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Всё о TURBO PASCAL (обсуждение, помощь в написание программ, ошибки, Pascal ABC) Loading Программирование и базы данных 41 20-05-2015 15:28
Разное - Pascal ManHack Программирование и базы данных 2 01-09-2009 22:50
Delphi - pascal))) keep21 Программирование и базы данных 2 14-05-2008 09:46
Pascal Guest Программирование и базы данных 6 26-10-2004 17:56
Pascal BeerMan Программирование и базы данных 18 02-03-2002 01:55




 
Переход