标题:新人,求指点(一段随机算法)
取消只看楼主
农民哟
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2018-10-20
结帖率:100%
已结贴  问题点数:20 回复次数:4 
新人,求指点(一段随机算法)
本人是初学者,出于爱好现在自学编程。
该随机算法我是从书本上学习练手的,用的是DEV-C++(电脑是微软surface pro3;win10系统  X64架构)
不知道为什么,有时候有些代码可以直接编译过去,可以运行(但是同样的代码有时候就是不行;真心求指导)
不知道为什么从书本上的代码抄写练手总是编译失败;
求各位老师指点一下,以下是代码:
#include<iostream>                     //将文件iostream中的代码嵌入程序中
#include<ctime>                        //产生随机数的随机函数要打开的库
#include<iomanip>                    //参数输出
using namespace std;                //开辟空间
int main()
{
    int a[10];
    int i,j=0,x,n,s=0;
    memset(a,0x0,sizeof a);            //给数组a赋初值0          (就是在这行过不去)
    srand(time(0)) ;                //以时间做为随机数的种子
    cout<<"Input n=" ;
    cin=n;
    for(i=0;i<n;i++)
    {
        for(j=0;j<10;j++)
        {
            x=rand()%2;                //产生0或1的随机数
            s=s+x;                    //s累计每层选择的情况,最后落的格子数
        }
        a[s]=a[s]+1;                //相应的格子数累加
        s=0;
    }
    for(i=0;i<10;i++) cout<<setw(5)<<a[i];        //输出每个格子的落球数
    cout<<endl;
    system("pause");
    return 0;
}
以下是系统提示
9    23    E:\练习手册\随机现象.cpp    [Error] 'memset' was not declared in this scope
10    15    E:\练习手册\随机现象.cpp    [Error] 'srand' was not declared in this scope
12    5    E:\练习手册\随机现象.cpp    [Error] no match for 'operator=' (operand types are 'std::istream {aka std::basic_istream<char>}' and 'int')
12    5    E:\练习手册\随机现象.cpp    [Note] candidate is:
40    0    D:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\iostream    In file included from D:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++/iostream

1        E:\练习手册\随机现象.cpp                     from E:\练习手册\随机现象.cpp

58    11    D:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\istream    [Note] std::basic_istream<char>& std::basic_istream<char>::operator=(const std::basic_istream<char>&)

58    11    D:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\istream    [Note] no known conversion for argument 1 from 'int' to 'const std::basic_istream<char>&'

17    11    E:\练习手册\随机现象.cpp    [Error] 'rand' was not declared in this scope
搜索更多相关主题的帖子: 随机 std 手册 现象 cpp 
2018-10-21 23:56
农民哟
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2018-10-20
得分:0 
回复 2楼 rohalloway
抄错了,这个不是主要问题
2018-10-22 16:38
农民哟
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2018-10-20
得分:0 
回复 3楼 rjsp
感谢大佬指点,请问下这个一般需要怎么去声明?
2018-10-22 16:39
农民哟
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2018-10-20
得分:0 
回复 6楼 rjsp
这是一段《高尔顿板实验》
2018-10-24 12:22
农民哟
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2018-10-20
得分:0 
#include<iostream>
#include<ctime>
#include<iomanip>
#include<string.h>
#include<time.h>
#include<stdlib.h>
using namespace std;

int main()
{
    int a [10];
    int i,j,x,n,s=0;
   
    memset(a,0x0,sizeof a);
    srand(time(0));
    cout<<"Input n=";
    cin>>n;
   
    for(i=0;i<n;i++)
    {
        for(j=0;j<10;j++)
        {
            x=rand()%2;
            s=s+x;
            
        }
        a[s]=a[s]+1;
        s=0;
    }
    for(i=0;i<10;i++)cout<<setw(5)<<a[i];
    cout<<endl;
    system("pause");
    return 0;
   
}
最终答案,事实告诉我课本也不一定是正确的
2018-10-29 18:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-490583-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.288783 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved