加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

matlab 搜索算法(和Excel进行数据交互)

(2014-01-04 16:24:12)
标签:

it

分类: MATLAB学习
    首先将excel中的数据采用[num txt raw]=xlsread(xxxx.xls)语句读出,(xxxx为excel文件名),然后最重要的是判断某个字符或数字是否存在excel中,即上面xlsread获得的num,txt,raw。下面讲解搜索算法的实现过程,如果要获取完整的代码,可以参考去前期写的博客《基于GUI的学生成绩管理系统》
(1)对于数字的搜索,matlab程序及解释如下(基于GUI)

 number=str2num(get(handles.number,'string'));

        if ~isempty(number) %判断用户有没有输入个人信息

            panduan=any(handles.xuehao==number);
%用于查找handles.xuehao里有没有用户输入的姓名===查找excel中个有没有这个人
            if ~isequal(panduan,0)
%判断得到的值是否为0=0,不存在,!=0,存在,执行下一步                        [posx posy]=find(handles.xuehao==number);%定位学号所处的坐标                     set(handles.kecheng,'string',handles.kemu_zh);                set(handles.xingming_s,'string',handles.xingming{posx,1});                  set(handles.result,'string',num2str(handles.chengji(posx,:)));
            else
                errordlg('对不起,没有该学生的成绩记录!', '错误提示');

            end

        else

            errordlg('请输入学生学号!', '错误提示');

        end

(1)对于字符的搜索,matlab程序及解释如下(基于GUI)

course=get(handles.course,'string');

        if ~isempty(course) %判断用户有没有输入个人信息

            panduan=strcmp(handles.kemu,course);

%用于查找handles.xingming里有没有用户输入的姓名===查找excel中个有没有这个人

            [hang lie]=size(panduan);

%获取比较后的值,并取出其size,用以判断姓名对应处的坐标

            A=zeros(hang,lie);

%判断存不存在用户姓名,承接panduan=strcmp(handles.xingming_s,name);

            if ~isequal(panduan,A)

%判断panduan=strcmp(handles.xingming_s,name);得到的值是否为0=0,不存在,!=0,存在,执行下一步

                [posx posy]=find(panduan==1);%定位用户名所处的坐标

                set(handles.kecheng,'string',course);

                set(handles.xingming_s,'string',handles.xingming);                set(handles.result,'string',num2str(handles.chengji(:,posy)));

            else

                errordlg('对不起,没有该项课程!', '错误提示');

            end

        else

            errordlg('请输入课程!', '错误提示');

        end

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有