0% found this document useful (0 votes)
31 views

Computer Project-1

Three students, Sandeep N., R. Vijay Subramanikandan, and T. Kamaleshwaran of class XII B declare their chemistry periodic table project to be their original work and thank their computer teacher for guidance. Certificates are provided from the subject teacher and examiner stating that the "CHEMISTRY PERIODIC TABLE" project undertaken by each student is authentic and original work done under supervision. The project includes an introduction, objectives, software used, source code, and output.

Uploaded by

tony stark
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views

Computer Project-1

Three students, Sandeep N., R. Vijay Subramanikandan, and T. Kamaleshwaran of class XII B declare their chemistry periodic table project to be their original work and thank their computer teacher for guidance. Certificates are provided from the subject teacher and examiner stating that the "CHEMISTRY PERIODIC TABLE" project undertaken by each student is authentic and original work done under supervision. The project includes an introduction, objectives, software used, source code, and output.

Uploaded by

tony stark
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

ACKNOWLEDGEMENT

I Sandeep N. of class XII B do hereby declare that this project is my

original work. I extend my appreciation and gratitude to my

computer teacher for his wholehearted support and guidance for the

successful completion of the project.


ACKNOWLEDGEMENT

I R. Vijay Subramanikandan of class XII B do hereby declare that this

project is my original work. I extend my appreciation and gratitude to

my computer teacher for his wholehearted support and guidance for

the successful completion of the project.


ACKNOWLEDGEMENT

I T. Kamaleshwaran of class XII B do hereby declare that this project is

my original work. I extend my appreciation and gratitude to my

computer teacher for his wholehearted support and guidance for the

successful completion of the project.


CERTIFICATE

This is to certify that the Computer Science Project entitled

“CHEMISTRY PERIODIC TABLE” is authentic work carried out under

my supervision as part of the CBSE Curriculum of Class XII Computer

Science and that it is as per the guidelines issued by CBSE. To the best

of my knowledge the Project is original, and a bona fide work

undertaken by SANDEEP N. of class XII - B during the academic year

2023-24.

SIGNATURE SIGNATURE
(Subject Teacher) (Examiner)
CERTIFICATE

This is to certify that the Computer Science Project entitled

“CHEMISTRY PERIODIC TABLE” is authentic work carried out under

my supervision as part of the CBSE Curriculum of Class XII Computer

Science and that it is as per the guidelines issued by CBSE. To the best

of my knowledge the Project is original, and a bona fide work

undertaken by R. Vijay Subramanikandan of class XII - B during the

academic year 2023-24.

SIGNATURE SIGNATURE
(Subject Teacher) (Examiner)
CERTIFICATE

This is to certify that the Computer Science Project entitled

“CHEMISTRY PERIODIC TABLE” is authentic work carried out under

my supervision as part of the CBSE Curriculum of Class XII Computer

Science and that it is as per the guidelines issued by CBSE. To the best

of my knowledge the Project is original, and a bona fide work

undertaken by T. Kamaleshwaran of class XII - B during the academic

year 2023-24.

SIGNATURE SIGNATURE
(Subject Teacher) (Examiner)
INDEX

1) Introduction
2) Objective of the project
3) Software used
4) Advantages of this software
5) Source code
6) Output
7) Bibliography
INTRODUCTION

This proposed project " Chemistry PERIODIC TABLE " being a small

software application developed in Python to solve/study of real- life

application/problem learnt as a part of CS Subject in class XII. This

project will facilitate users with the following features:

1)Encourage students to learn.

2)Works as a aid for study purpose

3)Provides details about all elements of the periodic table.

4)The purpose of developing this software project is to apply

knowledge and understanding of the algorithm design and

programming skill in real application.


OBJECTIVES OF THE PROJECT

The objective of this project is to let the students apply the

programming knowledge into a real- world situation/problem and

exposed the students how programming skills helps in developing a

good software to solve real-life applications.

1. Apply programming principles effectively when developing small

to medium sized projects.

2. Write effective procedural code to solve small to medium sized

problems.

3. To demonstrate ability to conduct research or applied Computer

application project, requiring writing and presentation skills which

exemplify scholarly style in computer science applications.


SOFTWARES USED
1. Python is an interpreted, high level and general-purpose

programming language. Python's design philosophy emphasizes

code readability with its notable use of significant whitespace. Its

language constructs and object-oriented approach aim to help

programmers write clear, logical code for small and large-scale

projects. Python is dynamically typed and garbage-collected. It

supports multiple programming paradigms, including structured

(particularly, procedural), object-oriented and functional

programming. Python is often described as a "batteries included"

language due to its comprehensive standard library.


ADVANTAGES OF THIS SOFTWARE

➢ User friendly interface

➢ Fast access to the database

➢ Less error

➢ More storage capacity

➢ Search facility

➢ Visually appealing

➢ Easy retrieval of data

