Parcial 2015, ejercicio 1 parte b

Parcial 2015, ejercicio 1 parte b

de Diego Ramos Martinez -
Número de respuestas: 3

Buenas tardes, ya pude hacer este ejercicio con la ayuda de la función de la parte a, pero quise hacerla sin esta. Mi inconveniente es que con mi ejemplo me deberia dar S=1 2 0 y solamente me da S=1 2. Quisiera que me guien para saber que me falta en el codigo para que esté completo, gracias. ej1

En respuesta a Diego Ramos Martinez

Re: Parcial 2015, ejercicio 1 parte b

de Michelle Caroline De Los Santos Berni -
Buenas, probaste definiendo "S = zeros (1, n);" ?
Creo que de esa manera el vector S te va a quedadar siempre del largo que la cantidad de filas de la matriz y en tu caso debería agregar ese 0 si la matriz es de tamaño 3xm.
Igualmente no se si esa sea la corrección, solo fué lo que se me ocurrió que podria servir.

Saludos!!
En respuesta a Diego Ramos Martinez

Re: Parcial 2015, ejercicio 1 parte b

de Eduardo Fernandez -

Hola,

Creo que lo que ocurre es que sólo modificas S cuando entra al if, es decir cuando v(i)==x. Cuando termine el while más interno (de los 2 while que usas) tenés que preguntar si pos==0 y en ese caso poner s=[s pos]; o sinó s=[s 0]; directamente. Si pos==0 significa que no está x en v. 

Pero ojo, veo otros temas en tu código. 

- El primer while debería ser un for, porque en realidad lo que hacés es recorrer todas las filas y no parás hasta llegar al final.

- Lo de generar un vector v=M(fila,:) y luego trabajar con v es innecesario. Podés trabajar directamente con M(fila,i).

-Por último, ya se sabe que v  mide m, que se calculó haciendo size(M). No hace falta volver a calcularlo.

Fijate si esto te ayuda. 

saludos,

Eduardo