== zerg2.c == {{{ #include <stdio.h> struct zergling{ int attack; int defense; int HP; }; int main() { int dam1,dam2=0; struct zergling a; struct zergling b; a.attack=5; a.defense=0; a.HP=50; b.attack=5; b.defense=0; b.HP=50; dam1=a.attack-b.defense; dam2=b.attack-a.defense; while(a.HP && b.HP>0) { a.HP-=dam1; b.HP-=dam2; printf("ì €ê¸€ë§ bê°€ ì €ê¸€ë§ aì—게 ë°ë¯¸ì§€ %d를 입혀 HPê°€ %dê°€ ë˜ì—ˆìŠµë‹ˆë‹¤.\n",dam1,a.HP); if(a.HP==0) break; printf("ì €ê¸€ë§ aê°€ ì €ê¸€ë§ bì—게 ë°ë¯¸ì§€ %d를 입혀 HPê°€ %dê°€ ë˜ì—ˆìŠµë‹ˆë‹¤.\n",dam2,b.HP); } printf("ì €ê¸€ë§ aê°€ ì£½ì—ˆìŠµë‹ˆë‹¤ã… ã… .\n"); return 0; } }}} == zerg.cpp == {{{ #include <stdio.h> struct zergling{ int attack; int defense; int HP; int no; }a,b; void setup(){ a.attack=5; a.defense=0; a.HP=50; a.no=1; b.attack=5; b.defense=0; b.HP=50; b.no=2; } int get_damage(zergling a, zergling b){ return a.attack-b.defense; } void att(zergling & a, zergling &b){ int damage= get_damage(a,b); b.HP-=damage; printf("ì €ê¸€ë§ %dì´ ì €ê¸€ë§ %dì—게 ë°ë¯¸ì§€ %d를 입혀 HPê°€ %dê°€ ë˜ì—ˆìŠµë‹ˆë‹¤.\n",a.no,b.no,damage,b.HP); } int main() { setup(); while(1) { att(a,b); if(b.HP==0){ printf("ì €ê¸€ë§ %dì´ ì£½ì—ˆìŠµë‹ˆë‹¤\n",b.no); break; } att(b,a); if(a.HP==0){ printf("ì €ê¸€ë§ %dê°€ 죽었습니다\n",a.no); break; } } return 0; } }}}