sunowner 发表于 2008-5-3 03:24

[求助]程序老说无效输入,可检查不出来呀

<p><br/>model:<br/>sets:<br/>room1/1..45/:seat,lnum,power,x;<br/>room2/1..9/:;<br/>home/1..10/:A,si;<br/>link(home,room2):s,b;<br/>endsets</p><p><br/><a href="mailto:max=1-@sum(link(i,j):b(i,j)*A(i)*(s(i,j)-si(i))/si(i))/8000*0.95*0.7">max=1-@sum(link(i,j):b(i,j)*A(i)*(s(i,j)-si(i))/si(i))/8000*0.95*0.7</a>;<br/>@for(room2(j):@sum(home(i):b(i,j)*A(i))&lt;<a href="mailto:=@sum(room1(k)|k#le#5*j#and#(5*j-4)#le#k:seat*0.9*x">=@sum(room1(k)|k#le#5*j#and#(5*j-4)#le#k:seat*0.9*x</a>));<br/>@sum(room1:0.9*x*seat)&gt;=8000*0.7*0.95;<br/>@sum(room1:x*lnum*power)&lt;=74093;<br/>@for(room1:@bin(x));<br/>@for(link:@bnd(0,b,1));</p><p>data<br/>si= 305  390  384   306  386   385   311   305  307   361;</p><p>seat=64   88   193   193 128  120  120  120  110   120    64   247   190   210    70    85   192   195   128   120   120   120   110   160    70     256   190   210   190   205   110   160    70   256   190   210   190   190   210   200   150   150   180    70   120;<br/>lnum=42    42    48    50    36    36    36    36    36    36    27    75    48    50    42    42    48    50    36    36    36    36    36    36    27  75    48    50    48    50    36    36    27    75    48    50    48    48    50    48    50    48    48    25    45;<br/>power=40    40    50    48    45    45    48    45    40    45    40    45    48    50    40    40    50    48    45    45    48    45    40    45    40   45    48    50    48    50    40    45    40    45    48    50    48    48    50    48    50    48    48    50    48;<br/>A=800*0.95*0.7;<br/>si= 305   390   384   306   386   385   311   305   307   361;</p><p>s= 355 305 658 380 419 565 414 488 326<br/>   695 533 469 506 434 473 390 532 604<br/>   512 556 384 452 613 572 484 527 618<br/>   324 541 320 466 422 650 306 607 688<br/>   696 616 475 499 386 557 428 684 591<br/>   465 598 407 476 673 573 385 636 552<br/>   354 383 543 552 448 530 481 318 311<br/>   425 305 454 573 337 314 545 543 306<br/>   307 376 535 323 447 553 587 577 334<br/>   482 477 441 361 570 580 591 491 522;</p><p><br/>enddata</p><p><br/>end</p><p>运行时,出现invalid input:snytax error,指向data中的第一组数据,请高手帮忙看一下,谢谢</p>

madio 发表于 2008-5-3 09:03

<p>model:<br/>sets:<br/>room1/1..45/:seat,lnum,power,x;<br/>room2/1..9/:;<br/>home/1..10/:A,si;<br/>link(home,room2):s,b;<br/>endsets</p><p><br/>max=1-@sum(link(i,j):b(i,j)*A(i)*(s(i,j)-si(i))/si(i))/8000*0.95*0.7;<br/>@for(room2(j):@sum(home(i):b(i,j)*A(i))&lt;=@sum(room1(k)|k#le#5*j#and#(5*j-4)#le#k:seat*0.9*x));<br/>@sum(room1:0.9*x*seat)&gt;=8000*0.7*0.95;<br/>@sum(room1:x*lnum*power)&lt;=74093;<br/>@for(room1:@bin(x));<br/>@for(link:@bnd(0,b,1));</p><p>data:<br/>si= 305 390 384 306 386 385 311 305 307 361;</p><p>seat=64 88 193 193 128 120 120 120 110 120 64 247 190 210 70 85 192 195 128 120 120 120 110 160 70 256 190 210 190 205 110 160 70 256 190 210 190 190 210 200 150 150 180 70 120;<br/>lnum=42 42 48 50 36 36 36 36 36 36 27 75 48 50 42 42 48 50 36 36 36 36 36 36 27 75 48 50 48 50 36 36 27 75 48 50 48 48 50 48 50 48 48 25 45;<br/>power=40 40 50 48 45 45 48 45 40 45 40 45 48 50 40 40 50 48 45 45 48 45 40 45 40 45 48 50 48 50 40 45 40 45 48 50 48 48 50 48 50 48 48 50 48;<br/>A=532;<br/>si= 305 390 384 306 386 385 311 305 307 361;</p><p>s= 355 305 658 380 419 565 414 488 326<br/>695 533 469 506 434 473 390 532 604<br/>512 556 384 452 613 572 484 527 618<br/>324 541 320 466 422 650 306 607 688<br/>696 616 475 499 386 557 428 684 591<br/>465 598 407 476 673 573 385 636 552<br/>354 383 543 552 448 530 481 318 311<br/>425 305 454 573 337 314 545 543 306<br/>307 376 535 323 447 553 587 577 334<br/>482 477 441 361 570 580 591 491 522;</p><p></p><p>enddata</p><p><br/>end<br/></p><p>主要是data后面少了一个分号。</p>
页: [1]
查看完整版本: [求助]程序老说无效输入,可检查不出来呀