4 Kommentare

Khalid Mahmood
Khalid Mahmood am 7 Apr. 2021
Your question is not clear. What is i?
Khalid Mahmood
Khalid Mahmood am 7 Apr. 2021
Bearbeitet: Khalid Mahmood am 7 Apr. 2021
%Supposed this
function y=Question5(x,i)
.....
end
Let, x=randi([-10 10],5,3)
y=Question5(x,3)
Hazal Yuvgun
Hazal Yuvgun am 7 Apr. 2021
i is row
Hazal Yuvgun
Hazal Yuvgun am 7 Apr. 2021
I want to extract the first row from others

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Khalid Mahmood
Khalid Mahmood am 7 Apr. 2021
Bearbeitet: Khalid Mahmood am 7 Apr. 2021

1 Stimme

function y=Question5(x)
y=[];
rows=size(x,1);
y(1,:)=x(1,:);
for i=2:rows
y(i,:)=x(i,:)-x(1,:);
end
end

3 Kommentare

Hazal Yuvgun
Hazal Yuvgun am 7 Apr. 2021
Output is not correct. Output only shows the last row
Khalid Mahmood
Khalid Mahmood am 7 Apr. 2021
Bearbeitet: Khalid Mahmood am 7 Apr. 2021
in for loop y(i) ensures all rows. Like y(i,:)=x(i,:)-x(1,:); This is working now
Hazal Yuvgun
Hazal Yuvgun am 7 Apr. 2021
Thank you so much

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Steven Lord
Steven Lord am 7 Apr. 2021

0 Stimmen

Where in your code do you define a variable named i? If the answer is some form of "nowhere" or "I don't" then MATLAB will call the built-in function to determine the value that should be used. That built-in function returns neither a positive integer value nor a logical value.
Khalid Mahmood
Khalid Mahmood am 7 Apr. 2021

0 Stimmen

function y=Question5(x,i)
y=[];
if i==1
y=x(1,:);
else
y=x(i,:)-x(1,:);
end
end

1 Kommentar

Khalid Mahmood
Khalid Mahmood am 7 Apr. 2021
save above code as Question5.m file. Then
>>x=randi([-10 10],5,3); % define x, or whatever x you want
>>y=Question5(x,1)
>>y=Question5(x,2)
>>y=Question5(x,3)
But I think you may need following code for advanced logic.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by