fork download
  1. #include <stdio.h>
  2.  
  3. struct characters
  4. {
  5. char Nama[10000];
  6. int Atk;
  7. int Def;
  8. int HP;
  9. int HP_Awal;
  10. };
  11.  
  12. int main()
  13. {
  14. struct characters Hero;
  15. struct characters Monster;
  16.  
  17. scanf("%s %d %d %d", Hero.Nama, &Hero.Atk, &Hero.Def, &Hero.HP);
  18. Hero.HP_Awal = Hero.HP;
  19.  
  20. scanf("%s %d %d %d", Monster.Nama, &Monster.Atk, &Monster.Def, &Monster.HP);
  21. Monster.HP_Awal = Monster.HP;
  22.  
  23. int move;
  24. int counter = 1;
  25.  
  26. while (1)
  27. {
  28. scanf("%d", &move);
  29.  
  30. if(move == -1)
  31. {
  32. break;
  33. }
  34.  
  35. switch(move)
  36. {
  37. case 1:
  38. Monster.HP = Monster.HP - (Hero.Atk - Monster.Def);
  39. break;
  40. case 2:
  41. Hero.HP = Hero.HP + (Hero.HP_Awal * 1/5);
  42. Hero.HP = (Hero.HP > Hero.HP_Awal) ? Hero.HP_Awal : Hero.HP;
  43. break;
  44. case 3:
  45. Monster.HP = Monster.HP - (Monster.HP_Awal * 1/4);
  46. break;
  47. }
  48.  
  49. if(Monster.HP <= 0)
  50. {
  51. printf("==Game selesai==\n%s memenangkan pertarungan dengan sisa HP: %d", Hero.Nama, Hero.HP);
  52. return 0;
  53. }
  54.  
  55. if(counter % 4 == 0)
  56. {
  57. Hero.HP = Hero.HP - (Hero.HP_Awal * 1/4);
  58. Monster.HP = Monster.HP + (Hero.HP_Awal * 1/4);
  59. Monster.HP = (Monster.HP > Monster.HP_Awal) ? Monster.HP_Awal : Monster.HP;
  60. Hero.Def = Hero.Def - (Monster.Atk * 5/100);
  61. Hero.Def = (Hero.Def < 0) ? 0 : Hero.Def;
  62. }
  63.  
  64. else
  65. {
  66. Hero.HP = Hero.HP - (Monster.Atk - Hero.Def);
  67. }
  68.  
  69. if(Hero.HP <= 0)
  70. {
  71. printf("==Game selesai==\n%s memenangkan pertarungan dengan sisa HP: %d", Monster.Nama, Monster.HP);
  72. return 0;
  73. }
  74.  
  75. counter++;
  76. }
  77.  
  78. printf("==Game selesai==\nSisa HP %s: %d\nSisa HP %s: %d", Hero.Nama, Hero.HP, Monster.Nama, Monster.HP);
  79.  
  80.  
  81. return 0;
  82. }
Success #stdin #stdout 0.01s 5280KB
stdin
Sanraku 6000 1000 40000
Pencilgon 3000 1000 35000
1
1
2
2
3
3
-1
stdout
==Game selesai==
Sisa HP Sanraku: 25700
Sisa HP Pencilgon: 17500