2014-02-10 2 views
1

내 프로그램은 사용자가 값이있는 두 개의 특성이있는 문자를 만들 수 있도록하기위한 것입니다. 속성은 강도와 ​​기술이라고합니다. 속성 값은 1에서 12 사이의 임의의 숫자를 1에서 4 사이의 숫자로 나눈 값에 의해 생성됩니다. 결과는 10에 추가됩니다. 소수점 이하 자릿수가 발생할 수 있으므로 프로그램에서 소수 자릿수를 반올림합니다. 예를 들어 숫자가 5.6 인 경우에도 반올림하고 싶습니다. 그렇다면 5가 될 것입니다. 현재 코드에 이것을 구현하는 방법을 모르겠습니다. 나는 또한 정보가 텍스트 파일에 저장되기를 원하지만 덜 중요하다. 저는 파이썬에서 멍청한 사람입니다. 감사합니다. 감사합니다.프로그램에 반올림 기능 추가

내 현재 코드는

from random import randint 
Strenght = 10 
Skill = 10 

while True: 
    character = str(input("Enter name of your character\n")) 
    if character: 
     print("Your characters name is",character) 
     print("They have",Strenght + randint(1,12)/randint(1,4),"Strenght") 
     print("And",Skill + randint(1,12)/randint(1,4),"Skill") 


if input("Would you like to make another character? \n").lower() not in ("yes","y"): 
    break 
+2

사용은'정말 관련 없음 – Ghost

+0

을 math.floor',하지만 당신은 당신이 그들을 왔 당신이 sonn 같은 임의 롤의 결과를 던져 실현합니까? – Jbeuh

답변

3

당신은 math.floor() 명령을 사용합니다. 그것은 항상 내림합니다.

>>> import math 
>>> print (math.floor(5.6)) 
5.0 

또한 round()와 가장 가까운 정수로 math.ceil() 또는 라운드와 라운드 할 수 있습니다.

2

나누는 두 숫자가 모두 정수이므로 정수 나누기 //을 사용하여 나머지를 버린 정수 출력을 생성 할 수 있습니다.

>>> print 17 // 3 
5 
>>> from __future__ import division 
>>> print 17/3 
5.66666666667