필터 지우기
필터 지우기

Plz help me with this function related question

조회 수: 11 (최근 30일)
Malik Shahid
Malik Shahid 2017년 12월 7일
댓글: KL 2017년 12월 7일
Hi I am trying to answer a question. But for some reason I am unable to execute the code in MATLAB. Could anyone just check and see where the problem is. The question is
  1. Write a getString() function that prompts the user for a string and returns it.
  2. Write a getChar() function that prompts the user for a character and returns it.
  3. Write a findandReplace() function that accepts a string, an old character and a new character then returns the string after replacing all the occurrences of the old character with the new. (Do NOT use loops)
  4. Write a main script to do the following:
  • Call getString() function to get the string from the user.
  • Call getChar() function to get the old character from the user.
  • Call getChar() function to get the new character from the user.
  • Call findandReplace() to replace all occurrence of the old character with the new character in the string.
  • Print the returned string.
Here is the answer so far. Please help me locate the error and correct the code.
function s=getString()
s=input('Enter A String: ','s');
disp(s);
end
function c=getChar()
c=input('Enter A Character: ','s');
disp(c);
end
function fandr = findandReplace(str,old,new)
fandr = strrep(str,old,new);
end
s=getString;
c=getChar;
d=getChar;
fanfr=findandReplace(str,old,new);
disp(fandr);

답변 (2개)

KL
KL 2017년 12월 7일
when you call findandReplace function in your main script, you should pass the inputs you received from the user. You have stored them in different names in your scripts (not str, old and new)
fanfr=findandReplace(?,?,?);
  댓글 수: 2
Malik Shahid
Malik Shahid 2017년 12월 7일
I get the following error
Undefined function or variable 'getString'.
Error in Q2d (line 1) s=getString;
Could you please write the correct code to call these functions?
KL
KL 2017년 12월 7일
The better way is to save your functions in separate files.
%filename: getString.m
function s=getString()
s=input('Enter A String: ','s');
disp(s);
end
and also similarly for the other two functions. Then use your calls to the function from another script,
%somename.m
s=getString;
c=getChar;
d=getChar;
fandr=findandReplace(?,?,?);
disp(fandr);

댓글을 달려면 로그인하십시오.


Rafael Hernandez-Walls
Rafael Hernandez-Walls 2017년 12월 7일
change
disp(fandr)
for
disp(fanfr);

카테고리

Help CenterFile Exchange에서 Matrix Computations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by