4 commentaires

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

Connectez-vous pour commenter.

 Réponse acceptée

Khalid Mahmood
Khalid Mahmood le 7 Avr 2021
Modifié(e) : Khalid Mahmood le 7 Avr 2021

1 vote

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 commentaires

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

Connectez-vous pour commenter.

Plus de réponses (2)

Steven Lord
Steven Lord le 7 Avr 2021

0 votes

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 le 7 Avr 2021

0 votes

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

1 commentaire

Khalid Mahmood
Khalid Mahmood le 7 Avr 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.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by