Je peux arrondir les éléments de A
aux entiers les plus proches supérieur ou égal à A
plafond le plus proche 50
ceil(A)
Mais qu'en est si je veux arrondir au 50 plus proche supérieur ou égal à A
?
Par exemple, étant donné le tableau A
suivant,
A=[24, 35, 78, 101, 199];
Un sous-programme doit retourner les éléments suivants
B=Subroutine(A)=[50, 50, 100, 150, 200];
Notez que cela pourrait éventuellement introduire des erreurs d'arrondi en virgule flottante, pour les grandes valeurs dans A. –
Meh, alors débarrassez-vous du point décimal après le 50 dans la division. Soit les nombres sont déjà des valeurs à virgule flottante, auquel cas ce problème est déjà apparu ailleurs dans le code, soit les nombres sont des entiers, auquel cas il suffit de se débarrasser de la virgule décimale et maintenant vous faites la division entière et l'addition , auquel cas aucun problème de virgule flottante. Donc je ne vois pas le problème ici. –
Le problème est que les résultats seront incorrects. :-) Par exemple, essayez '77777777777777777' comme entrée: cette méthode donne le résultat incorrect' 77777777777777792', alors que la méthode de module donne correctement '77777777777777800'. –