电信12-1班 1206110109matlab简易计算器设计步骤与回调函数设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简易算术计算器的设计

一、算术计算器的功能:

能进行简单的加、减、乘、除法,sin,cos,tan,x^2,squrt运算,输入文本框显示为常量多项式,输出文本框显示为精确到小数点后十位的数值。计算器包含十个数字键0~9、小数点键“.”、小括号键“(”“)”、运算符号、清屏键、退格键、退出键等。

二、设计思路:

每按下一个数字键或者符号键的时候,利用get(handles.edit1,'string')获取当前输入文本框edit1的string属性,并通过字符串合并函数strcat()将当前输入文本框edit1的字符型string属性与按键的字符型string属性合并成字符串,然后利用属性设置函数set(); 将合并后的字符串返回到输入文本框edit1的string属性。当输入结束,用户按下等号的时候,采用x=get(handles.edit1,'string')获取当前输入文本框edit1的string属性,然后利用字符串执行命令y1=eval(x)计算输入文本框的表达式,得到的结果是字符型常量;然后利用字符串输出格式控制函数

y=sprintf('%.10f',y1)使输出结果精确到小数点后十位;最后利用属性设置函数

set(handles.edit2,'string',y)将转换后的字符串返回到输出文本框edit2的string属性。

三、设计步骤:

1、运行matlab2014a,进入主界面。

2、输入guide,进入GUI开发环境。

3、创建控件:按钮包括数字0~9、运算符“+ - * /”、功能键等26个,输入和动态静态文本框,显示文字的静态文本框四个等。

4、对控件单击右键弹出菜单,选择属性检查器,设置控件属性。

5、选择工具栏上的对齐对象按键,调整控件布局。

6、选择工具栏上的Tab 顺序编辑器按键,通过和设置各控件的Tab顺序。

7、设计菜单:

在GUI开发环境下,选择工具栏上的进入菜单编辑器,分别选择和创建主菜单和子菜单。

8、编写回调函数。

(1)数字键0的回调函数:

% --- Executes on button press in pushbutton3.

function pushbutton10_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton3 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

%数字键0的回调函数:

%get函数获取输入文本框edit1的string属性,赋值给numbers,数值类型为char;numbers=get(handles.edit1,'string');

%字符串合并函数strcat()将按键"0"与numbers的值合并,将合并后的字符串返回到输入文本框edit1的string属性;

set(handles.edit1,'string',strcat(numbers,'0'));

%同理编写其余数字键、小数点键、小括号键、运算符号键;

(2)数字键1的回调函数:

% --- Executes on button press in pushbutton7.

function pushbutton1_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton7 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

%数字键1的回调函数:

numbers=get(handles.edit1,'string');

(3)数字键2的回调函数:

% --- Executes on button press in pushbutton7.

function pushbutton2_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton7 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%数字键2的回调函数:

numbers=get(handles.edit1,'string');

set(handles.edit1,'string',strcat(numbers,'2'));

(4)数字键3的回调函数:

% --- Executes on button press in pushbutton10.

function pushbutton3_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton10 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%数字键3的回调函数:

numbers=get(handles.edit1,'string');

set(handles.edit1,'string',strcat(numbers,'3'));

(5)数字键4的回调函数:

% --- Executes on button press in pushbutton9.

function pushbutton4_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton9 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%数字键4的回调函数:

numbers=get(handles.edit1,'string');

set(handles.edit1,'string',strcat(numbers,'4'));

(6)数字键5的回调函数:

% --- Executes on button press in pushbutton7.

function pushbutton5_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton7 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%数字键5的回调函数:

numbers=get(handles.edit1,'string');

set(handles.edit1,'string',strcat(numbers,'5'));

(7)数字键6的回调函数:

% --- Executes on button press in pushbutton6.

function pushbutton6_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton6 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)

%数字键6的回调函数:

numbers=get(handles.edit1,'string');

相关文档
最新文档