How can I get a vector from users?

344 vues (au cours des 30 derniers jours)
Afiye Havva Geçgel
Afiye Havva Geçgel le 11 Nov 2018
Modifié(e) : Stephen23 le 30 Mar 2020
I need to get a vector from user. But user should enter the values one by one (eg: 1st value is 25 2nd value is 22). When user enter the all values (n^2 values), I want to see the vector. I tried something but it is not really work. Please, give me some info about that. ****vector seems like that, vector = [45 10 2 20].* *
n=input('num of value')
costs=zeros(1,n^2);
for i=1:n^2
vector=input('enter the %d\n th value',i)
end
disp(vector)
  1 commentaire
Stephen23
Stephen23 le 13 Nov 2018
Modifié(e) : Stephen23 le 30 Mar 2020
"But user should enter the values one by one"
That will not be a very user-friendly interface. Why not just write a function that accepts input arguments? This allows the function to be called efficiently from other code and allows it to be tested easily.

Connectez-vous pour commenter.

Réponses (2)

Image Analyst
Image Analyst le 11 Nov 2018
Try this:
% Enter as a string with numbers separted by commas or spaces
userResponse = input('enter the costs ', 's')
% Convert any commas to spaces.
userResponse = strrep(userResponse, ',', ' ')
% Convert strings to numbers.
numbers = sscanf(userResponse, '%f')
  5 commentaires
Image Analyst
Image Analyst le 12 Nov 2018
You can do that with the way I gave you. Most good MATLAB programmers would not do it the way your originally said.
Afiye Havva Geçgel
Afiye Havva Geçgel le 13 Nov 2018
Thank you, I will try.

Connectez-vous pour commenter.


Ali Baran Özpolat
Ali Baran Özpolat le 29 Mar 2020
I couldn't understand your question, clearly. Do you mean to create a code that calculate the power of numbers and put in a vector? But, if you want to create your own vector, please try this;
m = input('m= ');
for i= 1:1
for j=1:m
a(i,j)= input('elements= ');
v=[a]
end
end
In this code, you can create your own vector by prompt "m" value. For example, if you type m= 5, you will have 1x5 vector. Then, you can start to prompt your own integers. If you want to create a matrix with the same method, you use this code:
n = input('n= ');
m = input('m= ');
for i= 1:n
for j=1:m
a(i,j)= input('elements= ')
end
end

Catégories

En savoir plus sur Particle & Nuclear Physics dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by