You are on page 1of 29

CS PROJECT FILE SESSION 2023-2024 CLASS-12

Govt. Sarvodaya Bal Vidyalaya

SESSION 2023-2024
CS PROJECT FILE SESSION 2023-2024 CLASS-12

AYUSH JHA

SP SHARMA SIR
B

Certified that the work contained in the project titled


“E-ACCOUNT”
Has successfully completed this project the
project work entitled “E-ACCOUNT” in the subject of
Computer Science (083) Lead down in the regulations
CBSE for the process of practical Examination.

Teacher’s Signature
External Invigilator’s Signature
SACHIN SIR
CS PROJECT FILE SESSION 2023-2024 CLASS-12

PGT CS/IP
CS PROJECT FILE SESSION 2023-2024 CLASS-12

4 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

ACKNOWLEDGEMENT

Apart from the efforts of me, the success of any project depends
largely on the encouragement and guidelines of many others. I take
this opportunity to express my gratitude to the people who have
been instrumental in the successful completion of this project.

I express deep sense of gratitude to almighty God for giving me


strength for the successful completion of the project.
I express my heartfelt gratitude to my parents for constant
encouragement while carrying out this project.
I gratefully acknowledge the contribution of the individuals who
contributed in bringing this project up to this level, who continues to
look after me despite my flaws.
I express my deep sense of gratitude to the luminary SP SHARMA SIR
who has been continuously motivating and extending
their helping hand to us.

My sincere thanks to S P SHARMA SIR, Master in-charge. A guide,


Mentor all the above a friend, who critically reviewed my project and
helped in solving each and every problem, occurred during
implementation of the project.

The guidance and support received from all the members who
contributed and who are contributing to this project, was vital for
the success of the project. I am grateful for their c constant support
and help

4 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

Introduction of the Project

The project starts with –

FIRST, Enter the User name and Password of MYSQL


Then,
Entry 1 - Show name of all debtor
Entry 2 - Add a new debtor
Entry 3 - Add a new entry in old debtor
Entry 4 - Show total debt of old debtor
Entry 5 - Add a negative entry (If a person had returned some of debt money)
Entry 6 - Deletes old debtor
Entry 7 - Know all data of a debtor
Entry 8 – Exit the program

I am so glad that this work has been assigned to us, yet I


have not done this work before S P SHARMA SIR our
subject teacher has also helped us a lot to complete this
project. I feel so blessed that I have learnt all this work
with the help of our sir. As I am student of CLASS XII B
and I have not done this type of project before, I have
5 GSBV, BURARI
AYUSH
performed all that which I have learnt from our CBSE
PROGRAMMING. Hence, I know that this programming
would be further done on a big platform. Since I have
started this programming from SEPTEMBER month, I
believe that this programming would further help us a lot in
our future.

6 GSBV, BURARI AYUSH


PROCESS
FIRSTLY, we have done the planning in a paper work regarding what
must do on the assigned project “E-Account.”
SECONDLY, we discussed our planning with our subject teacher and
then he provided us the right path to perform the work.
NEXT, we started our project on foot paths of our subject teacher.
THEN, we started our coding; coding took around 2 and half months
for completion.
NEXT, we analyzed the mistakes done and then we corrected them.
THEN, we prepared the project format as shown above.

THANKS TO ALL OF WORTHY TEACHERS AND PRINCIPAL.

7
GSBV, BURARI
AYUSH
# OBJECTIVE
The objective of this project is to give shopkeeper an
effective way to keep account of the person who has
buy product without giving money or giving fewer
amounts then the actual price

There are many people who buy goods without giving


the money saying they will return it at the end of the
month or at the start of new month as they don't have
any money at the middle or at the end of the month.

This way shopkeeper can keep records of amount of


money to be returned or when the buyer had bought
something

As they are typing it takes less time to store data then


writing it down in a notebook.

They can also see name of all person who had bought
something without giving money easily.

8
GSBV, BURARI
AYUSH
System Requirements of the Project

Recommended System Requirements:


