EPI00 개발일지
오비탈 계산기 본문
최근 학교 화학I 수업으로 오비탈 관련해서 많이 배우고 있다보니 어제 아이디어가 떠올라서 얼마 전 만들어 봤습니다.
실력도 별로 안좋은데다가 고작 하루만에 만든거니 퀄리티가 많이 좋지 않긴 하지만....
그래도 적당히 뭐 쓸 데 없는 프로그램입니다.
아래 드롭박스 링크의 파일을 다운받아 압축해제 후 start.exe파일을 실행하시면 됩니다.
사용 언어 : Python 3.7
제작 기간 : 2020년 7월 15일 오후 12시쯤 ~ 2020년 7월 16일 오전 3시쯤
www.dropbox.com/s/erwlndr4jv6kbg8/orbital.zip?dl=0
만약 출력값이 이상하거나 알고리즘이나 사용법이 궁금하시다면 아래 "더보기"를 클릭해주세요
입력 값은 세 종류로 받습니다. 각 오비탈 별 전자의 배치와 원소기호, 원자번호입니다.
첫 번째 입력 타입은 반드시 "1s2 2s2 2p6 3s2 3p6 3d2 4s2"와 같은 형식으로 입력해야 합니다.
두 번째 입력 타입은 "Ti"나 "Rn"과 같이 반드시 원소 기호로만 입력하여야 합니다.
세 번째 입력 타입은 "22"나 "86"과 같이 1 이상, 118이하의 정수로 입력하여야 합니다.
값을 입력한 뒤 그 아래의 라디오버튼으로 값의 유형을 선택합니다. 이후 텍스트 입력창의 우측에 있는 "계산"버튼을 누르면 해당 원소에 대한 정보가 아주 조금 나옵니다.
만약 위와 같이 입력하지 않는다면?
첫 번째 유형의 경우 각 오비탈에 속해있는 전자 수의 총합 = 원자의 전자 수 = 원자핵의 양성자 수 = 원자번호 임을 이용한 것이므로 1s2 1s2 1p2 이런식으로 입력하더라도 오류로 인지하지 못합니다. 짝수 번째 오는 숫자들을 모두 더하는 알고리즘입니다. 예를 들어 "1s23 2p1 3s4 3d10"과 같이 어딘가 엄청 많이 이상한 입력을 하더라도 전자 수의 총합인 38에 대해 38번 원소에 대한 정보를 출력합니다.
두 번째 유형의 경우 원소 기호가 아닌 것이 입력되면 N/A가 출력됩니다. 아무런 오류 없을 것입니다.
세 번째 유형의 경우 1 이상 118이하의 정수가 아닌 다른 숫자를 입력하면 N/A가 출력됩니다.
다만 정수가 아닌 다른 값(예 : 문자열)을 입력하면 프로그램은 강제로 종료됩니다.
이 프로그램에 대한 저작권은 제작자인 저에게 있습니다만....사실 이정도 수준의 코드는 누구나 맘먹고 만들면 금방 만들 단순한 코드니 저작권에 의한 제한따위는 걸지 않겠습니다. 어차피 contact us라면서 제 이메일 박혀있으니 상관 없겠죠
'프로그램 개발?' 카테고리의 다른 글
수소 전자의 전이 계산기_ver.2 (0) | 2020.08.10 |
---|---|
수소 전자의 전이 계산기_ver.1 (0) | 2020.08.10 |
pH계산기 (0) | 2020.07.28 |
사인함수 그래프 그리는 프로그램 (0) | 2020.07.28 |
수열의 합 계산기 (0) | 2020.07.22 |