Matlab - Redondeo hacia numero impar

 
Vista:

Redondeo hacia numero impar

Publicado por Enrique  (3 intervenciones) el 19/12/2007 20:08:08
Hola,
Me gustaría saber si existe alguna función en matlab que si yo le doy un vector con números decimales me los redondee hacia el número impar más cercano.

Es bastante sencillo utilizando 'if', pero este calculo lo tengo que realizar millones de veces, por eso me interesa que se calcule con una función simple para optimizar cálculos.

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

RE:Redondeo hacia numero impar

Publicado por Maesla (15 intervenciones) el 20/12/2007 20:44:27
Creo que eso no existe, pero te he hecho esta funcion en un momentillo a ver si te sirve

function impares_mas_cercanos= imparesMasCercanos(decimales)
%cogemos todos los numeros y los redondeamos a su parte entera (siempre
%hacia abajo, es decir, floor(4.999) = 4
enteros = floor(decimales);
%encuentro los indices de todos los enteros que son pares
impares = find(rem(enteros,2)==0)
enteros(impares) = enteros(impares) + 1;
impares_mas_cercanos = enteros;

lo he probao y me da esto, q no se si es lo que necesitas

>> o

o =

3.6910
0.8813
2.0285
4.6773
4.5845
2.0514
4.4682
0.2895
1.7643
4.0658

ans =

3
1
3
5
5
3
5
1
1
5
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