|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
ПРИЛОЖЕНИЕ 6. КОМПЬЮТЕРНАЯ ПРОГРАММА РЕШЕНИЯ ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ СИМПЛЕКС-МЕТОДОМ10 CLS:DIM A(20,50),J1(50),B(20),C(50) 20 PRINT TAB(5)"РЕШЕНИЕ ОБЩЕЙ ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ" 30 PRINT TAB(1)"СИМПЛЕКС-МЕТОДОМ (НА МАКСИМУМ ДЛЯ ОГРАНИЧЕНИЙ ТИПА ≤)" 35 FM$="#####.#####" 40 PRINT "ВВЕДИТЕ ИСХОДНЫЕ ДАННЫЕ" 50 INPUT "ЧИСЛО УРАВНЕНИЙ В СИСТЕМЕ ОГРАНИЧЕНИЙ M";M 60 INPUT "ЧИСЛО НЕИЗВЕСТНЫХ K";K 80 FOR I=1 TO M:FOR J=1 TO K 90 PRINT "КОЭФФИЦИЕНТ ПРИ "J"-М НЕИЗВЕСТНОМ В "I"-M УРАВНЕНИИ A("; 100 PRINT I","J")":INPUT A(I,J):NEXT J 110 PRINT "СВОБОДНЫЙ ЧЛЕН "I"-ГО УРАВНЕНИЯ В ("I")":INPUT B(I):NEXT I 120 FOR J=1 TO K:PRINT "КОЭФФИЦИЕНТ ЦЕЛЕВОЙ ФУНКЦИИ C("J")" 125 INPUT C(J):NEXT J 126 OPEN"O",#3,"SIMPL.REZ" 127 PRINT #3, TAB(5)"РЕШЕНИЕ ОБЩЕЙ ЗАДАЧИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ" 129 PRINT #3, TAB(13)"СИМПЛЕКС-МЕТОДОМ" 130 PRINT #3,:PRINT #3,:PRINT #3, TAB(5)"ИСХОДНЫЕ ДАННЫЕ":PRINT #3, 140 PRINT #3, TAB(3)"ТАБЛИЦА КОЭФФИЦИЕНТОВ A(I,J) И СВОБОДНЫХ ЧЛЕНОВ"; 145 PRINT #3, " B(I)" 150 PRINT #3, TAB(6)"(ДЛЯ ОСНОВНЫХ И ДОПОЛНИТЕЛЬНЫХ НЕИЗВЕСТНЫХ)" 160 K6=K+1:K=K+M:K1=K+1:M1=M+1 170 FOR I=1 TO M:A(I,K1)=B(I):J1(I)=K-M+I 180 FOR J=K6 TO K:IF I=J-K6+1 THEN 210 190 A(I,J)=0 200 GOTO 220 210 A(I,J)=1 220 NEXT J 230 PRINT #3, TAB(5) I"-Е УРАВНЕНИЕ" 240 FOR J=1 TO K:PRINT #3, USING FM$;A(I,J);:NEXT J:PRINT #3, B(I) 250 NEXT I 255 PRINT #3, 290 FOR J=K6 TO K:C(J)=0:NEXT J 300 PRINT #3,:PRINT #3, TAB(3)"КОЭФФИЦИЕНТЫ ЦЕЛЕВОЙ ФУНКЦИИ C(J)" 310 PRINT #3, "(ДЛЯ ОСНОВНЫХ И ДОПОЛНИТЕЛЬНЫХ НЕИЗВЕСТНЫХ)" 320 FOR J=1 TO K:PRINT #3, USING FM$;C(J);:PRINT #3," ";:NEXT J 330 FOR J=1 TO K 360 C(J)=0-C(J) 370 A(M1,J)=C(J):NEXT J 375 A(M1,K1)=0 380 K0=0 390 PRINT:PRINT TAB(5)"Р Е З У Л Ь Т А Т Ы Р А С Ч Е Т А " 400 REM ОПРЕДЕЛЕНИЕ БАЗИСНОГО РЕШЕНИЯ 410 I=M1 420 K0=K0+1 430 PRINT TAB(3)"БАЗИСНОЕ РЕШЕНИЕ - "K0 440 Y=0 450 FOR I=1 TO M:Y=Y+C(J1(I))*A(I,K1):PRINT "X("J1(I)")=",: PRINT USING FM$;A(I,K1) 455 NEXT I 460 PRINT TAB(3)"ТЕКУЩЕЕ ЗНАЧЕНИЕ УСЛОВНОЙ ЦЕЛЕВОЙ ФУНКЦИИ Y=",: print USING FM$;Y 470 REM ВЫБОР НОВОЙ БАЗИСНОЙ ПЕРЕМЕННОЙ ИЗ НЕБАЗИСНЫХ 480 N0=0:B0=0 490 FOR J=1 TO K1:IF A(M1,J)>=B0 THEN 510 500 B0=A(M1,J):N0=J 510 NEXT J 520 IF N0=0 THEN 690 530 REM ПРОВЕРКА ЗАДАЧИ НА НАЛИЧИЕ РЕШЕНИЯ 540 S=1E+11 550 FOR I=1 TO M:IF A(I,N0)<=.00001 THEN 570 560 IF A(I,K1)/A(I,N0)>=S THEN 570 565 S=A(I,K1)/A(I,N0):NR=I 570 NEXT I 580 IF S<=1E+09 THEN 600 590 PRINT #3,:PRINT #3, TAB(5)"ЗАДАЧА НЕ ИМЕЕТ РЕШЕНИЯ":GOTO 800 595 REM ОПРЕДЕЛЕНИЕ РАЗРЕШАЮЩЕГО ЭЛЕМЕНТА 600 P=A(NR,N0) 610 FOR K=1 TO K1:A(NR,K)=A(NR,K)/P:NEXT K 620 J1(NR)=N0 635 REM ВЫРАЖЕНИЕ НОВЫХ БАЗИСНЫХ ПЕРЕМЕННЫХ ЧЕРЕЗ НОВЫЕ НЕБАЗИСНЫЕ 640 FOR I=1 TO M1:IF I=NR THEN 670 650 H=A(I,N0) 660 FOR J=1 TO K1:A(I,J)=A(I,J)-H*A(NR,J):NEXT J 670 NEXT I 680 GOTO 420 690 FOR I=1 TO M:IF J1(I)<K1 THEN 720 700 PRINT #3,:PRINT #3, TAB(5)"ДОПУСТИМОЕ РЕШЕНИЕ НЕ СУЩЕСТВУЕТ" 710 GOTO 800 720 NEXT I 730 PRINT #3,:PRINT #3,:PRINT #3, TAB(5)"О П Т И М А Л Ь Н О Е Р Е Ш Е Н И Е" 740 FOR I=1 TO M:IF J1(I)>=K6 THEN 760 750 PRINT #3, J1(I),: PRINT #3, USING FM$;A(I,K1) 760 NEXT I 800 PRINT #3,:PRINT #3, TAB(5)".....***....." 805 COLOR 25,5,15:PRINT "РЕЗУЛЬТАТЫ РАСЧЕТА В ФАЙЛЕ SIMPL.REZ" 806 BBB$=INKEY$ 807 IF LEN(BBB$)=0 THEN 806 810 END Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |