怎么随机生成一道菜品c++
时间: 2023-07-23 18:19:56 浏览: 58
你可以使用C++中的随机数生成函数,例如rand()函数,来随机选择一个菜品。你可以先定义一个数组,里面存放多个菜品名称,然后使用rand()函数生成一个随机数,根据这个随机数来选择一个菜品输出即可。以下是一个简单的代码示例:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main() {
srand(time(0)); // 初始化随机种子
string dishes[] = {"红烧肉", "宫保鸡丁", "鱼香肉丝", "糖醋里脊", "麻婆豆腐", "回锅肉", "水煮鱼", "酸菜鱼", "辣子鸡", "蒸鱼", "清蒸虾", "糖醋排骨"}; // 菜品数组
int size = sizeof(dishes) / sizeof(dishes[0]); // 菜品数量
int index = rand() % size; // 生成随机数,选择一个菜品
string dish = dishes[index];
cout << "今天的推荐菜品是:" << dish << endl;
return 0;
}
```
这个程序会从数组中随机选择一个菜品并输出。每次运行程序,输出的菜品会不同。
相关问题
输入食材随机生成菜品c++
以下是一个简单的 C++ 代码示例,用于输入食材并随机生成菜品:
```c++
#include <iostream>
#include <vector>
#include <cstdlib>
#include <ctime>
using namespace std;
vector<string> ingredients; // 存储输入的食材
vector<string> dishes; // 存储随机生成的菜品
// 随机生成菜品函数
void generateDish() {
if (ingredients.empty()) { // 如果没有输入食材,则无法生成菜品
cout << "Please input some ingredients first!" << endl;
return;
}
srand(time(NULL)); // 初始化随机数种子
int numIngredients = ingredients.size(); // 食材数量
int numDishes = rand() % numIngredients + 1; // 随机生成菜品数量
for (int i = 0; i < numDishes; i++) {
int index = rand() % numIngredients; // 随机选择一个食材
string dish = ingredients[index] + " dish"; // 以该食材为主题生成菜品
dishes.push_back(dish); // 将生成的菜品添加到 dishes 向量中
}
}
int main() {
string ingredient;
while (true) { // 循环读取食材,直到用户输入 "done"
cout << "Enter an ingredient (enter 'done' when finished): ";
cin >> ingredient;
if (ingredient == "done") {
break;
}
ingredients.push_back(ingredient); // 将输入的食材添加到 ingredients 向量中
}
generateDish(); // 随机生成菜品
cout << "Generated dishes:" << endl;
for (string dish : dishes) { // 输出生成的菜品
cout << "- " << dish << endl;
}
return 0;
}
```
该代码首先读取用户输入的食材,并将其存储在一个名为 `ingredients` 的向量中。然后,通过 `generateDish()` 函数随机生成菜品,并将生成的菜品存储在一个名为 `dishes` 的向量中。最后,程序输出生成的菜品列表。
输入一个数然后随机生成菜品c++
好的,这个问题可以通过以下 C++ 代码实现:
```cpp
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main() {
srand(time(0)); // 初始化随机数种子
int num;
cout << "请输入一个数字:";
cin >> num;
int dish = rand() % num + 1; // 生成1到num之间的随机数
switch (dish) {
case 1:
cout << "清蒸鲈鱼" << endl;
break;
case 2:
cout << "宫保鸡丁" << endl;
break;
case 3:
cout << "红烧肉" << endl;
break;
// 这里可以添加更多菜品
default:
cout << "吃土吧!" << endl;
break;
}
return 0;
}
```
这个程序会要求用户输入一个数字,然后根据这个数字生成1到num之间的随机数,最后输出对应的菜品。你可以尝试一下,输入不同的数字,看看会输出哪些菜品。