➢ Easy entry, deleting and editing of data.


SOURCE CODE

# Import sleep function


from time import sleep

# Do in 'try' and except not to get error


try:
# Print heading
print("\n\t\t\t--- : Chemistry Periodic Table = :) : ---")
print("\t\t\t =======================")
# Global indentifiers used in program
AtNo = ""
atno = ""

# define function to get data from user


def get_input_at_no():
global AtNo, atno
atno = int(
input("\n \t Enter Atomic number of element..\n \t
==================================\n\n\t>>> "))
print('')
AtNo = atno
sleep(5)

# define function to get data from user


def get_input_at_symbol():
global AtNo, atno
symb = ['H', "He", 'Li', "Be", "B", "C", "N", "O", "F", 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K',
'Ca', 'Sc', 'Ti', 'V',
'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr',
'Nb', 'Mo', 'Tc', 'Ru',
'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm',
'Sm', 'Eu', 'Gd', 'Tb',
'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb',
'Bi', 'Po', 'At', 'Rn',
'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr',
'Rf', 'Ha', 'Unh', 'Ns',
'Hs', 'Mt', 'Uun', 'Uuu', 'Uub', 'Uut', 'Uuq', 'Uup', 'UUh', 'Uus', "Uuo"]
symbo = input("\n \t Enter Atomic symbol of element..\n \t
=================================\n\n\t>>> ")
print('')
if len(symbo) == 1:
symbo = symbo.capitalize()
elif len(symbo) == 2:
symbo = symbo.__getitem__(0).capitalize() + symbo.__getitem__(1).lower()
elif len(symbo) == 3:
symbo = symbo.__getitem__(0).capitalize() + symbo.__getitem__(1).lower() +
symbo.__getitem__(2).lower()

AtNo = int(symb.index(symbo)) + 1
atno = AtNo
sleep(5)

# define function for 3d electronic config


def ele_config():
global AtNo
orb = ['1s', '2s', '2p', '3s', '3p', '4s', '3d', '4p', '5s', '4d', '5p', '6s', '4f', '5d', '6p', '7s', '5f',
'6d', '7p']
if AtNo == 24:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 5', '4s 1', sep=' , ')
elif AtNo == 29:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 1', sep=' , ')
elif AtNo == 41:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6', '4d 4', '5s 1', sep=' , ')
elif AtNo == 42:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6',
'4d 5', '5s 1', sep=' , ')
elif AtNo == 44:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6',
'4d 7', '5s 1', sep=' , ')
elif AtNo == 45:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6',
'4d 8', '5s 1', sep=' , ')
elif AtNo == 46:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6',
'4d 10', '5s 0', sep=' , ')
elif AtNo == 47:
print(' 1s 2\n', '2s 2\n', '2p 6\n', '3s 2\n', '3p 6\n', '3d 10\n', '4s 2\n', '4p 6\n',
'4d 10\n', '5s 1', sep=' , ')
elif AtNo == 57:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6', '4d 10', '5s 2',
'5p 6',
'5d 1', '6s 2', sep=' , ')
elif AtNo == 58:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6', '4d 10', '5s 2',
'5p 6',
'4f 1', '5d 1', '6s 2', sep=' , ')
elif AtNo == 64:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6', '4d 10', '5s 2',
'5p 6',
'4f 7', '5d 1', '6s 2', sep=' , ')
elif AtNo == 78:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6', '4d 10', '5s 2',
'5p 6',
'4f 14', '5d 9', '6s 1', sep=' , ')
elif AtNo == 79:
print(' 1s 2', '2s 2', '2p 6', '3s 2', '3p 6', '3d 10', '4s 2', '4p 6', '4d 10', '5s 2',
'5p 6',
'4f 14', '5d 10', '6s 1', sep=' , ')
else:
for i in orb:
if i.__getitem__(1) == 's':
if AtNo <= 2:
print(i, AtNo)
break
else:
print(i, 2, end=' , ')
AtNo = AtNo - 2
if AtNo <= 0:
break

elif i.__getitem__(1) == 'p':


if AtNo <= 6:
print(i, AtNo)
break
else:
print(i, 6, end=' , ')
AtNo = AtNo - 6
if AtNo <= 0:
break
elif i.__getitem__(1) == 'd':
if AtNo <= 10:
print(i, AtNo)
break
else:
print(i, 10, end=' , ')
AtNo = AtNo - 10
if AtNo <= 0:
break
elif i.__getitem__(1) == 'f':
if AtNo <= 14:
print(i, AtNo)
break
else:
print(i, 14, end=' , ')
AtNo = AtNo - 14
if AtNo <= 0:
break

# define function for 2d electronic config


