Python 취미 도전 유치원 동생 에 게 산수 문제 1000 개 생 성
아 주머니 는 30 위안 을 써 서 유치원 의 어린 동생 에 게 연습 문 제 를 한 권 사 주 었 는데,안 에는 모두 간단 한 이원 가감 법 이 들 어 있 었 다.나 는 그 말 을 듣 고 놀 라 서'왜 돈 을 써 서 문 제 를 사?"내 가 손가락 을 움 직 이면 천 개 를 만들어 줄 수 있어."
아 주머니 는 2 원 가감 이 너무 간단 하 다 고 생각 하 셔 서 3 원 가감 법의 산수 문제
x + y + z; x + y - z; x - y - z; x - y + z
를 원 하 십 니 다.동생 이 아직 어 려 서 100 이내 의 가감 법 만 할 줄 알 고 마이너스 가 되 지 않 기 때문에 계산 문 제 는 계산 결 과 는[0, 100]
뿐만 아니 라 산식 의 두 분 의 계산 도[0, 100]
안에 있어 야 합 니 다.동생 이 커서 고마워 했 으 면 좋 겠 어,히히~
사고
[1,99]
에 생 성 된 난수x, y, z
는 그들의 계산 결과 가[0, 100]
안에 있 고 산식 중의 모든 두 사람의 계산 도[0, 100]
안에 있 으 면 문자열 에 저장 하여 답 으로 한다.예 를 들 어"10 + 13 + 9 = 32"
.문자열 을set
에 저장 합 니 다.Pythonset
은 무질서 하고 중복 되 지 않 기 때문에 자동 으로 흐 트 러 지고 무 거 워 집 니 다.답 을 파일 에 쓰 고 파일 을 쓸 때 index(문제 번호)를 써 서 결 과 를 지우 고 다른 파일 을 써 서 제목 으로 합 니 다.방법
1.무 작위 정수 생 성:
import random
x = random.randint(1, 99) # [1, 99]
2.set:
s = set() # set()
x = 1
s.add(x) # x s
3.결 과 를 파일 에 저장
text = "Hello world!"
with open(file, 'a') as f: #
#
f.seek(0)
f.truncate()
#
f.write(text)
코드
import random
def fun1(x, y, z):
s = str(x) + " + " + str(y) + " + " + str(z) + " = " + str(x + y + z)
return s
def fun2(x, y, z):
s = str(x) + " + " + str(y) + " - " + str(z) + " = " + str(x + y - z)
return s
def fun3(x, y, z):
s = str(x) + " - " + str(y) + " + " + str(z) + " = " + str(x - y + z)
return s
def fun4(x, y, z):
s = str(x) + " - " + str(y) + " - " + str(z) + " = " + str(x - y - z)
return s
def generate(num):
s = set()
while len(s) < num:
x = random.randint(1, 99)
y = random.randint(1, 99)
z = random.randint(1, 99)
if ((x + y >= 0 and x + y <= 100)
and (y + z >= 0 and y + z <= 100)
and (x + z >= 0 and x + z <= 100)
and (x + y + z >= 0 and x + y + z <= 100)):
s.add(fun1(x, y, z))
if ((x + y >= 0 and x + y <= 100)
and (y - z >= 0 and y - z <= 100)
and (x - z >= 0 and x - z <= 100)
and (x + y - z >= 0 and x + y - z <= 100)):
s.add(fun2(x, y, z))
if ((x - y >= 0 and x - y <= 100)
and (- y + z >= 0 and - y + z <= 100)
and (x + z >= 0 and x + z <= 100)
and (x - y + z >= 0 and x - y + z <= 100)):
s.add(fun3(x, y, z))
if ((x - y >= 0 and x - y <= 100)
and (- y - z >= 0 and - y - z <= 100)
and (x - z >= 0 and x - z <= 100)
and (x - y - z >= 0 and x - y - z <= 100)):
s.add(fun4(x, y, z))
return s
def save_in_file(answers, answer_file, question_file):
with open(answer_file, 'a') as f:
#
f.seek(0)
f.truncate()
cnt = 1
for ans in answers:
text = str(cnt) + ") " + ans + '
'
f.write(text)
cnt += 1
with open(question_file, 'a') as f:
f.seek(0)
f.truncate()
cnt = 1
for ans in answers:
ques = str(cnt) + ") " + ans[: ans.find('=') + 1] + "
"
f.write(ques)
cnt += 1
save_in_file(generate(1000),
"C:\\Users\\sibyl\\Desktop\\calculation\\answer.txt",
"C:\\Users\\sibyl\\Desktop\\calculation\\question.txt")
결과생 성 된 txt 파일:
레이아웃 된 워드 문서:
파 이 썬 의 취미 도전 에 관 한 이 글 은 어린이 집 동생 에 게 1000 개의 산수 문 제 를 만들어 주 는 글 을 소개 합 니 다.더 많은 파 이 썬 의 산수 문제 생 성 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.