GUI for basic operations in Boolean algebra

1 view (last 30 days)
Hello,
I've tried to do a GUI for basic operations in Boolean algebra but it seems that I do something wrong when I do the type conversion.
The structure is simple, meaning that I have 2 editable controls for the data IN, a popup for the operations( NOT, OR, AND, XOR), a push button for result and a text control for displaying the result.
The function that makes the conversions is:
function pushResult_Callback(hObject, eventdata, handles)
firstInput = evalin('base','firstInput');
secondInput = evalin('base','secondInput');
operation = evalin('base','operation');
if (operation == 1)
% Operation1 --- NOT------------------
ans1=dec2bin(firstInput);
answer=bin2dec(~ans1);
set(handles.textResult_print,'String',answer);
.............................................................
The error that I'm getting is:
Error using bin2dec (line 36)
Input must be a character vector.
I don’t understand where do I ‘wrong.
Can anyone help me?
Thank you so much!
Virginia
  3 Comments
Adam
Adam on 12 Nov 2019
Use breakpoints. When you use something like evalin it's anyone's guess what is going to be magically parachuted into your function's workspace. If you have editable controls for the data in why are you trying to access them from the base workspace rather than simply from those controls?

Sign in to comment.

Accepted Answer

David Fink
David Fink on 27 Nov 2019
Edited: David Fink on 27 Nov 2019
Like Adam mentioned, you can set breakpoints to run your code one line at a time in order to find the problem.
Alternatively, using dbstop via the command below, then running your code will pause right at the line that's throwing the error, and you can look at variables to see what values are unexpected.
>> dbstop if error

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!