Advertisement
Guest User

Untitled

a guest
Jan 20th, 2020
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.31 KB | None | 0 0
  1. main
  2. {
  3.     int i,hits;
  4.  
  5.     printXY(" diferencial (habilidad del atacante menos la del defensor)");
  6.     printXY("       con criticos                   sin criticos");
  7.     for (i=10;i<=30;i++)
  8.     {
  9.       hits = tirada_enfrentada(i,20);
  10.       printXY("   %+3i hits: %2.1f%%%%",i-20, (float)hits/10000.0);
  11.  
  12.       hits = _tirada_enfrentada(i,20);
  13.       printXY("   %+3i hits: %2.1f%%%%",i-20, (float)hits/10000.0);
  14.  
  15.     }
  16. }
  17.  
  18. int tirada_enfrentada(int p1, int p2)
  19. {
  20.  
  21.   int d1,d2,d3;
  22.   int _d1,_d2,_d3;
  23.   int r1,r2;
  24.   int hits;
  25.  
  26.   hits=0;
  27.   for (d1=1;d1<=10;d1++)
  28.   for (d2=1;d2<=10;d2++)
  29.   for (d3=1;d3<=10;d3++)
  30.   for (_d1=1;_d1<=10;_d1++)
  31.   for (_d2=1;_d2<=10;_d2++)
  32.   for (_d3=1;_d3<=10;_d3++)
  33.   {
  34.     r1 = tirar_3d10(d1,d2,d3)+p1;
  35.     r2 = tirar_3d10(_d1,_d2,_d3)+p2;
  36.  
  37.     if (r1>r2)
  38.       hits++;
  39.   }
  40.  
  41.   return hits;
  42. }
  43.  
  44. int tirar_3d10(int d1, int d2, int d3)
  45. {
  46.   int mayor;
  47.   int menor;
  48.   int medio;
  49.   int r;
  50.  
  51.   mayor = max(d1,max(d2,d3));
  52.   menor = min(d1,min(d2,d3));
  53.   medio = d1+d2+d3 - mayor - menor;
  54.  
  55.   if (mayor==10 && medio==10) // critico
  56.     return 1000;
  57.   if (menor==1 && medio==1) // pifia
  58.     return -1000;
  59.  
  60.   r = medio;
  61.   if (r==mayor || r==menor) // doble
  62.   {
  63.     r = medio*2;
  64.   }
  65.   if (r==mayor && r==menor) // triple
  66.   {
  67.     r = medio*3;
  68.   }
  69.  
  70.   return r;
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement