未完成 已写代码如下:
1 package Test; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.util.Scanner; 6 public class ti3 { 7 8 9 static int re; 10 11 static String re1; 12 13 static String refenshu; 14 15 static int resan; 16 17 18 static double getGcd(double m,double n){ 19 while(n > 0){ 20 double temp = m % n; 21 m = n; 22 n = temp; 23 } 24 return m; 25 } 26 27 28 29 static double getLcm(double m,double n){ 30 double gcd = getGcd(m,n); 31 double result = m*n / gcd; 32 return result; 33 } 34 35 36 37 static int num() 38 { 39 int num; 40 Scanner in = new Scanner(System.in); 41 System.out.print("请输入题目的数量:"); 42 num = in.nextInt(); 43 return num; 44 } 45 46 47 48 static String sgongshi(int r,int q) 49 { 50 String shi,shizi=""; 51 int a=(int)(Math.random()*(r)%(r-q+1)+q); 52 int e=(int)(Math.random()*4); 53 shi=function(r,q,12); 54 if(e==0) 55 { 56 int f=(int)(Math.random()*4); 57 if(f==1||f==0) 58 { 59 shizi=a+" + "+"( "+shi+" )"; 60 resan=a+re; 61 } 62 if(f==2||f==3) 63 { 64 shizi="( "+shi+" )"+" + "+a; 65 resan=a+re; 66 } 67 } 68 if(e==1) 69 { 70 int f=(int)(Math.random()*4); 71 if(f==1||f==0) 72 { 73 while(a-re<0) 74 { 75 shi=function(r,q,12); 76 } 77 shizi=a+" - "+"( "+shi+" )"; 78 resan=a-re; 79 } 80 if(f==2||f==3) 81 { 82 while(a-re>0) 83 { 84 shi=function(r,q,12); 85 } 86 shizi="( "+shi+" )"+" - "+a; 87 resan=re-a; 88 } 89 } 90 if(e==2) 91 { 92 int f=(int)(Math.random()*4); 93 if(f==1||f==0) 94 { 95 shizi=a+" × "+"( "+shi+" )"; 96 resan=a*re; 97 } 98 if(f==2||f==3) 99 { 100 shizi="( "+shi+" )"+" × "+a; 101 resan=a*re; 102 } 103 } 104 if(e==3) 105 { 106 int f=(int)(Math.random()*4); 107 if(f==1||f==0) 108 { 109 while(re==0) 110 { 111 shi=function(r,q,12); 112 } 113 while(a%re!=0) 114 { 115 shi=function(r,q,12); 116 while(re==0) 117 { 118 shi=function(r,q,12); 119 } 120 } 121 shizi=a+" ÷ "+"( "+shi+" )"; 122 resan=a/re; 123 } 124 if(f==2||f==3) 125 { 126 while(a==0) 127 { 128 a=(int)(Math.random()*(r)%(r-q+1)+q); 129 } 130 while(re%a!=0) 131 { 132 shi=function(r,q,12); 133 } 134 shizi="( "+shi+" )"+" ÷ "+a; 135 resan=re/a; 136 } 137 } 138 return shizi; 139 } 140 141 142 143 static String fun(int r ,int fun) 144 { 145 146 String fu =""; 147 String shizi=""; 148 int a=(int)(Math.random()*(r+1)); 149 int b=(int)(Math.random()*(r+1)); 150 int c=(int)(Math.random()*(r+1)); 151 int d=(int)(Math.random()*(r+1)); 152 int e=(int)(Math.random()*4); 153 154 155 if(fun==1) 156 { 157 if(e==0) 158 { 159 fu="+"; 160 while(a>=b||c>=d||b==0||d==0) 161 { 162 a=(int)(Math.random()*(r+1)); 163 b=(int)(Math.random()*(r+1)); 164 c=(int)(Math.random()*(r+1)); 165 d=(int)(Math.random()*(r+1)); 166 } 167 168 int aa=(int) getGcd(a,b); 169 int cc=(int) getGcd(c,d); 170 a=a/aa; b=b/aa; 171 c=c/cc; d=d/cc; 172 shizi=a+"/"+b+" "+fu+" "+c+"/"+d; 173 int gongbei=(int) getLcm(b,d); 174 a=a*(gongbei/b); 175 c=c*(gongbei/d); 176 a=a+c; 177 int t=(int) getGcd(a,gongbei); 178 a=a/t; 179 gongbei=gongbei/t; 180 if(a==gongbei) 181 refenshu="1"; 182 else if(a==0) 183 refenshu="0"; 184 else if(a>gongbei) 185 { 186 int s=a%gongbei; 187 refenshu=1+"’"+s+"/"+gongbei; 188 } 189 else 190 refenshu=a+"/"+gongbei; 191 192 } 193 if(e==1) 194 { 195 fu="-"; 196 double y=getLcm(b,d); 197 double a1=y/b; 198 double c1=y/d; 199 double a2=a*a1; 200 double c2=c*c1; 201 while(a>=b||c>=d||b==0||d==0||a2<c2) 202 { 203 a=(int)(Math.random()*(r+1)); 204 b=(int)(Math.random()*(r+1)); 205 c=(int)(Math.random()*(r+1)); 206 d=(int)(Math.random()*(r+1)); 207 y=getLcm(b,d); 208 a1=y/b; 209 c1=y/d; 210 a2=a*a1; 211 c2=c*c1; 212 } 213 int aa=(int) getGcd(a,b); 214 int cc=(int) getGcd(c,d); 215 a=a/aa; b=b/aa; 216 c=c/cc; d=d/cc; 217 shizi=a+"/"+b+" "+fu+" "+c+"/"+d; 218 int gongbei=(int) getLcm(b,d); 219 a=a*(gongbei/b); 220 c=c*(gongbei/d); 221 a=a-c; 222 int t=(int) getGcd(a,gongbei); 223 a=a/t; 224 gongbei=gongbei/t; 225 if(a==gongbei) 226 refenshu="1"; 227 else if(a==0) 228 refenshu="0"; 229 else 230 refenshu=a+"/"+gongbei; 231 } 232 if(e==2) 233 { 234 fu="×"; 235 while(a>=b||c>=d||b==0||d==0) 236 { 237 a=(int)(Math.random()*(r+1)); 238 b=(int)(Math.random()*(r+1)); 239 c=(int)(Math.random()*(r+1)); 240 d=(int)(Math.random()*(r+1)); 241 } 242 int aa=(int) getGcd(a,b); 243 int cc=(int) getGcd(c,d); 244 a=a/aa; b=b/aa; 245 c=c/cc; d=d/cc; 246 shizi=a+"/"+b+" "+fu+" "+c+"/"+d; 247 a=a*c; 248 b=b*d; 249 int flag1=(int) getGcd(a,b); 250 a=a/flag1;b=b/flag1; 251 if(a==0) 252 refenshu="0"; 253 else 254 refenshu=a+"/"+b; 255 } 256 if(e==3) 257 { 258 fu="÷"; 259 while(a>=b||c>=d||b==0||d==0||c==0) 260 { 261 a=(int)(Math.random()*(r+1)); 262 b=(int)(Math.random()*(r+1)); 263 c=(int)(Math.random()*(r+1)); 264 d=(int)(Math.random()*(r+1)); 265 } 266 int aa=(int) getGcd(a,b); 267 int cc=(int) getGcd(c,d); 268 a=a/aa; b=b/aa; 269 c=c/cc; d=d/cc; 270 shizi=a+"/"+b+" "+fu+" "+c+"/"+d; 271 a=a*d; 272 b=b*c; 273 int flag1=(int) getGcd(a,b); 274 a=a/flag1;b=b/flag1; 275 if(a==0) 276 refenshu="0"; 277 else if(a==b) 278 refenshu="1"; 279 else if(b==1) 280 refenshu=a+""; 281 else if(a>b) 282 { 283 int s=a%b; 284 int s1=a/b; 285 refenshu=s1+"’"+s+"/"+b; 286 } 287 else 288 refenshu=a+"/"+b; 289 } 290 } 291 292 293 if(fun==2) 294 { 295 if(e==0) 296 { 297 fu="+"; 298 while(a>=b||c>=d||b==0||d==0) 299 { 300 a=(int)(Math.random()*(r+1)); 301 b=(int)(Math.random()*(r+1)); 302 c=(int)(Math.random()*(r+1)); 303 d=(int)(Math.random()*(r+1)); 304 } 305 int aa=(int) getGcd(a,b); 306 int cc=(int) getGcd(c,d); 307 a=a/aa; b=b/aa; 308 c=c/cc; d=d/cc; 309 shizi=a+"/"+b+" "+fu+" "+c+"/"+d; 310 int gongbei=(int) getLcm(b,d); 311 a=a*(gongbei/b); 312 c=c*(gongbei/d); 313 a=a+c; 314 int t=(int) getGcd(a,gongbei); 315 a=a/t; 316 gongbei=gongbei/t; 317 if(a==gongbei) 318 refenshu="1"; 319 else if(a==0) 320 refenshu="0"; 321 else if(a>gongbei) 322 { 323 int s=a%gongbei; 324 refenshu=1+"’"+s+"/"+gongbei; 325 } 326 else 327 refenshu=a+"/"+gongbei; 328 } 329 if(e==1) 330 { 331 fu="-"; 332 double y=getLcm(b,d); 333 double a1=y/b; 334 double c1=y/d; 335 double a2=a*a1; 336 double c2=c*c1; 337 while(a>=b||c>=d||b==0||d==0||a2<c2) 338 { 339 a=(int)(Math.random()*(r+1)); 340 b=(int)(Math.random()*(r+1)); 341 c=(int)(Math.random()*(r+1)); 342 d=(int)(Math.random()*(r+1)); 343 y=getLcm(b,d); 344 a1=y/b; 345 c1=y/d; 346 a2=a*a1; 347 c2=c*c1; 348 } 349 int aa=(int) getGcd(a,b); 350 int cc=(int) getGcd(c,d); 351 a=a/aa; b=b/aa; 352 c=c/cc; d=d/cc; 353 shizi=a+"/"+b+" "+fu+" "+c+"/"+d; 354 int gongbei=(int) getLcm(b,d); 355 a=a*(gongbei/b); 356 c=c*(gongbei/d); 357 a=a-c; 358 int t=(int) getGcd(a,gongbei); 359 a=a/t; 360 gongbei=gongbei/t; 361 if(a==gongbei) 362 refenshu="1"; 363 else if(a==0) 364 refenshu="0"; 365 else 366 refenshu=a+"/"+gongbei; 367 } 368 if(e==2) 369 { 370 fu="+"; 371 while(a>=b||c>=d||b==0||d==0) 372 { 373 a=(int)(Math.random()*(r+1)); 374 b=(int)(Math.random()*(r+1)); 375 c=(int)(Math.random()*(r+1)); 376 d=(int)(Math.random()*(r+1)); 377 } 378 int aa=(int) getGcd(a,b); 379 int cc=(int) getGcd(c,d); 380 a=a/aa; b=b/aa; 381 c=c/cc; d=d/cc; 382 shizi=a+"/"+b+" "+fu+" "+c+"/"+d; 383 int gongbei=(int) getLcm(b,d); 384 a=a*(gongbei/b); 385 c=c*(gongbei/d); 386 a=a+c; 387 int t=(int) getGcd(a,gongbei); 388 a=a/t; 389 gongbei=gongbei/t; 390 if(a==gongbei) 391 refenshu="1"; 392 else if(a==0) 393 refenshu="0"; 394 else if(a>gongbei) 395 { 396 int s=a%gongbei; 397 refenshu=1+"’"+s+"/"+gongbei; 398 } 399 else 400 refenshu=a+"/"+gongbei; 401 } 402 if(e==3) 403 { 404 fu="-"; 405 double y=getLcm(b,d); 406 double a1=y/b; 407 double c1=y/d; 408 double a2=a*a1; 409 double c2=c*c1; 410 while(a>=b||c>=d||b==0||d==0||a2<c2) 411 { 412 a=(int)(Math.random()*(r+1)); 413 b=(int)(Math.random()*(r+1)); 414 c=(int)(Math.random()*(r+1)); 415 d=(int)(Math.random()*(r+1)); 416 y=getLcm(b,d); 417 a1=y/b; 418 c1=y/d; 419 a2=a*a1; 420 c2=c*c1; 421 } 422 int aa=(int) getGcd(a,b); 423 int cc=(int) getGcd(c,d); 424 a=a/aa; b=b/aa; 425 c=c/cc; d=d/cc; 426 shizi=a+"/"+b+" "+fu+" "+c+"/"+d; 427 int gongbei=(int) getLcm(b,d); 428 a=a*(gongbei/b); 429 c=c*(gongbei/d); 430 a=a-c; 431 int t=(int) getGcd(a,gongbei); 432 a=a/t; 433 gongbei=gongbei/t; 434 if(a==gongbei) 435 refenshu="1"; 436 else if(a==0) 437 refenshu="0"; 438 else 439 refenshu=a+"/"+gongbei; 440 } 441 } 442 return shizi; 443 }
.
.
.