2016-09-22 3 views
-1

Ich muss ein Malprogramm machen, das auf die nächste Gallone aufrundet, aber ich habe ein Problem. Wenn alles gesagt ist, sagen wir, Höhe ist 96, Breite ist 240, und Länge ist 200, es entspricht 919 Fuß. Subtrahiere ein paar Wände und Fenster und ich habe 832 Quadratfuß. Jetzt teile ich das durch 200 und es gibt mir 4,3, aber ich kann 4,3 Gallonen Farbe nicht haben, ich brauche es auf 5 gerundet. Der Code unten, aber runden Sie es auf 4. Es ist wahrscheinlich sehr einfach, und eine einfache Lösung, aber irgendeine Hilfe?Einen Wert auf next int aufzurunden

primer_area = (2*(length * height) + 2*(width*height))/144 
    primer_needed = (primer_area + result - door_area - window_area)/200 
    # The primer is then rounded up to the next gallon 
    primer = primer_needed 
    primer = math.ceil(primer) 
+1

'math.ceil' sollte genau das tun, was du brauchst. Do 'print (Grundierung) vor' math.ceil (Grundierung) 'und stellen Sie sicher, dass die Zahl, die Sie geben es über 4 –

+0

ist Bitte können Sie Ihren Code bearbeiten, um die tatsächlichen Werte von' Länge', 'Höhe', etc , damit wir den Code auf unseren Maschinen ausführen können? Siehe http://stackoverflow.com/help/mcve –

+0

Länge, Höhe usw. sind alle Eingabecode. height = int (Eingabe ("Bitte geben Sie die Raumhöhe in Zoll ein:")) width = int (Eingabe ("Bitte geben Sie die Breite des Raumes in Zoll ein:")) length = int (Eingabe ("Please Geben Sie die Länge des Raumes in Zoll ein: ")) –

Antwort

-2

Ich denke, wenn Sie diese Zeilen ändern wird es

primer_needed = float(primer_area + result - door_area - window_area)/200 
primer_needed = float(primer_area + result - door_area - window_area)/200 

arbeiten, oder Sie können das Ergebnis bestimmen schweben wie

x = float 
+0

Könnten Sie Ihre Antwort etwas ausführlicher erklären. –

+0

float() würde eine Ganzzahl oder eine numerische Zeichenfolge in float analysieren und das Ergebnis der Division eines Float durch eine ganze Zahl würde float sein. Wenn Sie feststellen, dass das Ergebnis ein Float ist, funktioniert es auch. – DarkShiren

+0

Diese Frage bezieht sich auf Python 3. Der Operator '/' gibt 'float' für' int'-Operanden mit normaler Genauigkeit (keine Kürzung) zurück. Keine explizite Konvertierung erforderlich. – ShadowRanger

Verwandte Themen