Rev 795 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
795 | bpr | 1 | #include<stdio.h> |
2 | #include<string.h> |
||
3 | |||
4 | /* Entrees : |
||
5 | argv[1] = nom du prog |
||
6 | argv[2] = \a |
||
7 | argv[3] = \b |
||
8 | argv[4] = \c |
||
9 | argv[5] = \comparaison1 |
||
10 | argv[6] = \vrai1 |
||
11 | argv[7] = \faux1 |
||
12 | argv[8] = \branchement1 |
||
13 | argv[9] = \comparaison2 |
||
17893 | bpr | 14 | argv[10]= \vrai2 |
795 | bpr | 15 | argv[11]= \faux2 |
16 | argv[12]= \branchement2 |
||
17 | argv[13]= \comparaison3 |
||
18 | argv[14]= \confparm1 |
||
19 | */ |
||
17893 | bpr | 20 | int main(int argc,char *argv[]) |
795 | bpr | 21 | { |
22 | int a; |
||
23 | int b; |
||
17893 | bpr | 24 | int c; |
795 | bpr | 25 | int vrai1; |
26 | int faux1; |
||
27 | int branchement1; |
||
28 | int vrai2; |
||
29 | int faux2; |
||
17893 | bpr | 30 | int branchement2; |
795 | bpr | 31 | int niveau; |
32 | char comparaison1[7]; |
||
33 | char comparaison2[7]; |
||
34 | char comparaison3[7]; |
||
17893 | bpr | 35 | |
795 | bpr | 36 | sscanf(argv[2],"%d",&a); |
37 | sscanf(argv[3],"%d",&b); |
||
38 | sscanf(argv[4],"%d",&c); |
||
39 | strcpy(comparaison1,argv[5]); |
||
40 | sscanf(argv[6],"%d",&vrai1); |
||
41 | sscanf(argv[7],"%d",&faux1); |
||
42 | sscanf(argv[8],"%d",&branchement1); |
||
43 | strcpy(comparaison2,argv[9]); |
||
44 | sscanf(argv[10],"%d",&vrai2); |
||
45 | sscanf(argv[11],"%d",&faux2); |
||
46 | sscanf(argv[12],"%d",&branchement2); |
||
47 | strcpy(comparaison3,argv[13]); |
||
48 | sscanf(argv[14],"%d",&niveau); |
||
17893 | bpr | 49 | |
795 | bpr | 50 | int cmp1 = ((strcmp(comparaison1,">")==0) ? 0 : -1) ; |
51 | int cmp2 = ((strcmp(comparaison2,"<")==0) ? 0 : 1) ; |
||
52 | int cmp3 = ((strcmp(comparaison3,"<")==0) ? 0 : 1) ; |
||
53 | |||
17893 | bpr | 54 | if (niveau==1) |
795 | bpr | 55 | { |
56 | if (b>a+cmp1) |
||
57 | b=b+vrai1; |
||
58 | } |
||
17893 | bpr | 59 | |
60 | else if (niveau==2) |
||
795 | bpr | 61 | { |
62 | if (b>a+cmp1) |
||
63 | b=b+vrai1; |
||
64 | else |
||
65 | a=a+faux1; |
||
66 | } |
||
17893 | bpr | 67 | |
68 | else if (niveau==3) |
||
795 | bpr | 69 | { |
17893 | bpr | 70 | if (b>a+cmp1) |
795 | bpr | 71 | { |
72 | b=b+vrai1; |
||
17893 | bpr | 73 | if (branchement1==1) |
795 | bpr | 74 | { |
17893 | bpr | 75 | if (a<c+cmp2 && b<c+cmp2) |
76 | c=c-vrai2; |
||
795 | bpr | 77 | } |
78 | } |
||
17893 | bpr | 79 | else |
795 | bpr | 80 | { |
81 | a=a+faux1; |
||
17893 | bpr | 82 | if (branchement1==0) |
795 | bpr | 83 | { |
17893 | bpr | 84 | if (a<c+cmp2 && b<c+cmp2) |
85 | c=c-vrai2; |
||
795 | bpr | 86 | } |
87 | |||
88 | } |
||
89 | } |
||
17893 | bpr | 90 | |
91 | |||
92 | else if (niveau==4) |
||
795 | bpr | 93 | { |
17893 | bpr | 94 | if (b>a+cmp1) |
795 | bpr | 95 | { |
96 | b=b+vrai1; |
||
17893 | bpr | 97 | if (branchement1==1) |
795 | bpr | 98 | { |
17893 | bpr | 99 | if (a<c+cmp2 && b<c+cmp2) |
795 | bpr | 100 | c=c-vrai2; |
101 | else |
||
102 | { |
||
103 | c=c+faux2; |
||
104 | a++; |
||
17893 | bpr | 105 | } |
795 | bpr | 106 | } |
107 | } |
||
17893 | bpr | 108 | else |
795 | bpr | 109 | { |
110 | a=a+faux1; |
||
17893 | bpr | 111 | if (branchement1==0) |
795 | bpr | 112 | { |
17893 | bpr | 113 | if (a<c+cmp2 && b<c+cmp2) |
114 | c=c-vrai2; |
||
795 | bpr | 115 | else |
116 | { |
||
117 | c=c+faux2; |
||
118 | a++; |
||
17893 | bpr | 119 | } |
120 | |||
795 | bpr | 121 | } |
122 | |||
123 | } |
||
17893 | bpr | 124 | } |
125 | |||
126 | |||
127 | else if (niveau==5) |
||
795 | bpr | 128 | { |
17893 | bpr | 129 | if (b>a+cmp1) |
795 | bpr | 130 | { |
131 | b=b+vrai1; |
||
17893 | bpr | 132 | if (branchement1==1) |
795 | bpr | 133 | { |
17893 | bpr | 134 | if (a<c+cmp2 && b<c+cmp2) |
795 | bpr | 135 | { |
136 | c=c-vrai2; |
||
17893 | bpr | 137 | if (branchement2==1) |
795 | bpr | 138 | { |
17893 | bpr | 139 | if ( a+b<c+cmp3 || b-a < cmp3+c-b ) |
795 | bpr | 140 | { |
141 | a++; |
||
142 | b++; |
||
143 | } |
||
144 | } |
||
145 | } |
||
146 | else |
||
147 | { |
||
148 | c=c+faux2; |
||
149 | a++; |
||
17893 | bpr | 150 | if (branchement2==0) |
795 | bpr | 151 | { |
17893 | bpr | 152 | if ( a+b<c+cmp3 || b-a < cmp3+c-b ) |
795 | bpr | 153 | { |
154 | a++; |
||
155 | b++; |
||
156 | } |
||
157 | } |
||
17893 | bpr | 158 | } |
795 | bpr | 159 | } |
160 | } |
||
17893 | bpr | 161 | else |
795 | bpr | 162 | { |
163 | a=a+faux1; |
||
17893 | bpr | 164 | if (branchement1==0) |
795 | bpr | 165 | { |
17893 | bpr | 166 | if (a<c+cmp2 && b<c+cmp2) |
795 | bpr | 167 | { |
168 | c=c-vrai2; |
||
17893 | bpr | 169 | if (branchement2==1) |
795 | bpr | 170 | { |
17893 | bpr | 171 | if ( a+b<c+cmp3 || b-a < cmp3+c-b ) |
795 | bpr | 172 | { |
173 | a++; |
||
174 | b++; |
||
175 | } |
||
176 | } |
||
177 | } |
||
178 | else |
||
179 | { |
||
180 | c=c+faux2; |
||
181 | a++; |
||
17893 | bpr | 182 | if (branchement2==0) |
795 | bpr | 183 | { |
17893 | bpr | 184 | if ( a+b<c+cmp3 || b-a < cmp3+c-b ) |
795 | bpr | 185 | { |
186 | a++; |
||
187 | b++; |
||
188 | } |
||
189 | } |
||
17893 | bpr | 190 | } |
795 | bpr | 191 | } |
192 | } |
||
193 | } |
||
17893 | bpr | 194 | |
195 | else if (niveau==6) |
||
795 | bpr | 196 | { |
17893 | bpr | 197 | if (b>a+cmp1) |
795 | bpr | 198 | { |
199 | b=b+vrai1; |
||
17893 | bpr | 200 | if (branchement1==1) |
795 | bpr | 201 | { |
17893 | bpr | 202 | if (a<c+cmp2 && b<c+cmp2) |
795 | bpr | 203 | { |
204 | c=c-vrai2; |
||
17893 | bpr | 205 | if (branchement2==1) |
795 | bpr | 206 | { |
17893 | bpr | 207 | if ( a+b<c+cmp3 || b-a < cmp3+c-b ) |
795 | bpr | 208 | { |
209 | a++; |
||
210 | b++; |
||
211 | } |
||
212 | else |
||
213 | { |
||
214 | a--; |
||
215 | b--; |
||
216 | } |
||
217 | } |
||
218 | } |
||
219 | else |
||
220 | { |
||
221 | c=c+faux2; |
||
222 | a++; |
||
17893 | bpr | 223 | if (branchement2==0) |
795 | bpr | 224 | { |
17893 | bpr | 225 | if ( a+b<c+cmp3 || b-a < cmp3+c-b ) |
795 | bpr | 226 | { |
227 | a++; |
||
228 | b++; |
||
229 | } |
||
230 | else |
||
231 | { |
||
232 | a--; |
||
233 | b--; |
||
234 | } |
||
235 | } |
||
17893 | bpr | 236 | } |
795 | bpr | 237 | } |
238 | } |
||
17893 | bpr | 239 | else |
795 | bpr | 240 | { |
241 | a=a+faux1; |
||
17893 | bpr | 242 | if (branchement1==0) |
795 | bpr | 243 | { |
17893 | bpr | 244 | if (a<c+cmp2 && b<c+cmp2) |
795 | bpr | 245 | { |
246 | c=c-vrai2; |
||
17893 | bpr | 247 | if (branchement2==1) |
795 | bpr | 248 | { |
17893 | bpr | 249 | if ( a+b<c+cmp3 || b-a < cmp3+c-b ) |
795 | bpr | 250 | { |
251 | a++; |
||
252 | b++; |
||
253 | } |
||
254 | else |
||
255 | { |
||
256 | a--; |
||
257 | b--; |
||
258 | } |
||
259 | } |
||
260 | } |
||
261 | else |
||
262 | { |
||
263 | c=c+faux2; |
||
264 | a++; |
||
17893 | bpr | 265 | if (branchement2==0) |
795 | bpr | 266 | { |
17893 | bpr | 267 | if ( a+b<c+cmp3 || b-a < cmp3+c-b ) |
795 | bpr | 268 | { |
269 | a++; |
||
270 | b++; |
||
271 | } |
||
272 | else |
||
273 | { |
||
274 | a--; |
||
275 | b--; |
||
276 | } |
||
277 | } |
||
278 | } |
||
279 | } |
||
280 | } |
||
281 | } |
||
282 | |||
283 | printf("%d,%d,%d\n",a,b,c); |
||
284 | return 0; |
||
285 | |||
286 | } |