Matlab - iniciar programa con variables iniciales actualizadas

   
Vista:

iniciar programa con variables iniciales actualizadas

Publicado por fernando (14 intervenciones) el 25/03/2016 04:40:51
Hola estimados,presento la siguiente duda: es posible crear un programa. En el cual, al principio; me pida condiciones iniciales (por ejemplo A y B) y luego de realizar ciertas operaciones y/o condiciones al no cumplir algun criterio, (en el criterio que no se cumpla se actualizen A y B) se reinicie el proceso nuevamente ,con dichas condiciones (A y B (actualizadas en el ultimo criterio que no cumple) como las iniciales?, agradezco de antemano su ayuda!


Saludos!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Dave

iniciar programa con variables iniciales actualizadas

Publicado por Dave correa.dave30@gmail.com (934 intervenciones) el 25/03/2016 06:52:56
Hola Fernando;

No es muy clara tu consulta, pero si es posible actualizar valores en tiempo de ejecución, lo podrías hacer dentro de un bucle repetitivo FOR o WHITE o a través de funciones o sub-funciones.

​Espero que sea de alguna ayuda.

Saludos
Dave Correa
correa.dave30@gmail.com
dcorrea@fismatlab.org
Servicios de Programación Matlab
http://fismatlab.org​​
http://fismatlab.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

iniciar programa con variables iniciales actualizadas

Publicado por fernando (14 intervenciones) el 25/03/2016 07:40:17
Hola estimado!, gracias por contestar. a lo mejor no me explique bien por como mencionas, con un ejemplo podría ser mas claro, Supongamos que A,B son mis variables iniciales las cuales les daré valores de ejemplo:

A= 2 y B=3

Y tengo una variable de suma(S), que es igual a S = k +A+B ; debo iterar supongamos.. 20 veces, este proceso se realizará hasta que S sea divisible por 1374 (podría ser cualquier condición,pero por simplicidad que sea esto),si no se cumple dentro de estas iteraciones, las variables A y B,aumentaran cada una en + 1, y se procederá a realizar nuevamente la operación hasta que se cumpla condición.

Espero que ahora sea más entendible la idea, de antemano muchas gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Dave

iniciar programa con variables iniciales actualizadas

Publicado por Dave correa.dave30@gmail.com (934 intervenciones) el 25/03/2016 13:28:55
Hola Fernando;

Tu enunciado esta mucho más claro.

A manera de ejemplo te sugiero que pruebes el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
A = 2;
B = 3;
 
div = 1;
while div ~= 0
for v = 1:2
for k = 1:20
   S = k + A + B;
   div = rem(S,1374);
   if div ==0
       disp([' S = k + A + B = ',num2str(S),', es divisible'])
       disp(['A = ',num2str(A)])
       disp(['B = ',num2str(B)])
       disp(['S = ',num2str(S)])
       return
   else
       disp([' S = k + A + B = ',num2str(S),', No es divisible'])
   end
end
 
if v ==1
A = A + 1;
elseif v ==2
B = B + 1;
end
end
end

La respuesta de la ejecución del programa es la siguiente:
1
2
3
4
5
6
7
8
9
10
...
...
 S = k + A + B = 1370, No es divisible
 S = k + A + B = 1371, No es divisible
 S = k + A + B = 1372, No es divisible
 S = k + A + B = 1373, No es divisible
 S = k + A + B = 1374, es divisible
A = 677
B = 677
S = 1374
Espero que sea de alguna ayuda.

Saludos
Dave Correa
correa.dave30@gmail.com
dcorrea@fismatlab.org
Servicios de Programación Matlab
http://fismatlab.org​​
http://fismatlab.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

iniciar programa con variables iniciales actualizadas

Publicado por fernando (14 intervenciones) el 25/03/2016 20:03:52
Muchas gracias estimado!! te agradezco tu respuesta ,entendí la manera de trabajar y lo aplicare a mi código,muchas gracias!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar