输入一个数然后随机生成菜品c++
时间: 2023-08-03 15:24:18 浏览: 63
好的,这个问题可以通过以下 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之间的随机数,最后输出对应的菜品。你可以尝试一下,输入不同的数字,看看会输出哪些菜品。
相关问题
c++怎么实现随便输入一个数字,然后再随机生成菜品
以下是使用 C++ 实现第二种方法的示例代码:
```c++
#include <iostream>
#include <string>
#include <vector>
#include <cstdlib>
#include <ctime>
using namespace std;
int main() {
// 定义食材列表
vector<string> ingredients = {"鸡肉", "牛肉", "猪肉", "鱼肉", "虾", "蔬菜", "豆腐", "鸡蛋", "米饭", "面条", "面粉", "花生酱", "番茄酱", "醋", "油", "盐", "糖", "味精"};
// 使用时间作为随机数种子
srand(time(NULL));
// 提示用户输入一个数字
cout << "请输入一个数字:";
int num;
cin >> num;
// 生成随机数,用于从菜品列表中随机选择一个菜品
int index = rand() % ingredients.size();
// 输出随机生成的菜品
cout << "随机生成的菜品:";
for (int i = 0; i < num; i++) {
cout << ingredients[index];
if (i < num - 1) {
cout << "、";
}
}
cout << endl;
return 0;
}
```
该程序中,首先定义了一个食材列表 `ingredients`,包含了常见的食材。然后使用 `srand(time(NULL))` 函数设置随机数种子,以便每次运行程序时生成的随机数都不同。接着使用 `cin` 函数提示用户输入一个数字,并将其存储在 `num` 变量中。最后使用 `rand() % ingredients.size()` 生成随机数,从食材列表中随机选择一个食材,并将其输出 `num` 次。
你可以将上述代码复制到 C++ 编译器中运行,输入一个数字,查看输出结果。
输入食材随机生成菜品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` 的向量中。最后,程序输出生成的菜品列表。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)