program cadenas integer, parameter :: n = 4 , m = 5 integer, dimension(n,m) :: matriz integer, dimension(m) :: cantidadCadenas integer :: contador !-------- Inicializo los arrays --------- matriz(1,1:5) = (/0,1,1,0,0/) matriz(2,1:5) = (/1,1,1,1,0/) matriz(3,1:5) = (/1,1,0,1,1/) matriz(4,1:5) = (/1,1,1,0,1/) cantidadCadenas(1:5) = (/0,0,0,0,0/) do i = 1,n contador = 0 do j = 1,m if (matriz(i,j) == 1) then !--- si el elemento es 1 inicia el contador --- contador = contador + 1 else if (contador /= 0) then !--- si es cero y el contador no, encontre una cadena, actualizo cantidadCadenas(contador) = cantidadCadenas(contador) + 1 contador = 0 end if end if if ((contador /= 0).and.(j == m)) then !--- condicion para la ultima columna cantidadCadenas(contador) = cantidadCadenas(contador) + 1 !--- si contador no es cero debo actualizar end if end do end do print *, "cantidad de cadenas: ",cantidadCadenas end program cadenas