Processors: Intel® Core™ i3 processor 4300M at 2.60 GHz.
RAM: 2 to 4 GB.
Operating systems: Windows® 10, MACOS, and UBUNTU.
Python Versions: 3.10.2 or Higher.
With mysql.connector module installed
MYSQL Versions: 8.0.28 or Higher.

Minimum System Requirements Processors:


Intel Atom® processor or Intel® Core™ i3 processor.
Disk space: 512 GB to 1TB.
Operating systems: Windows 8 or later, MACOS, and
UBUNTU.
Python Versions: 2.7.X, 3.6.X

Prerequisites before installing MySQL Connector


Python
You need root or administrator privileges to perform the installation
process. Python must be installed on your machine.
Note: – MySQL Connector Python requires python to be in the
system’s PATH. Installation fails if it does not find Python.

On Windows, If Python does not exist in the system’s PATH,

Please manually add the directory containing python.exe


yourself

9
GSBV, BURARI
AYUSH
# Python Code
import mysql.connector
import datetime
import time
def adduser(a):
q="CREATE TABLE "+a+"(Date date,money_taken
int,money_returned int)"
cursor.execute(q)
mydb.commit()
def adduserstr(a):
if type(a)==str:
adduser(a)
def addentry(a,b):
date=datetime.date.today()
q="INSERT INTO "+a+"(Date,money_taken)VALUES(%s,%s)"
cursor.execute(q,(date,b))
mydb.commit()
def addnegentry(a,b):
date=datetime.date.today()
q="INSERT INTO "+a+"(Date,money_returned)VALUES(%s,%s)"
cursor.execute(q,(date,b))
mydb.commit()
def greet():
print("Your data has been updated")
x=0
for i in range(3):
username=input("Enter the user name of mysql:")
password=input("Enter the password of mysql:")
x=i+1
try:

mydb=mysql.connector.connect(host='localhost',user=username,passwd

10
GSBV, BURARI
AYUSH
=password)
except mysql.connector.errors.ProgrammingError:
print("User name or Password is wrong")
print("try again")
print(i+1)
if i==2:
print("Something went wrong")
print("try again later")
break
continue
else:
break
if x<3:
if mydb.is_connected():
print("Connected to MySQL Server version \n")
time.sleep(.5)
cursor=mydb.cursor()
cursor.execute("show databases")
databases=[]
for i in cursor:
databases.append(i[0])
d="khata"
if d in databases:
cursor.execute("use khata")
elif d not in databases:
cursor.execute("create database khata")
cursor.execute("use khata")
while mydb.is_connected:
all_user=[]
cursor.execute("show tables")
for i in cursor:
all_user.append(i[0])
print()
print("-type 1 to show name of all debtor")

11
GSBV, BURARI
AYUSH
CS PROJECT FILE SESSION 2023-2024 CLASS-12

print("-type 2 to add a new debtor")


print("-type 3 to add a new entry in old debtor")
print("-type 4 to show total debt of old debtor")
print("-type 5 to add a negative entry")
print("-type 6 to delete old debtor")
print("-type 7 to know all data of a debtor")
print("-type 8 to exit")
print("\n")
choice=int(input("Enter your choice:"))
if choice==1:
if len(all_user)==0:
print("Your databases is empty")
else:
n=0
for i in all_user:
n=n+1
print(n,":",i)
print()
elif choice==2:
a=input("Enter the name of debtor:")
if a in all_user:
print(a,"Allready exist")
else:
adduserstr(a)
print("Debtor has been saved")
b=input("Enter the amount of debt:")
addentry(a,b)
greet()
elif choice==3:
a=input("Enter the name of debtor who's data is to update :")
if a in all_user:
b=input("Enter the amount of debt:")
addentry(a,b)

greet ()

12 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

