- Để bắt đầu với giao diện, chúng ta làm theo một trong những cách sau: + Trong màn hình thiết kế giao diện, nhấn phím F5 trên bàn phím + Nhấn vào biểu tượng nút Play trong màn hình thiết kế giao diện + Trong màn hình thao tác trên Mfile, nhấn phím F5 để chạy chương trình - Trước khi muốn sử dụng ta có thể sắp xếp các menu theo trình tự tùy ý.
I. TÍNH HÀM LƯỢNG GIÁC
Bước 1: chọn hàm cần tính từ menu đổ xuống:
Bước 2: nhập giá trị vào trong ô input
Bước 3: chọn giá trị nhập vào ở ô input theo bảng Select Input (Degree hoặc Radian) Bước 4: nhấn vào dấu bằng
[Type text] Page 33
II. VẼ HÀM SỐ LƯỢNG GIÁC
Bước 1: Chọn hàm muốn vẽ:
Bước 2: Nhập vào khoảng giá trị của x
Chú ý: x phải được nhập đúng dạng đã được đề cập trong phần thiết kế giao diện.
[Type text] Page 34
+ Có thể tùy chọn bật lưới điểm, giữ hàm cũ khi vẽ hàm mới…:
III. SỬ DỤNG NÚT COLOR ON
Đánh dấu vào ô Color on để bật màu cho giao diện, bổ chọn sẽ trở về màu mặc định.
IV. SỬ DỤNG NÚT EXIT
Nếu bạn không muốn sử dụng nữa, nhấn vào nút Exit, cửa sổ mới hiện ra với tiêu đề “are you sure you want to Close ?, chọn “Yes” để đóng giao diện, chọn “No” để trở lại màn hình giao diện
[Type text] Page 35
PHẦN 7: CHƯƠNG TRÌNH
function varargout = baitaplonMatlab_bai_1(varargin)
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @baitaplonMatlab_bai_1_OpeningFcn, ...
'gui_OutputFcn', @baitaplonMatlab_bai_1_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes just before baitaplonMatlab_bai_1 is made visible.
function baitaplonMatlab_bai_1_OpeningFcn(hObject, eventdata, handles, varargin)
% Choose default command line output for baitaplonMatlab_bai_1
handles.output = hObject; handles.unit_input = 0;
% Update handles structure
guidata(hObject, handles);
% --- Outputs from this function are returned to the command line.
function varargout = baitaplonMatlab_bai_1_OutputFcn(hObject, eventdata, handles)
% Get default command line output from handles structure
varargout{1} = handles.output;
% --- Executes during object creation, after setting button properties.
function ham_CreateFcn(hObject, eventdata, handles)
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes during object creation, after setting button properties.
function input_CreateFcn(hObject, eventdata, handles)
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
[Type text] Page 36
end
% --- Executes on button press in degree.
function degree_Callback(hObject, eventdata, handles) b = str2num(get(handles.input,'string'));
handles.unit_input = b*pi/180 guidata(hObject, handles)
% --- Executes on button press in radian.
function radian_Callback(hObject, eventdata, handles) handles.unit_input = str2num(get(handles.input,'string')); guidata(hObject, handles)
% --- Executes during object creation, after setting button properties.
function x_input_CreateFcn(hObject, eventdata, handles)
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in plotx.
function plotx_Callback(hObject, eventdata, handles) set(handles.nhan,'Visible','on');
c=eval(get(handles.x_input,'string'));
if get(handles.ham,'Value') == 1;
plot(handles.axes1,c,sin(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 2;
plot(handles.axes1,c,cos(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 3;
plot(handles.axes1,c,tan(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 4;
plot(handles.axes1,c,cot(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 5;
plot(handles.axes1,c,asin(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 6;
plot(handles.axes1,c,acos(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 7;
plot(handles.axes1,c,atan(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 8;
plot(handles.axes1,c,acot(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 9;
plot(handles.axes1,c,sinh(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 10;
plot(handles.axes1,c,cosh(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 11;
plot(handles.axes1,c,tanh(c),'LineWidth',2);
elseif get(handles.ham,'Value') == 12;
plot(handles.axes1,c,coth(c),'LineWidth',2); end if get(handles.grid,'Value') == 1 grid on else grid off
[Type text] Page 37 end if get(handles.hold,'Value') == 1 hold on else hold off end
% --- Executes on button press in grid.
function grid_Callback(hObject, eventdata, handles) set(handles.axes1);
grid
% --- Executes on button press in hold.
function hold_Callback(hObject, eventdata, handles) set(handles.axes1);
hold
% --- Executes on button press in ok.
function ok_Callback(hObject, eventdata, handles) d=handles.unit_input y=get(handles.ham,'Value') if y==1; e=sin(d) elseif y==2; e=cos(d) elseif y==3; e=tan(d); elseif y==4; e=cot(d); elseif y==5; e=asin(d); elseif y==6; e=acos(d); elseif y==7; e=atan(d); elseif y==8; e=acot(d); elseif y==9; e=sinh(d); elseif y==10; e=cosh(d); elseif y==11; e=tanh(d); elseif y==12; e=coth(d); end if and(e<0.000001,e>-0.000001) set(handles.kq,'string','0'); elseif or(e>1000,e<-1000)
set(handles.kq,'string','Math error');
else
set(handles.kq,'string',num2str(e));
end
guidata(hObject,handles)
% --- Executes on button press in clc.
[Type text] Page 38 set(handles.input,'string',''); set(handles.kq,'string',''); set(handles.x_input,'string',''); set(handles.hold,'Value',0); set(handles.grid,'Value',0); set(handles.color,'Value',0); set(handles.ham,'Value',1);
set(handles.axes1,'Visible','off'); set(handles.axes1);
cla;
set(handles.nhan,'Visible','off');
% --- Executes when user attempts to close button.
function all_CloseRequestFcn(hObject, eventdata, handles)
% Hint: delete(hObject) closes the figure
delete(hObject);
% --- Executes on button press in color.
function color_Callback(hObject, eventdata, handles)
if get(handles.color,'Value')==1;
set(handles.input,'BackgroundColor','b'); set(handles.kq,'BackgroundColor','y'); set(handles.all,'Color',[0.73,0.83,0.96]);
set(handles.option,'BackgroundColor',[1,0.69,0.39]); set(handles.axes1,'Color',[0.95,0.87,0.73]);
set(handles.exit,'BackgroundColor','red');
else
set(handles.input,'BackgroundColor','white');
set(handles.kq,'BackgroundColor',[0.94,0.94,0.94]); set(handles.all,'Color',[0.94,0.94,0.94]); set(handles.option,'BackgroundColor',[0.94,0.94,0.94]); set(handles.axes1,'Color','w'); set(handles.exit,'BackgroundColor',[0.94,0.94,0.94]); end
% --- Executes on button press in exit.
function exit_Callback(hObject, eventdata, handles) set(handles.all,'Visible','off');
function x_input_Callback(hObject, eventdata, handles) set(handles.plotx,'Enable','off');
try
t = eval(get(handles.x_input,'String')); if ~isnumeric(t) if ~isnumeric(t)
set(handles.plotx,'String','t is not numeric') elseif length(t) < 2
set(handles.plotx,'String','t must be vector') elseif min(diff(t)) < 0
set(handles.plotx,'String','t must increase') else
[Type text] Page 39 set(handles.plotx,'Enable','on')
return
end catch
set(handles.plotx,'String','Cannot plot t');
[Type text] Page 40
Tài liệu tham khảo: Website:
http://www.mathworks.com/ http://z13.invisionfree.com
Matlab: Examples, Help
Thông tin Sinh viên:
Họ tên: Nguyễn Lương Thành Lớp: 09040003