Matlab - Sumar valores a un número de filas del vector

 
Vista:

Sumar valores a un número de filas del vector

Publicado por José Manuel (2 intervenciones) el 10/12/2021 19:32:17
Buenas, tengo un problema a ver si me pueden ayudar, en mi programa trabajo con matrices de casi 300 variables pero creo que simplificando el número las variables explicandólo a continuación la solución será similar:

Necesito que de una matriz original por ejemplo A = [0,0,1,2,3,0,3,1,2,1,0,0,2,1,0] salga una matriz nueva B dónde 1 valor se va arrastrando a varias filas por debajo cuándo el valor no es 0, por ejemplo arrastraría el valor de tal manera durante 3 filas que el resultado tendría que ser así: B = [0,0,1,2,3,3,3,1,2,2,2,0,2,2,2]. Cómo se puede ver se va sumando el valor máximo de cada fila a las siguientes 3 todo el rato.

De momento sé que tengo que hacer un bucle if donde el valor de cada fila i ha de ser mayor a 0dentro de un bucle for delimitado por la largada de la matriz A, pero no se que poner dentro del bucle if para que me sume el valor a un número de filas limitado y no todo al vector

Muchisimas gracias
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 David
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Sumar valores a un número de filas del vector

Publicado por David (1094 intervenciones) el 11/12/2021 16:06:38
Hola José;

Tu consulta no es muy clara que digamos.

Saludos
David
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

Sumar valores a un número de filas del vector

Publicado por Jose Manuel (2 intervenciones) el 12/12/2021 13:05:52
Buenas David, a ver si explicando el enunciado se entiende mejor lo que quiero decir, se que es un poco confuso.

Tengo la cantidad de furgonetas que se necesitan conducir en cada franja horaria (desde las 00:000 a las 24:00), en la matriz A seria en cada valor el número de furgonetas en uso donde cada fila es cada una de las franjas horarias.

El problema viene cuando necesito una cantidad de conductores para asimilar esta cantidad de furgonetas, cuando una furgoneta necesita un conductor y no hay previamente, un nuevo conductor entraría en ese turno y, si en la siguiente franja se necesitase 2 furgonetas por ejemplo, entraría en la siguiente franja otro conductor. La cosa es que cada conductor tiene un turno de, por ejemplo 4 horas, por lo que si en el siguiente turno no se necesitasen furgonetas, igualmente tendriamos disponibles 2 conductores trabajando y, si se necesitasen 3 en la siguiente, pues entraria un nuevo conductor habiendo ya 3, que éste seria el último en irse al haber entrado el último, espero que se entienda bien...

Muchisimas 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