Advertisement
Guest User

Non-If-Else-Ma_hau.c

a guest
Mar 18th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.57 KB | None | 0 0
  1. #include<stdio.h>
  2.  
  3. int valid(x,y,a,b){
  4.     while (
  5.             (
  6.                 (x==a) && (y==b) /*Quân mã ăn quân hậu*/
  7.             )
  8.             ||
  9.             (
  10.                 ((x<1?0:1) && (x>8?0:1)) && /*x,y phải nằm trong bàn cờ*/
  11.                 ((y<1?0:1) && (y>8?0:1))
  12.             ) &&
  13.              ((x!=a?1:0) && (y!=b?1:0))&& /*(x,y) có cùng hàng hoặc cột với (a,b) không?*/
  14.  
  15.             /* (x,y) có cùng đường chéo với (a,b) không?*/
  16.             (
  17.                 ((x-a)/(y-b)==1?0:1) && /*Chéo góc trái trên + phải dưới)*/
  18.                 ((x-a)/(y-b)==-1?0:1) /*Chéo góc trái dưới + phải trên)*/
  19.             )
  20.         ){
  21.         printf("(%d,%d)\n",x,y);
  22.         break;
  23.     }
  24. }
  25.  
  26. int main(){
  27.     int ma_x, ma_y, hau_x, hau_y;
  28.     ma_x=ma_y=-1;
  29.     hau_x=hau_y=-1;
  30.  
  31.     int x=2;
  32.     printf("This %d\n",x==2?1:0);
  33.     while(ma_x<1?1:0 || ma_x>8?1:0 ||
  34.           ma_y<1?1:0 || ma_y>8?1:0 ||
  35.           hau_x<1?1:0 || hau_x>8?1:0 ||
  36.           hau_y<1?1:0 || hau_y>8?1:0
  37.           ){
  38.         printf("Nhap toa do cua quan co ma(x1,y1) hau(x2,y2) \n trong pham vi [1,8]theo thu tu x1 y1 x2 y2:");
  39.         scanf("%d %d %d %d", &ma_x, &ma_y, &hau_x, &hau_y);
  40.     }
  41.  
  42.     valid(ma_x-1,ma_y+2,hau_x,hau_y);
  43.  
  44.     valid(ma_x+1,ma_y+2,hau_x,hau_y);
  45.  
  46.     valid(ma_x+2,ma_y+1,hau_x,hau_y);
  47.  
  48.     valid(ma_x+2,ma_y-1,hau_x,hau_y);
  49.  
  50.     valid(ma_x+1,ma_y-2,hau_x,hau_y);
  51.  
  52.     valid(ma_x-1,ma_y-2,hau_x,hau_y);
  53.  
  54.     valid(ma_x-2,ma_y+1,hau_x,hau_y);
  55.  
  56.     valid(ma_x-2,ma_y-1,hau_x,hau_y);
  57.  
  58.     return 0;
  59.  
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement