本文整理汇总了C++中Map::GetK方法的典型用法代码示例。如果您正苦于以下问题:C++ Map::GetK方法的具体用法?C++ Map::GetK怎么用?C++ Map::GetK使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Map
的用法示例。
在下文中一共展示了Map::GetK方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: War
void War(Map MyMap, Map WarMap){
printf("Да начнется битва!");
printf("Введите координаты: ");
while(1){
if(WarMap.GetK() == 0 || MyMap.GetK() == 0) break;
int x = 0, y = 0;
metka:
scanf("%d %d",&x,&y);
int P = WarMap.Izm(x,y);
if(P == 0){
printf("\nВы уже стреляли в эту ячейку! Повторите:\n");
goto metka;
} else if(P == 1){
printf("Вы попали!\n");
} else if(P == 2){
printf("Мимо!\n");
} else if(P == 3){
printf("Корабль врага уничтожен! :))\n");
WarMap.MinusK();
printf("У врага осталось кораблей: %d\n",WarMap.GetK());
}
WarMap.Draw();
metka8:
if(Nastup == 0){
x = rand()%10+1;
y = rand()%10+1;
} else if(Nastup <= 4){
int r = rand()%4;
switch(r){
case 0: if(NX < 10){ x = NX+1; y = NY; } break;
case 1: if(NX > 0){ x = NX-1; y = NY; } break;
case 2: if(NY > 0){ x = NX; y = NY-1; } break;
case 3: if(NY < 10){ x = NX; y = NY+1; } break;
}
}
P = MyMap.Izm(x,y);
int Fl = 0; // сколько раз в невозможное место
if(P == 0){
Fl++;
if(Fl == 4){
Nastup = NX = NY = Fl = 0;
printf("Наступление окончено!");
}
goto metka8;
} else if(P == 1){
printf("Увы, но в ваш корабль попали!\n");
Nastup++;
NX = x;
NY = y;
} else if(P == 2){
printf("Уху, враг промахнулся!\n");
} else if(P == 3){
printf("Ваш корабль потоплен :((\n");
Nastup = 0;
MyMap.MinusK();
printf("У вас осталось кораблей: %d\n",MyMap.GetK());
}
MyMap.Draw();
}
if(MyMap.GetK() == 0){
printf("Вы проиграли! :((");
}
if(WarMap.GetK() == 0){
printf("Вы выиграли! :)");
}
system("PAUSE");
}