帮我写一个青蛙过河代码
时间: 2023-08-20 18:15:19 浏览: 130
好的,以下是一个简单的青蛙过河游戏的代码,使用 C++ 编写:
```c++
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> stones = {0, 1, 3, 5, 6, 8, 12, 17};
int curr_pos = 0;
int target_pos = stones.back();
int max_jump = 2;
int jump_count = 0;
while (curr_pos != target_pos) {
bool can_jump = false;
for (int i = curr_pos + 1; i <= target_pos && i <= curr_pos + max_jump; i++) {
if (find(stones.begin(), stones.end(), i) != stones.end()) {
curr_pos = i;
can_jump = true;
jump_count++;
break;
}
}
if (!can_jump) {
cout << "Game over! The frog cannot reach the other end." << endl;
return 0;
}
}
cout << "Congratulations! The frog has reached the other end in " << jump_count << " jumps." << endl;
return 0;
}
```
这个代码中,我们使用了一个 vector 来表示石头的位置,第一个元素是起点的位置,最后一个元素是终点的位置。我们不断循环青蛙跳到下一个可以跳的位置,直到到达终点或者无法跳到下一个位置为止。如果无法跳到下一个位置,游戏结束。最后输出跳跃次数。
阅读全文