• Lunes 23 de Diciembre de 2024, 01:51

Autor Tema:  Duda sobre una cuestión de MATLAB  (Leído 1464 veces)

aliciamaravillas

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Duda sobre una cuestión de MATLAB
« en: Lunes 6 de Septiembre de 2010, 19:48 »
0
Quería realizar una consulta sobre una cuestión de matlab.
Por ejemplo cuando hacemos un programa sobre jugadas con un dado, o varias tiradas, etc.. y queremos calcular al final cuál sería la puntuación total, ¿Cómo hago para que me calcule la suma de todas las puntuaciones que han ido saliendo durante las tiradas que yo he elegido?, ¿ en qué parte de la función debemos especificar que queremos la suma de puntuaciones?.
Pongo un ejemplo, realizamos un pedido de "n" libros y queremos calcular al final del pedido el precio total, ¿Cómo lo debo poner dentro de la función?.

function pedidos(n)
for i=1:n
Nombre=input('Introduzca el nombre del libro=','s');
Precio=input('Introduzca el precio del libro=');
A=Nombre;
B=Precio;
if B>=30
B=B-5;
disp('El precio final es='); disp(A); disp(B);
else
disp('El precio final es='); disp(A); disp(B);
end
end
end

¿Cómo pongo en la función y en qué lugar que me calcule el precio final que tendrá toda la compra de los n libros que pida?
Gracias.

jjasso5

  • Nuevo Miembro
  • *
  • Mensajes: 21
    • Ver Perfil
Re: Duda sobre una cuestión de MATLAB
« Respuesta #1 en: Jueves 9 de Septiembre de 2010, 09:57 »
0
Se puede resolver de varias maneras. Tienes que ir guardando los valores en alguna variable que se vaya actualizando en cada iteración, o ir formando un arreglo que al final sumes.

Esta es una posibilidad:

function pedidos(n)
for i = 1 : n
    m{i} = input('Introduzca el nombre del libro: ','s');
    p(i) = input('Introduzca el precio del libro: ');
    if p(i) >= 30
        p(i) = p(i) - 5;
        disp('El precio es: '); disp(m{i}); disp(p(i));
    else
        disp('El precio es: '); disp(m{i}); disp(p(i));
    end
end
GT = ['Gran total de ' num2str(n) ' libros: ' num2str(sum(p))];
disp(GT)


Hay más ejemplos de iteraciones en este sitio. Te recomiendo que lo veas:
matrixlab-examples.com/iteration.html