기초 파이썬

본문 바로가기
사이트 내 전체검색


기초 파이썬
기초 파이썬

9. 성공습관지수 검사 프로그램 만들기(파일/함수사용)

페이지 정보

작성자 관리자 댓글 0건 조회 119회 작성일 23-11-19 20:12

본문

9. 성공습관지수 검사 프로그램 만들기(파일/함수사용)

1. 분석


- 검사문항(16문항)은 파일에서 읽어와 리스트에 저장한다.

- 각 검사문항에 대해서 매우그렇다(5점) ~ 전혀그렇지않다(1점)을 선택하도록 한다.

- 각 문항에 대해 선택문항은 다음과 같은 형식으로 한다.


1. 하루 30분 이상 책을 읽는다

(1) 매우 그렇다

(2) 대체로 그렇다

(3) 보통이다

(4) 별로 그렇지 않다

(5) 전혀 그렇지 않다


선택 ? 


- 1에서 5를 선택하도록 한다. 선택한 값은 test_ans[] 리스트 변수에 저장한다.


2. 소스코딩 


1단계) 파일읽어 출력하기

파일명 : buja_test.py

def load_list() :

    try:

        f = open('./test_list.txt','r',encoding='UTF-8')

        

        while True:

            line = f.readline()

            if not line :

                break

            

            test_list.append(line.strip())

        f.close()

    except Exception as e:

        print(e)

        pass


# 문항파일읽기

test_list = [] 

load_list() 


print("성공습관지수 검사")

print("===============================")

print()

for i in range(0,16) :

    print(str(i+1)+". "+test_list[i])



수정하기 : 리스트의 갯수만큼 반복문을 반복하도록 수정하세요


2단계) 성공습관지수검사 문항 점수 선택하기 추가 


def load_list() :

    try:

        f = open('./test_list.txt','r',encoding='UTF-8')

        

        while True:

            line = f.readline()

            if not line :

                break

            

            test_list.append(line.strip())

        f.close()

    except Exception as e:

        print(e)

        pass


# 문항파일읽기 

test_list = [] 

load_list() 


test_ex = ["매우 그렇다","대체로 그렇다","보통이다","별로 그렇지 않다","전혀 그렇지 않다"]

test_ans = []


print("성공습관지수 검사")

print("===============================")

print()

for i in range(0,16) :

    print(str(i+1)+". "+test_list[i])

    for j in range(0,5) :

        print("("+str(j+1)+") "+test_ex[j])

    print()



수정하기 : 문항별 점수를 선택하면 리스트 변수에 저장하고 출력하도록 한다. 


3단계) 완성하기


파일명 : buja_test.py


def load_list() :

    try:

        f = open('./test_list.txt','r',encoding='UTF-8')

        

        while True:

            line = f.readline()

            if not line :

                break

            

            test_list.append(line.strip())

        f.close()

    except Exception as e:

        print(e)

        pass


test_list = []

test_ex = ["매우 그렇다","대체로 그렇다","보통이다","별로 그렇지 않다","전혀 그렇지 않다"]

test_ans = []


load_list()


print("성공습관지수 검사")

print("===============================")

print()

for i in range(0,16) :

    print(str(i+1)+". "+test_list[i])

    for j in range(0,5) :

        print("("+str(j+1)+") "+test_ex[j])

    print()

    test_ans.append( int(input("선택 ? ")))


print()

print("===============================")

print(test_ans)



3. 실행 

성공습관지수 검사

1. 하루 30분 이상 책을 읽는다
(1) 매우 그렇다
(2) 대체로 그렇다
(3) 보통이다
(4) 별로 그렇지 않다
(5) 전혀 그렇지 않다

선택 ? 1
2. 책 읽는 것을 좋아한다
(1) 매우 그렇다
(2) 대체로 그렇다
(3) 보통이다
(4) 별로 그렇지 않다
(5) 전혀 그렇지 않다

선택 ? 1

.... 생략 ....
선택 ? 2
15. 한 달에 10시간 이상 봉사활동을 한다
(1) 매우 그렇다
(2) 대체로 그렇다
(3) 보통이다
(4) 별로 그렇지 않다
(5) 전혀 그렇지 않다

선택 ? 1
16. 매달 2권 이상의 비문학 서적을 읽는다
(1) 매우 그렇다
(2) 대체로 그렇다
(3) 보통이다
(4) 별로 그렇지 않다
(5) 전혀 그렇지 않다

선택 ? 1
=======================
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1]


4. 과제 1 : 성공습관지수 검사 프로그램 수정하기

- 각 문항에 대해 1을 선택하면 5점, 5을 선택하면 1점으로 배점하여 16문항의 합계를 구한다.
tot = tot + test_ans[i]
print("합계 : ", tot)


5. 과제 2 : 성공습관지수 검사 프로그램 수정하기

- 환산점수 구하기 

합계(tot)는 16점에서 80점 사이의 값이 구해진다.

16점 ~ 80점을 0점 ~ 100점 사이의 값으로 환산하는 공식으로 계산하고, score 변수에 저장하고 출력한다.

score = 환산공식

print("점수 : ", score)



댓글목록

등록된 댓글이 없습니다.


개인정보취급방침 서비스이용약관 모바일 버전으로 보기 상단으로

TEL. 063-469-4551 FAX. 063-469-4560 전북 군산시 대학로 558
군산대학교 컴퓨터정보공학과

Copyright © www.leelab.co.kr. All rights reserved.