필터 지우기
필터 지우기

toggle and elseif in matlab

조회 수: 18 (최근 30일)
Shivaani S
Shivaani S 2020년 5월 4일
답변: Hojiboy 2023년 5월 15일
Try adding a variable doDisplay to toggle if the densities are displayed. Add this condition with an elseif block.
i do not understand what we are supposed to do in the above question(bold). this question is a part of futher practice in mathlab oramp. decision branching topic futher practice section in matworks course for basic matlab. how do i solve tha bove question

채택된 답변

Geoff Hayes
Geoff Hayes 2020년 5월 4일
Shivaani - I think that all the code is asking you to do is to add another variable called doDisplay and an elseif that would check if this variable is true. If so, then you would plot the densities. So there would be two ways to plot the data - either through the doPlot or with the doDisplay
if doPlot
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
else
disp("The density of " + element ...
+ " is " + density)
end
You would need to declare and initialize the doDisplay variable too.
  댓글 수: 4
Geoff Hayes
Geoff Hayes 2020년 5월 5일
I'm not sure then...I added the above code and was able to proceed/pass. Are you sure that you have defined doDisplay?
Elisa R
Elisa R 2020년 8월 4일
This is what I did. I ran it numerous times. both doPlot and doDisplay have to be 0 in this scenario in order for the text to display instead of the plot.
doPlot = randi([0 1])
load datafile
density = data(:,1);
doDisplay = randi([0 1])
if doPlot == 1
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay == 1
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
else
disp("The density of " + element ...
+ " is " + density)
end

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

추가 답변 (8개)

Varot Pakavatsoontorn
Varot Pakavatsoontorn 2021년 5월 1일
Hi, I think the instructor might mean the following:
doDisplay = 1-doPlot
if doPlot == 1
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay == 1
disp("The density of " + element ...
+ " is " + density)
end
  댓글 수: 2
Simone Silva
Simone Silva 2022년 3월 7일
Hi.
The instructor asks what hapenned when doPlot and doDisplay are both equal one or they both equal zero.
If we define doDisplay=1-doPlot, the cases above are not possible.
Rik
Rik 2022년 4월 7일
Comment posted as flag by ANAHITA SOLTANTOUYEH:
This is imo the best interpretation of the task at hand and a great solution.

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


Saif Alameri
Saif Alameri 2022년 8월 26일
My interpretation to this practice is to create another variable (doDisplay) with random number (0 or 1) just like the (doPlot), then use it as a second condtion for (elseif):
doPlot = randi([0 1])
doDisplay=randi([0 1])
load datafile
density = data(:,1);
if doPlot == 1
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay == 1
disp("The density of " + element + " is " + density)
end
When:
doPlot = 0 and doDisplay = 0, then nothing displaied
doPlot = 1 and doDisplay = 0, then plot displaied
doPlot = 0 and doDisplay = 1, then density displaied
doPlot = 1 and doDisplay = 1, then only plot displaied
The point of this practice is to explain that second condtion will executing only when it met it's condtion and first condtion is not.

Kakasaheb Nikam
Kakasaheb Nikam 2020년 5월 14일
a Simple trick that i follow is,
at beginning I also not understand,
so we read it thrice by breaking sentance.
apply simple common logic.
we understand it.

Joanne Middour
Joanne Middour 2021년 2월 13일
This is the way I did it because I was under the impression that they are asking us to do recursion here, but I may be wrong.
doDisplay = randi([0 1])
if doPlot == 1
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay == 1
doPlot = 1
else
disp("The density of " + element ...
+ " is " + density)
end
  댓글 수: 1
ABINESH R
ABINESH R 2022년 7월 2일
they are also asking what happens when they both equal zero, or when only doDisplay equals one?What's the ans for this

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


sai
sai 2021년 4월 4일
if doPlot == 1
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay
disp("The density of " + element ...
+ " is " + density)
end

kunku S M
kunku S M 2022년 2월 3일
try this, i think it's the answer
doDisplay=randi([0 1])
if doPlot == 0
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay == 1
disp("The density of " + element ...
+ " is " + density)
end

Majdy
Majdy 2022년 11월 6일
doDisplay=randi([0,1])
doPlot=randi([0,1])
if doPlot == 1
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay == 1
disp("The density of " + element+ " is " + density)
end

Hojiboy
Hojiboy 2023년 5월 15일
doDisplay = 1-doPlot
if doPlot == 1
plot(density)
title("Sample Densities")
xticklabels(element)
ylabel("Density (g/cm^3)")
elseif doDisplay == 1
disp("The density of " + element ...
+ " is " + density)
end

카테고리

Help CenterFile Exchange에서 Number Theory에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by