How can i collect number without using eval function ?

1 visualización (últimos 30 días)
ahmet ozdemir
ahmet ozdemir el 2 de Mayo de 2016
Comentada: ahmet ozdemir el 2 de Mayo de 2016
I try to use int2str and num2str which didnot compute the problem. However, it computed ans = 51 43 50 If I give 3+2, it should compute 5 and show the screen which one can be defined ? What is something? Like example:
Number=input('Enter Number please:','s')
result=something(Number)
  4 comentarios
CS Researcher
CS Researcher el 2 de Mayo de 2016
@ahmet ozdemir: Did you see my recent solution? It does what you are asking for.
ahmet ozdemir
ahmet ozdemir el 2 de Mayo de 2016
Thanks it works for plus but i want to work it for minus

Iniciar sesión para comentar.

Respuesta aceptada

CS Researcher
CS Researcher el 2 de Mayo de 2016
Editada: CS Researcher el 2 de Mayo de 2016
You can try something like this:
in = input('Please enter a number:','s');
s = strsplit(in,'+');
result = sum(str2double(s));
  3 comentarios
CS Researcher
CS Researcher el 2 de Mayo de 2016
Editada: CS Researcher el 2 de Mayo de 2016
If it works you should accept my solution. You can update it to work for any operation. I will give you the solution to a basic 2 input problem:
in = input('Please enter a number:','s');
s = strsplit(in,'-');
result = -1*diff(str2double(s));
This will however only work for a basic subtraction. You should take it forward and modify it according to your need.
ahmet ozdemir
ahmet ozdemir el 2 de Mayo de 2016
Thanks for the answer. I fixed it for my needs and I accepted your solution.

Iniciar sesión para comentar.

Más respuestas (2)

Stephen23
Stephen23 el 2 de Mayo de 2016
Editada: Stephen23 el 2 de Mayo de 2016
The safest and most versatile:
num = str2double(input('Please enter a number:','s'));

CS Researcher
CS Researcher el 2 de Mayo de 2016
You mean something like this:
Number=input('Enter Number please:','s');
eval(['result = ' Number])
  3 comentarios
Stephen23
Stephen23 el 2 de Mayo de 2016
1) the title states clearly "without using eval function"
2) eval should be avoided for many reasons. In this case it could be a security risk because it executes arbitrary code from the end user.
CS Researcher
CS Researcher el 2 de Mayo de 2016
Oh I am sorry. I misread the title.

Iniciar sesión para comentar.

Categorías

Más información sobre Just for fun en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by