Tengo 2 int. ¿Cómo puedo dividir uno por el otro y luego reunirlo después?Dividir int y redondear en Objective-C
Respuesta
-(NSInteger)divideAndRoundUp:(NSInteger)a with:(NSInteger)b
{
if(a % b != 0)
{
return a/b + 1;
}
return a/b;
}
ya que los bools aún son 0/1 en este idioma, solo puede tener: 'return a/b + (a% b! = 0)' – iisystems
Tenga en cuenta que aunque este caso es correcto, BOOLs no son necesariamente 1 y 0 . Son "0" y "no 0" –
@ La solución de Howard puede ser más eficiente y matemáticamente más simple, pero me gusta más esta solución. La intención y la metodología son más claras para los programadores estadounidenses que piensan en términos de condiciones y cálculos de ramificación, no en la equivalencia algebraica. ;-) –
Como en C, puede lanzar tanto para flotar como para redondear el resultado utilizando una función de redondeo que toma un flotador como entrada.
int a = 1;
int b = 2;
float result = (float)a/(float)b;
int rounded = (int)(result+0.5f);
i
No hay necesidad de lanzar para flotar - hay soluciones enteras solo más simples y más sencillas - vea la respuesta de @ Howard por ejemplo –
Buen punto - Me perdí la parte de "redondear". Howard's es una solución muy elegante +1 –
¿Qué hay de:
float A,B; // this variables have to be floats!
int result = floor(A/B); // rounded down
int result = ceil(A/B); // rounded up
Si busca 2.1 Roundup> 3
double row = _datas.count/3;
double rounded = ceil(_datas.count/3);
if(row > rounded){
row += 1;
}else{
}
- 1. Cómo dividir la nueva línea de NSString en ObjectiveC
- 2. Redondear un doble a int
- 3. dividir el valor int en dígitos separados
- 4. Int Int Int y volver
- 5. Dividir el doble en dos int, un int antes del punto decimal y uno después de
- 6. Ayuda con código GCC y ObjectiveC y Cygwin
- 7. ObjectiveC Parse Integer from String
- 8. ¿Cómo redondear la división de enteros y tener el resultado int en Java?
- 9. ¿Cómo puedo establecer una variable para dividir y redondear hasta 0 decimales?
- 10. Bloques ObjectiveC equivalente en Java
- 11. javascript dividir cadena en una matriz de int
- 12. cómo dividir SQL Int Valor en varias filas
- 13. Pros y contras del uso de excepción en IOS/ObjectiveC
- 14. objectivec: fb publicar comentario error
- 15. Cómo tapar y redondear el número en ruby
- 16. Formatear un doble y no redondear
- 17. Diferencia entre NSLog y sentencia printf para ObjectiveC
- 18. Compare int y unsigned int
- 19. ¿Cómo redondear un doble al int más pequeño más cercano en C?
- 20. Cómo redondear entero en java
- 21. dividir y conquistar y recursión
- 22. Dividir y analizar window.location.hash
- 23. Sintaxis para redondear en VB.NET
- 24. Redondear valores decimales en C#
- 25. ¿Dividir lista y hacer suma de sublista?
- 26. Cómo redondear un número
- 27. diferencia entre int * i y int * i
- 28. ObjectiveC: ¿dónde declarar las propiedades de instancias privadas?
- 29. redondear decimal usando javascript
- 30. Diferencia entre int * i y int ** i
Es una pregunta muy básica, pero es legítimo; la división de enteros no siempre se comporta como se esperaría. –
Sé que suena bastante escaso pero tengo problemas con los diferentes tipos de datos de Object-C, echado a perder por el casting automático que puedes hacer en .net – Slee