在matlab中,如何编写一段程序如下要求的程序:

在matlab中,如何编写一段程序如下要求的程序:,第1张

void __fastcall TForm1::Button1Click(TObject Sender)
{
TList L;
int N[7];
long T=time(0);
int iIndex;
T=T % 1000000;
L=new TList();
try
{
Label8->Caption="00";
Label9->Caption="00";
Label10->Caption="00";
Label11->Caption="00";
Label12->Caption="00";
Label13->Caption="00";
Label14->Caption="00";
Application->ProcessMessages();
iIndex=0;
for (int i = 0; i < 47; i++) {
L->Add((void )(i+1));
//Memo1->Lines->Add(i+1);
}
for (int m = 0; m <= 6; m++) {
for (int i = 0; i <= T; i++) {
random(time(0));
int j=rand();
int k=j % L->Count;

int iTmp=(int)L->Items[0];
L->Items[0]=L->Items[k];
L->Items[k]=(void )iTmp;
}
//Memo1->Lines->Add("-----------------------------");
//for (int i = 0; i <= L->Count-1; i++) {
// Memo1->Lines->Add((int)L->Items[i]);
//}

random(time(0));
int j=rand();
j=j%L->Count;
N[m]=(int)L->Items[j];
L->Delete(j);
AnsiString s;
switch (m) {
case 0:{
ssprintf("%22d",N[0]);
Label8->Caption=s;
Application->ProcessMessages();
Sleep(10);
break;
}
case 1:{
ssprintf("%22d",N[1]);
Label9->Caption=s;
Application->ProcessMessages();
Sleep(10);
break;
}
case 2:{
ssprintf("%22d",N[2]);
Label10->Caption=s;
Application->ProcessMessages();
Sleep(10);
break;
}
case 3:{
ssprintf("%22d",N[3]);
Label11->Caption=s;
Application->ProcessMessages();
Sleep(10);
break;
}
case 4:{
ssprintf("%22d",N[4]);
Label12->Caption=s;
Application->ProcessMessages();
Sleep(10);
break;
}
case 5:{
ssprintf("%22d",N[5]);
Label13->Caption=s;
Application->ProcessMessages();
Sleep(10);
break;
}
case 6:{
ssprintf("%22d",N[6]);
Label14->Caption=s;
Application->ProcessMessages();
Sleep(10);
break;
}
default:
;
}
}

//ssprintf("%22d-%22d-%22d-%22d-%22d-%22d-%22d",N[0],N[1],N[2],N[3],N[4],N[5],N[6]);
//Edit1->Text=s;
}
__finally
{
L->Free();
}
}

1建立M文件的必要性:
对于常用的或很长的程序,如果每次都从头输入,则非常费时间,也容易出错将这些程序做成M文件就方便多了--只要输入自定义的命令,就可以方便的调用,编程的效率大大提高!
(1)在记事本(txt)或maltab命令窗口中编辑好M文件
例:编写一个输入半径,计算圆的面积和球的体积 的M文件
前两行是文件头,一般说明文件的 类型(M-file),文件名(tutex2),和文件的功能(输入半径,计算圆的面积和球的体积),后面是文件体,主要是解决特定问题的程序代码
% M-file, tutex2m
% 输入半径,计算圆的面积和球的体积
r = input('Type radius:'); %从键盘输入Type radius的值,并将它赋值给r
area=pir^2;
volume=(4/3)pir^3;
fprintf('The radius is %125f
',r)
fprintf('The area of a circle is %125f
',area)
fprintf('The volume of a sphere is %125f
',volume)
(2)将上面的代码保存到工作空间里保存方法是:File/New/F-ile/保存
在matlab工作窗口直接键入M文件名,即可调用
以上面的程序为例,
tutex2 %键入文件名,回车
Type radius: %提示输入半径 ,输入半径,比如 135, 回车 显示如下
Type radius:135
The radius is 1350000

(1)“控制面板”----“管理工具”——“数据源(ODBC)”——“添加”——“创建数据源名称和选择数据库文件”。具体 *** 作见“配置数据源gif”
(2)采用修改注册表,自动配置数据源。
DB_path='D:\Program Files\MATLAB71\work\StuSystemmdb';
DB_sourcename='Godman';
LinkDB(DB_path,DB_sourcename,1);
(LinkDB为自编函数)

matlab
程序的文件代码是以m文件的形式呈现的。将matlab代码编写进m文件内然后运行即可。
例子:
建立一个
helloworldm
文件内包括内容如下:
fprintf('Hello
World!');
使用快捷键F5直接运行,然后可以在控制台下看到打印的:
Hello
World!

1、在电脑桌面上打开MATLAB。

2、当你没有把你编辑好的子函数放入正确的文件夹时,不管你输入的程序是否有错,当你执行时,系统都会提示“没有定义”,这个时候就是没有子函数文件放到主函数库文件夹中。

3、首先,输入“edit conv”这个“conv”是我准备编辑的子函数的主函数名,每个人所需的主函数名都不一样,这里可以不要那么在意。然后就可以打开相应的主函数,这是可以看到主函数所在文件夹位置。如图所示,※记住这个位置。

4、然后进行子函数的编辑,首先新建一个新的m文件,然后在编辑框中输入所要的子函数,例如我就是输入了convnem的函数,这是conv的子函数。然后点击保存。

5、接下来,在“conv”所在文件位置,将位置记录下来,将子函数的文件保存到主函数所在的文件夹即可,然后在重新的将你所需的程序(含有子函数的)输入并且执行,这时你会发现原来提示的错误没有了,那么这时调用自己添加的子函数成功了。以后有相应的子函数都可以通过这样的方法进行添加子函数。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13042228.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存