这次来看到Number Random啦,也就是随机乱数。
随机乱数很常出现在面试的考题~ 所以我写了两种简单的乱数程序。
学习目标: Number Random的实务
学习难度: ☆☆☆
首先是单一乱数~ 很简单,只有srand跟rand要注意一下~
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
int num;
cin>>num;
srand(time(NULL)); //time(NULL)会输出从1970年1月1号 0点0分0秒开始到现在的秒数
cout<<rand()%num+0<<endl; //乱数从0开始直到num
return 0;
}
接下来是多个数的乱数。
使用者可以输入要乱数的数量(input),程序会输出1到input范围的数。
例如~输入5,可能会输出: 1, 3, 2, 4, 5。
比较特别的是它不会输出相同的数字。
老样子用阵列去存乱数,然後再逐一检查。
#include <iostream>
#include <ctime>
#include <stdlib.h>
using namespace std;
void random(int input)
{
srand(time(NULL));
int i,j;
int num[input];
for(i=0;i<input;i++) //走访乱数的数量 0~input
{
do
{
num[i]=rand()%(input)+1; /*这里会进行乱数(1~input)*/
for(j=0;j<i;j++)
{
if(num[i]==num[j]) /*如果有重复的乱数就跳出*/
break;
}
}while(j!=i); //当j!=i时,意味有数字重复,因为重复时,刚刚的回圈会break,不让j继续增值,所以要在做乱数
cout<<num[i]<<endl;
}
}
int main()
{
int input;
cin>>input; //输入要乱数的数量
random(input); //开始执行乱数
return 0;
}
参考资料:
https://www.cplusplus.com/reference/cstdlib/rand/
终於来到弹跳球的最後一部分~ 这篇我们主要就是要讲解倾斜面存在的状况下,程序的撰写方法! 老实说我原...
HTML的基本架构 首先 我使用的编辑器是VS CODE 因为它的介面还蛮适合新手 而且提供很多套件...
目的 不再限制一个工厂(物件)建立许多产品(物件),而是转变成一个产品(物件)对应一个工厂(物件),...
关键字搜寻与自然语言处理的关联 在正式介绍标题所提到的regular expression之前,我们...
Backtracking:通常是用在需要纪录路径的 DFS 时。 往前搜寻,发现目前的元素不符合条件...