#define FUND 55000.0 #define AA 10 // number of AA bonds #define AAA 5 // number of AAA bonds #define PPH 0 // price per hundred #define RR 1 // rate of return #define LIMIT 7500.0 double dbla[2][AA]; // data from Table 9.1 double trpla[2][AAA]; // data from Table 9.2 continuous DblA[AA],TrplA[AAA],Mm,Return; continuous TotalAA,TotalAAA; // auxiliary variables int sortAA[AA], sortAAA[AAA]; data() { dbla = { 421, 686, 375, 330, 400, 444, 522, 545, 550, 275, .09,.084,.0825,.081,.0825,.081,.091,.09,.083,.0825 }; trpla = { 782, 982, 466, 700, 700, .076, .075, .07, .0775, .08 }; } setup() { TotalAA == sigma(int i=0;i= .12*TotalAA; Mm >= .20*TotalAAA; .85*TotalAAA >= TotalAA; Return == sigma(int i=0;i= .065*FUND; // client’s requirement } bounds() { sharp_bounds(AA,dbla[PPH],DblA); // tightens model sharp_bounds(AAA,trpla[PPH],TrplA); } sharp_bounds(int a, double price[], continuous Bonds[]) { and(int i=0;i=bottom;k--) //If k==bottom-1, backtrack Bond == k; // Purchase bonds; return to and loop } new_central_loop() { and(int i=0;i=0;i--) and(int j=0;j