def eleconfig():
global AtNo
if AtNo <= 2:
if AtNo == 2:
print("Noble gas Electronic Configurations: ", AtNo)
else:
print("Electronic Configurations: ", AtNo)
elif 2 < AtNo <= 10:
if AtNo == 10:
print("Noble gas Electronic Configurations: 2 ,", (AtNo - 2))
else:
print("Electronic Configurations: 2 ,", (AtNo - 2))
elif 10 < AtNo <= 18:
if AtNo == 18:
print("Noble gas Electronic Configurations: 2 , 8 ,", (AtNo - 2 - 8))
else:
print("Electronic Configurations: 2 , 8 ,", (AtNo - 2 - 8))
elif 18 < AtNo <= 36:
if AtNo == 36:
print("Noble gas Electronic Configurations: 2 , 8 , 18 ,", (AtNo - 2 - 8 - 18))
elif 21 <= AtNo <= 30:
print("Electronic Configurations : Unavailable")
elif AtNo == 19 or 20:
print("Electronic Configurations: 2 , 8 , 8 ,", (AtNo - 18))
else:
print("Electronic Configurations : 2 , 8 , 18 ,", (AtNo - 2 - 18 - 8))
elif 36 < AtNo <= 54:
if AtNo == 54:
print("Noble gas Electronic Configurations: 2 , 8 , 18 , 18 ,", (AtNo - 2 - 8 - 18 - 18))
elif 39 <= AtNo <= 48:
print("Electronic Configurations : Unavailable")
elif AtNo == 37 or 38:
print("Electronic Configurations: 2 , 8 , 18 , 18 ,", (AtNo - 36))
else:
print("Electronic Configurations: 2 , 8 , 18 , 18 ,", (AtNo - 2 - 8 - 18 - 18))
elif 54 < AtNo <= 86:
if AtNo == 86:
print("Noble gas Electronic Configurations: 2 , 8 , 18 , 32 , 18 ,", (AtNo - 2 - 8 - 18 - 32 - 18))
elif 57 <= AtNo <= 80:
print("Electronic Configurations : Unavailable")
elif AtNo == 55 or 56:
print("Electronic Configurations: 2 , 8 , 18 , 32 , 18 ,", (AtNo - 54))
else:
print("Electronic Configurations: 2 , 8 , 18 , 32 , 18 ,", (AtNo - 2 - 8 - 18 - 32 - 18))
elif AtNo > 87:
print("Electronic Configurations : Unavailable")
# define function for symbols of element
def symbol():
global AtNo
symb = ['H', "He", 'Li', "Be", "B", "C", "N", "O", "F", 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K',
'Ca', 'Sc', 'Ti', 'V',
'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Ge', 'As', 'Se', 'Br', 'Kr', 'Rb', 'Sr', 'Y', 'Zr',
'Nb', 'Mo', 'Tc', 'Ru',
'Rh', 'Pd', 'Ag', 'Cd', 'In', 'Sn', 'Sb', 'Te', 'I', 'Xe', 'Cs', 'Ba', 'La', 'Ce', 'Pr', 'Nd', 'Pm',
'Sm', 'Eu', 'Gd', 'Tb',
'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 'Pt', 'Au', 'Hg', 'Tl', 'Pb',
'Bi', 'Po', 'At', 'Rn',
'Fr', 'Ra', 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr',
'Rf', 'Ha', 'Unh', 'Ns',
'Hs', 'Mt', 'Uun', 'Uuu', 'Uub', 'Uut', 'Uuq', 'Uup', 'UUh', 'Uus', "Uuo"]
print('\n Atomic Symbol :', symb.__getitem__(AtNo - 1), "\n\n Electronic Configurations : --")

# define function for run all code


def give_the_final_result():
get_input = int(input("\n\t1. Get Electronic Configuration by Atomic No.\
\n\n\t2. Get Electronic Configuration by Atomic Symbol.\n\n(1/2)>>> "))
if get_input == 1:
get_input_at_no()
if 0 >= AtNo > 118:
print("Invalid Atomic No")
else:
eleconfig()
symbol()
ele_config()
print('\nAtomic No =', atno)
sleep(5)
elif get_input == 2:
get_input_at_sym()
eleconfig()
symbol()
ele_config()
print('\nAtomic No =', atno)
sleep(5)
else:
sleep(5)
print("\n Enter 1 or 2 not else..")
give_the_final_result()
def try_again_or_not(name):
inn = input(f'\n Want to Try {name} \n (y/n)>>> ')
if inn.lower() == 'y':
give_the_final_result()
elif inn.lower() == 'n':
sleep(1)
else:
try_again_or_not('another')
give_the_final_result()
try_again_or_not('another')
except:
print(" ")
try_again_or_not('again')
sleep(5)
OUTPUT
BIBLIOGRAPHY

https://pvthonbasics.org/tkinter/
https://www.tutorialspoint.com/python/tk
messagebox.htm
www.effbot.org/librarybook/datetime.htm
https:/lwww.python.org
https:/Jen.wikipedia.org/wiki/Python_(programmin
g_languagett www.google.com
http://python.mykvs.in

You might also like