How do I prompt for a variable in one script and use it in another

Illustration
Will - 2023-11-28T12:20:55+00:00
Question: How do I prompt for a variable in one script and use it in another

My first script which prompts the user is as follows   %this main script calls to one main function(isPalindrome) with a subfunction(removeNonAlpha) %this script prompts the user for a character vector to test for being a % palindrome fprintf('A palindrome is a word, phrase, or sequence that reads the same backward as forward\n') str=input('Enter text to test for palindrome:','s'); welp=isPalindrome; if welp==1 fprintf('Heyy!! %s is a palindrome :) ',str) else fprintf('Dang :( %s is not a palindrome ',str) end The function that the first script calls is as follows %this function tests whether a character vector is a palindrome function Welp=isPalindrome(~) strrevised=removeNonAlpha(str); if strrevised==fliplr(strrevised) Welp=1; else Welp=0; end end function strrevised=removeNonAlpha(str) %this function takes in a string and revises it to remove blanks and to %remove numbers ie take only alpha characters str2=isletter(str); strrevised=str(str2); end when I run my program i get the error "unrecognized function or variable 'str' " how can i make it recognize the first variable in the function the script calls second question (kind of)how can I make welp=1 if my character vector is blank ie if str=[] because right now it would delete a blank vector because it's not a letter. PSA sorry this question is a lot lol

Expert Answer

Profile picture of Kshitij Singh Kshitij Singh answered . 2025-11-20

After the line
 
function Welp=isPalindrome(~)

insert

str = evalin('caller', 'str');

Or

str = evalin('base', 'str');

Neither of these is recommended. Recommended would be to have used

welp=isPalindrome(str);

with

function Welp=isPalindrome(str)

 


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!