Info

This question is closed. Reopen it to edit or answer.

Can anyone pls help me with the following code;

1 view (last 30 days)
choice=input('enter a no.to be recognized:no.1 for trained words,no.2 for not trained words:');
if choice==1)
[pathname,filename]=uigetfile('*.wav','Select a wave file');
current=strcat(filename,pathname);
input=wavread(current);
disp('y');
else
disp('n');
end
when i give input as 1,then it must enter into 'if'loop or else it should enter into else condition.

Answers (1)

Harry
Harry on 2 Nov 2014
Your code is mostly correct, just remove the ")" at the end of your 'if' statement:
if choice==1
  2 Comments
Shenbagalakshmi Veliah
Shenbagalakshmi Veliah on 2 Nov 2014
Thank u very much for ur reply Harry.But my problem is that for the first time if i entered '1'it enters the loop and it gets displayed as 'y',for second time if i run the same program it does not ask me the input.so i think the execution itself is stopped for only once.can u pls help me with this problem.
Harry
Harry on 3 Nov 2014
Edited: Harry on 3 Nov 2014
Ah yes, your problem is that you have named a variable "input"... but you also need to use a function called "input".
Therefore, when you create the variable input=wavread(current), this means you can't call the function choice=input(...) any more.
The easy solution is to rename your variable "input". For example, try this:
choice=input('enter a no.to be recognized:no.1 for trained words,no.2 for not trained words:');
if choice==1
[pathname,filename]=uigetfile('*.wav','Select a wave file');
current=strcat(filename,pathname);
wave=wavread(current);
disp('y');
else
disp('n');
end
In the future, you should always clear all your variables at the start of your code, using:
clear all;
This will prevent many problems like this from happening.

This question is closed.

Community Treasure Hunt

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

Start Hunting!