⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jsq.m

📁 运用用MATLAB编程的小型计算器
💻 M
📖 第 1 页 / 共 2 页
字号:
 if strcmp(IsStart,'true')==1
 if strcmp(IsNew,'true')==1
        set(handles.editDisplay,'String','8');
        IsNew='false',;
    else
        num=strcat(get(handles.editDisplay,'String'),'8');
        set(handles.editDisplay,'String',num);
end   
end
% --- Executes on button press in btnMul.function btnMul_Callback(hObject, eventdata, handles)% hObject    handle to btnMul (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number1;% --- 操作数1
global   Number2;% --- 操作数2
global opvalue;% --- 运算符
global IsNew;% --- 操作数新得开始
global IsStart;
 if strcmp(IsStart,'true')==1
 if strcmp(Number1,'')~=1
      Number2=str2num(get(handles.editDisplay,'String')); 
      Number1=jsq(Number1,Number2,opvalue);
      set(handles.editDisplay,'String',num2str(Number1));   
      opvalue='*';
      Number2='';
    else
        opvalue='*';
        Number1=str2num(get(handles.editDisplay,'String')); 
end
     IsNew='true';
 end
% --- Executes on button press in btn9.function btn9_Callback(hObject, eventdata, handles)% hObject    handle to btn9 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global IsNew;
global IsStart;
 if strcmp(IsStart,'true')==1
 if strcmp(IsNew,'true')==1
        set(handles.editDisplay,'String','9');
        IsNew='false',;
    else
        num=strcat(get(handles.editDisplay,'String'),'9');
        set(handles.editDisplay,'String',num);
end   
end
 
% --- Executes on button press in btnPow.function btnPow_Callback(hObject, eventdata, handles)% hObject    handle to btnPow (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number1;% --- 操作数1
global   Number2;% --- 操作数2
global opvalue;% --- 运算符
global IsNew;% --- 操作数新得开始
global IsStart;
 if strcmp(IsStart,'true')==1
 if strcmp(Number1,'')~=1
      Number2=str2num(get(handles.editDisplay,'String')); 
      Number1=jsq(Number1,Number2,opvalue);
      set(handles.editDisplay,'String',num2str(Number1));   
      opvalue='^';
      Number2='';
    else
        opvalue='^';
        Number1=str2num(get(handles.editDisplay,'String')); 
end
     IsNew='true';
 end
% --- Executes on button press in btnSqrt.function btnSqrt_Callback(hObject, eventdata, handles)% hObject    handle to btnSqrt (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number1;% --- 操作数1
global   Number2;% --- 操作数2
global opvalue;% --- 运算符
global IsNew;% --- 操作数新得开始
global IsStart;
 if strcmp(IsStart,'true')==1
    temp=str2num(get(handles.editDisplay,'String')); 
   if temp~=0
        sqrt(temp)
       set(handles.editDisplay,'String',num2str( sqrt(temp))); 
        Number1='';
        Number2='';
   end
       IsNew='true';
 end 
% --- Executes on button press in btnDiv.function btnDiv_Callback(hObject, eventdata, handles)% hObject    handle to btnDiv (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number1;% --- 操作数1
global   Number2;% --- 操作数2
global opvalue;% --- 运算符
global IsNew;% --- 操作数新得开始
global IsStart;
 if strcmp(IsStart,'true')==1
 if strcmp(Number1,'')~=1
      Number2=str2num(get(handles.editDisplay,'String')); 
      Number1=jsq(Number1,Number2,opvalue);
      set(handles.editDisplay,'String',num2str(Number1));   
      opvalue='/';
      Number2='';
    else
        opvalue='/';
        Number1=str2num(get(handles.editDisplay,'String')); 
end
     IsNew='true';
 end
% --- Executes on button press in btnBack.function btnBack_Callback(hObject, eventdata, handles)% hObject    handle to btnBack (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global IsNew;% --- 操作数新得开始
global IsStart;
 if strcmp(IsStart,'true')==1
temp=get(handles.editDisplay,'String'); 
 if strcmp(temp,'0')~=1
     if(max(size(temp))==1)
          set(handles.editDisplay,'String',0); 
            IsNew='true';
      else
    set(handles.editDisplay,'String',temp(1:end-1)); 
     end
else
    set(handles.editDisplay,'String',0);
      IsNew='false';
end
end 
% --- Executes on button press in btnClear.function btnClear_Callback(hObject, eventdata, handles)% hObject    handle to btnClear (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number2;% --- 操作数2
global IsNew;% --- 操作数新得开始
global IsStart;
 if strcmp(IsStart,'true')==1
Number2='';
IsNew='true';
set(handles.editDisplay,'string','0');
end
 
% --- Executes on button press in btnClearAll.function btnClearAll_Callback(hObject, eventdata, handles)% hObject    handle to btnClearAll (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number1;% --- 操作数1
global   Number2;% --- 操作数2
global opvalue;% --- 运算符
global IsNew;% --- 操作数新得开始
global IsStart;
 if strcmp(IsStart,'true')==1
Number1='';
Number2='';
opvalue = ''; 
IsNew='true';
set(handles.editDisplay,'string','0');
end
 
% --- Executes on button press in btnStart.function btnStart_Callback(hObject, eventdata, handles)% hObject    handle to btnStart (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number1;% --- 操作数1
global   Number2;% --- 操作数2
global opvalue;% --- 运算符
global IsStart;% --- 开启键
global IsNew;% --- 操作数新得开始
Number1='';
Number2='';
opvalue = ''; 
 IsNew='true';
 IsStart='true';
set(handles.editDisplay,'string','0');
% --- Executes on button press in btnDot.function btnDot_Callback(hObject, eventdata, handles)% hObject    handle to btnDot (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global IsStart;
 if strcmp(IsStart,'true')==1
temp=get(handles.editDisplay,'String');
if find(temp=='.')>0
    ;
else
    temp=strcat(temp,'.');
    set(handles.editDisplay,'String',temp);
end
end

% --- Executes on button press in btnSign.function btnSign_Callback(hObject, eventdata, handles)% hObject    handle to btnSign (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global IsStart;
 if strcmp(IsStart,'true')==1
temp=get(handles.editDisplay,'String');
if temp(1:1)=='-'
    temp=temp(2:end)
    set(handles.editDisplay,'String',temp);
else
    temp=0-str2num(temp);
    set(handles.editDisplay,'String',temp);
end
 
end
% --- Executes on button press in btnLog.function btnLog_Callback(hObject, eventdata, handles)% hObject    handle to btnLog (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number1;% --- 操作数1
global   Number2;% --- 操作数2
global opvalue;% --- 运算符
global IsNew;% --- 操作数新得开始
global IsStart;
 if strcmp(IsStart,'true')==1
 if strcmp(Number1,'')~=1
      Number2=str2num(get(handles.editDisplay,'String')); 
      Number1=jsq(Number1,Number2,opvalue);
      set(handles.editDisplay,'String',num2str(Number1));   
      opvalue='log';
      Number2='';
    else
        opvalue='log';
        Number1=str2num(get(handles.editDisplay,'String')); 
end
     IsNew='true';
 
 end
% --- Executes on button press in btnEqua.function btnEqua_Callback(hObject, eventdata, handles)% hObject    handle to btnEqua (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)global   Number1;
global   Number2;
global opvalue;
global IsStart;
 if strcmp(IsStart,'true')==1
 if strcmp(Number1,'')~=1
      Number2=str2num(get(handles.editDisplay,'String')); 
      Number1=jsq(Number1,Number2,opvalue);
      set(handles.editDisplay,'String',num2str(Number1));   
      Number1='';
      Number2='';
     IsNew='true';
end
end

function answer=jsq(Number1,Number2,opvalue)
switch (opvalue)
    case '+'
       answer=Number1+Number2;%加法
    case '-'
        answer=Number1-Number2;%减法
    case '*'
        answer=Number1*Number2;%乘法
    case '/'
       answer=Number1/Number2;%除法
    case '^'
        answer=Number1^Number2;%求幂次
    case 'log'
        answer=log(Number1)/log(Number2); %取对数

    otherwise
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -