通过抛硬币生成随机子集的 C++ 程序
c++server side programmingprogramming更新于 2024/10/25 3:40:00
这是一个通过抛硬币生成随机子集的 C++ 程序。
算法
开始 将数组中的元素作为输入。 使用 rand() 生成随机二进制序列。 它通过抛硬币随机生成 0 或 1,如果为 1,则打印数组元素。 结束
示例
#include<iostream> #include<stdlib.h> using namespace std; int main() { int i, n; cout<<"\n输入元素数量:"; cin>>n; int a[n]; cout<<"\n"; for(i = 0; i < n; i++) { cout<<"输入"<<i+1<<"个元素:"; cin>>a[i]; } cout<<"\n给定集合的随机子集为:\n\t { "; for(i = 0; i < n; i++) { if(rand()%2 == 1) cout<<a[i]<<" "; } cout<<"}"; return 0; }
输出
输入元素数量:7 输入 1 个元素:7 输入 2 个元素:6 输入 3 个元素:5 输入 4 个元素:4 输入 5 个元素:3 输入 6 个元素:2 输入 7 个元素:1 给定集合的随机子集为: { 7 6 3 }