Azzera filtri
Azzera filtri

Ask User to Continue

89 visualizzazioni (ultimi 30 giorni)
manish sharma
manish sharma il 30 Nov 2011
Commentato: Diana Hunter il 22 Mar 2023
Hi,
I am interested in asking the user to continue the code execution.
If he enters 'Y', it should make the code to run again from the start. Otherwise for 'N' it should stop.
I think, it will start with something like this:
m=input('Do you want to continue, Y/N [Y]:','s')
Please help
Thanks

Risposta accettata

Naz
Naz il 30 Nov 2011
Set the infinite loop. I did not check if this code runs, but the idea is this:
while(1)
%%your code here
m=input('Do you want to continue, Y/N [Y]:','s')
if m=='N'
break
end
end
Also, to avoid check up for extra cases from user input I would use function 'menu' instead of 'input':
while(1)
%%your code here
choice = menu('Press yes no','Yes','No');
if choice==2 | choice==0
break;
end
end
  2 Commenti
Naz
Naz il 30 Nov 2011
You also can create a dummy variable and set it to zero in the 'if' statement:
x=1;
while(x)
if ...
x=0;
end
end
manish sharma
manish sharma il 1 Dic 2011
Hey Naz,
That worked.
Thanks!

Accedi per commentare.

Più risposte (2)

Image Analyst
Image Analyst il 30 Nov 2011
promptMessage = sprintf('Do you want to Continue processing,\nor Cancel to abort processing?');
button = questdlg(promptMessage, 'Continue', 'Continue', 'Cancel', 'Continue');
if strcmpi(button, 'Cancel')
return; % Or break or continue
end
  1 Commento
Diana Hunter
Diana Hunter il 22 Mar 2023
Thank you so much for this. I was having problems with accidentally overwriting exported figures so now I have adapted this so it asks me if I want to export the figure or not, saves a lot of hassle as I always forget to comment it out when I just want to test run the formatting of the figure first.

Accedi per commentare.


Peyman Obeidy
Peyman Obeidy il 24 Mar 2017
%
while(1)
%%your code here
promptMessage = sprintf('Do you want to Continue processing,\nor Cancel to abort processing?');
button = questdlg(promptMessage, 'Continue', 'Continue', 'Terminate', 'Continue');
if strcmpi(button, 'Terminate')
break
end
end

Community Treasure Hunt

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

Start Hunting!

Translated by