2011-12-27 3 views
3

J'ai beaucoup de problèmes avec le fonctionnement qui semble être très simple. Je suis prêt à arrondir le quotient. Je sais que I : Integer := A/B, (où A et B sont des entiers) retournent le plancher. Mais je veux avoir du plafond. J'ai essayé de jouer avec 'Ceiling'Round'Rounding mais aucun d'entre eux ne semble fonctionner (la plupart du temps il n'a même pas compilé). J'espère une réponse rapide, avec un élégant (est-il possible d'écrire sans douzaine conversions de types) solution; DAda: arrondir les entiers divisés

Répondre

6

Normalement, je dirais que

I : Integer := (A + (B - 1))/B; 

(généralement croiserez en essayant de calculez le nombre d'unités de stockage dont vous avez besoin pour un certain nombre de bits).

+0

Et c'est ce dont je parle quand j'ai mentionné une solution élégante; D Merci beaucoup – thim