else:
print(a,"doesn’t exist")
elif choice==4:
a=input("Enter the name of debtor who's debt you want to
know:")
if a in all_user:
total=0
q="SELECT SUM(money_taken) FROM "+a
cursor.execute(q)
for i in cursor:
total=total+int(i[0])
p="SELECT SUM(money_returned) FROM "+a
cursor.execute(p)
for i in cursor:
total=total-int(i[0])
print("Total amount of money=",total)
else:
print(a,"doesn’t exist")
elif choice==5:
a=input("Enter the name of debtor who's data is to update :")
if a in all_user:
b=input("Enter the amount of money:")
addnegentry(a,b)
greet()
else:
print(a,"doesn’t exist")
elif choice==6:
a=input("Enter the name of debtor who's data is to be
delete:")
if a in all_user:
print("Are you sure you want to delete all data of ",a)
print("y/n")
b=input()
while True:

13 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

if b=="y" or b=="Y":
q="drop table "+a
cursor.execute(q)
mydb.commit()
greet()
break
elif b=="n" or b=="N":
break
else:
print("type y or n")
continue
else:
print(a,"doesn’t exist")
elif choice==7:
a=input("Enter the name of debtor who's data you want to
know:")
if a in all_user:
q="SELECT * FROM "+a
cursor.execute(q)
print("Date |Money Taken |Money Returned")
for i in cursor:
print(i[0],"|",i[1],"|",i[2])
mydb.commit()
else:
print(a,"doesn’t exist")
print()
elif(choice==8):
print("BYE")
time.sleep(.6)
break

14 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

else:
print("type a number from above ")
time.sleep(.5)
print("Came again later")
time.sleep(.5)

15 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

Output
Python 3.10.0 (tags/v3.10.0:b494f59, Oct 4 2021, 19:00:18) [MSC
v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more
information.

========== RESTART:
C:\Users\times\OneDrive\Documents\project\khata.py =========
Enter the user name of mysql:root
Enter the password of mysql:aksh
Connected to MySQL Server version

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete an old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice:1


1 : aksh
2 : aniket
-type 1 to show name of all debtor
-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete a old debtor
-type 7 to know all data of a debtor
-type 8 to exit
CS PROJECT FILE SESSION 2023-2024 CLASS-12

V
-type 1 to show name of all debtor
-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete a old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 2


Enter the name of debtor: priyansh
Debtor has been saved
Enter the amount of debt: 5000
Your data has been updated

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete a old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 3


Enter the name of debtor who's data is to update: aniket
Enter the amount of debt: 3000
Your data has been updated

-type 1 to show name of all debtor


-type 2 to add a new debtor

-type 3 to add a new entry in old debtor

17 GSBV,BURARI
AYUSH
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 4


Enter the name of debtor who's debt you want to know:aksh
Total amount of money= 5000

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 5


Enter the name of debtor who's data is to update: aksh
Enter the amount of money: 2000
Your data has been updated

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor

-type 7 to know all data of a debtor


-type 8 to exit

18 GSBV,BURARI AYUSH
Kumar
Enter your choice:7
Enter the name of debtor who's data you want to know: aksh
Date |Money Taken |Money Returned
2022-03-03 | 4000 | None
2022-03-03 | None | 2000
2022-03-03 | 3000 | None
2022-03-03 | None | 2000

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 4


Enter the name of debtor who's debt you want to know:aksh
Total amount of money= 3000

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor

-type 7 to know all data of a debtor


-type 8 to exit

19 GSBV,BURARI AYUSH
Kumar
Enter your choice: 5
Enter the name of debtor who's data is to update: 3000
3000 doesn’t exist

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 5


Enter the name of debtor whose data is to update: aksh
Enter the amount of money: 3000
Your data has been updated

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 4


Enter the name of debtor who's debt you want to know:aksh
Total amount of money= 0

20 GSBV,BURARI AYUSH
Kumar
-type 1 to show name of all debtor
-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 6


Enter the name of debtor who's data is to be delete:aksh
Are you sure you want to delete all data of aksh
y/n
y
Your data has been updated

-type 1 to show name of all debtor


-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice:11


: aniket
2 : priyansh

21 GSBV,BURARI AYUSH
Kumar
-type 1 to show name of all debtor
-type 2 to add a new debtor
-type 3 to add a new entry in old debtor
-type 4 to show total debt of old debtor
-type 5 to add a negative entry
-type 6 to delete old debtor
-type 7 to know all data of a debtor
-type 8 to exit

Enter your choice: 8


BYE
Came again later

22 GSBV,BURARI AYUSH
Kumar
Database

mysql> show databases;


+ -+
| Database |
+ -+
| aksh |
| class12 |
| information_schema |
| khata |
| mysql |

| performance_schema |
| sakila |
| sys |
| world |
+ -+
9 rows in set (0.00 sec)

22 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

mysql> use
khata;
Database
changed
mysql> show
tables;
+ -+
| Tables_in_khata |
+ -+
| aniket |
| priyansh |
+ -+
2 rows in set (0.00
sec) mysql> select
* from aniket;
+ + + +
| Date | money_taken | money_returned |
+ + + +
| 2022-03-03 | 7000 | NULL |
| 2022-03-03 | 3000 | NULL |
+ + +
+ 2 rows in set
(0.00 sec)
25 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

mysql> select * from priyansh;


+ + + +
| Date | money_taken | money_returned |
+ + + +
| 2022-03-03 | 5000 | NULL |
+ + +
+ 1 row in set
(0.00 sec)

25 GSBV,BURARI AYUSH
Kumar
CS PROJECT FILE SESSION 2023-2024 CLASS-12

TESTING
Software Testing is an empirical investigation conducted to provide
With Information about the quality of the product or service under
test stakeholders a with respect to the context which it is intended to
operate. Software Testing also provides an objective, independent
view of the software to allow the business to appreciate and
understand the risks at implementation of the software. Test
techniques include, but are not limited to, the process of executing a
program or application with the intent of finding software bugs. It
can also be stated as the process of validating and verifying that a
software program/application/product meets the business and
technical requirements that guided its design and development, so
that it works as expected and can be implemented with the same
characteristics. Software Testing, depending on the testing method
employed, can be implemented at any time in the development
process, however the most test effort is employed after the
requirements have been defined and coding process has been
completed.

TESTING METHODS
Software testing methods are traditionally divided into black box
testing. These one approaches are used to describe the point of view
that a test engineer takes when designing test cases.

BLACK BOX TESTING


Black box testing treats the software as a "black box, without any
knowledge of internal implementation. Black box testing methods
include: equivalence partitioning, boundary value analysis, all-pairs
testing, fuzz testing, model-based testing, traceability matrix,
exploratory testing and specification-based testing.

26 GSBV,BURARI AYUSH
1
CS PROJECT FILE SESSION 2023-2024 CLASS-12

SPECIFICATION-BASED TESTING
Specification-based testing aims to test the functionality of software
according to the applicable requirements. Thus, the tester inputs
data into, and only sees the output from the test object. This level of
testing usually requires through test cases to be provided to the
tester, who they test that for a given input. The output value (or
behaviour), either RUUPE value specified in the test case.
Specification-based testing is necessary, but it is insufficient to guard
against certain risks.

ADVANTAGES AND DISADVANTAGES


The black box tester has no "bonds" with the code, and a tester's
perception is very simple: a code must have bugs using the principle.
"Ask and you shall receive." black box testers find bugs where
programmers don't. But, on the other hand, black box testing has
been said to be like a walk in a dark labyrinth without a flashlight,
because the tester doesn't know how the software being tested was
actually constructed. That's why there are situations when (1) a black
box tester writes many test cases to check something that can be
tested by only one test case, and/or (2) some parts of the back end
are not tested at all. Therefore, black box testing has the advantage
of "an unaffiliated opinion," on the one hand, and the disadvantage
of "blind exploring," on the other.

27 GSBV,BURARI AYUSH
2
CS PROJECT FILE SESSION 2023-2024 CLASS-12

1. python.org
2. S P SHARMA CLASSES App and Website
3. YouTube
4. Our Subject Teacher S P Sharma Sir
5. Preeti Arora and Sumita Arora python class
12 Book
6. LearnPython.org
7. Google

28 GSBV,BURARI AYUSH

You might also like