QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1059|回复: 1
打印 上一主题 下一主题

matlab一个很小的编程题目,求助!!!

[复制链接]
字体大小: 正常 放大
daseasea        

1

主题

1

听众

20

积分

升级  15.79%

该用户从未签到

自我介绍
hello~
跳转到指定楼层
1#
发表于 2013-7-22 09:02 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
本人matlab基本上是不大懂的。。。本来想用C语言实现,结果发现C语言在数学问题上实在有限,题目不难,但是实在不会用matlab把代码写出来
因此求助各位大神,耽误您一点小小的时间帮我写一下这个题目的matlab代码行吗?谢谢各位!我会附上我的c语言代码,如果有需要,可以直接用。

题目如下:一个小蚂蚁在平面格点上移动,1/4概率上下左右,每次移动一步,比如从(0,0)到(0,1),不能斜着移动。
设总共走了n步,
记这n步中,走到过的格点数目为R(重复走到的格点,只能算一个)
记这n步中,到过int(ln(n))次的格点数目为r
计算当n趋于无穷时 r/R的比值

例如:走了n=10步,可能只到过8不同的格点(有重复走到的格点),此时R=8
        在n=10步中,int(ln(10))=2,此时统计到过两次的格点数目,可能有1个,r=1

我的c语言代码如下
#include<cmath>
#include <ctime>
#include <cstdlib>
using namespace std;
long const N=100;
long const M=2*N;
int main()
{
        int a[M+1][M+1]={0};
        int b;
        int j=N,k=N;
        double R=0,r=0;
        srand(unsigned(time(0)));
        for(int i=1;i<=N;i++)
        {
                b=1+4*rand()/RAND_MAX;
                switch (b)
                {
                case 1:j++;a[j][k]=a[j][k]+1;break;
                case 2:k++;a[j][k]=a[j][k]+1;break;
                case 3:j--;a[j][k]=a[j][k]+1;break;
                case 4:k--;a[j][k]=a[j][k]+1;break;
                default:break;
                }
        }
        for(int i=0;i<=M;i++)
                for(int s=0;s<=M;s++)
                {
                        if(a[i][s]!=0)
                                R=R+1;
                }
        if(int(log(double(N)))!=0)
        {
                for(int i=0;i<=M;i++)
                        for(int s=0;s<=M;s++)
                        {
                                if(a[i][s]==int(log(double(N))))
                                r=r+1;
                        }
        }
        cout<<r<<endl<<R<<endl;
    cout<<r/R<<endl;
        return 0;
}

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
gt93        

47

主题

18

听众

880

积分

白凤

  • TA的每日心情
    慵懒
    2018-4-6 14:09
  • 签到天数: 201 天

    [LV.7]常住居民III

    自我介绍
    数学爱好者

    社区QQ达人

    群组Matlab讨论组

    群组Linux推广

    群组第三届数模基础实训

    群组2013年数学建模国赛备

    群组数学建摸协会

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-5-25 09:28 , Processed in 0.958523 second(s), 64 queries .

    回顶部