You are on page 1of 89

PROJECT REPORT

ON
“ONLINE VOTING SYSTEM”

Submitted in the partial fulfilment of the requirements for the degree of

BACHELOR OF SCIENCE
(INFORMATION TECHNOLOGY)
B.Sc. (IT)
To

DEPARMENT OF COMPUTER APPLICATIONS


UTTARANCHAL INSTITUTE OF MANAGEMENT
UTTARANCHAL UNIVERSITY, DEHRADUN

Under the Supervision of: Submitted by:


Dr. Sonal Sharma (HOD) Piyush khatri
Department of Computer Applications UU1910000027
Dr. Sunil Shukla Bsc (IT) 6th sem
Associate Professor (UIM)
B.Sc. (IT) 6th SEM
ACKNOWLEDGEMENT
The most awaited moment of any endeavor is successful completion, nothing can be done
successfully if done alone. Success is the outcome of contribution and consistent help of
various persons and we thank those ones who helped us in successful completion of this
project.

Primarily, we would like to thank dean of UIM Dr. Pradeep Suri for providing us with all
the necessary resources required to complete this project. We profusely thankful to the
department of computer science and applications, and our head dept. of computer application
(Dr.)Sonal Sharma and our Guide Both have been generous enough to provide us an
opportunity and accepting our candidature for the most valuable guidance and affordable
treatment given to us at every stage to boost our morale.

My acknowledgement goes to all the persons who have spent their busy time for our project.
I also thanks my friends for implementing the project much easier and giving new ideas.

Piyush Khatri

DECLARATION
We hereby declare that the project work entitld “Online Voting System ” submitted by
Piyush khatri to the “Uttaranchal Institute of Management”, is a record of original work
done by us under the guidance of “Dr. Sonal Sharma” and this project work has not
performed the basis for the award of any degree or diploma fellowship and similar project if
any.

DATE:

NAME: Piyush Khatri


CERTIFICATE

This is to certify that Piyush Khatri student of BSc IT sixth Semester,Uttaranchal Institute
of Management, Dehradun, has completed the Project Online voting system for the Batch
(2021-22).

Under the guidance of:

Prof.(Dr.) Sonal Sharma

Department of Computer Application,

Uttaranchal University, Dehradun

SIGN-:

Table of Contents
S NO. Content Page No.

2
I Acknowledgement

3
II Declaration

4
III Certificate of Originality

9
IV Introduction

10
Overview
V

Project objectives

1.
SYSTEM ANALYSIS

1.1 Identification of need


4.3 Preliminary Investigation
4.4 FEASIBILITY STUDY
4.5 Technical Feasibility
4.6 Possible Performance

4.6 SCHEDULE FEASIBILITY

5
PROJECT PLANNING
5.1 Pert Chart
5.2 Gantt Chart
5.3 Gantt Chart

6
The purpose of the project

7 TECHNICAL DESIGN
7.1 Output from the system

8 Software Requirements Specifications


8.1 Introduction
8.2 PURPOSE

8.3 FUNCTIONAL REQUIREMENTS


8.3 Non functional requirement
8.4 Assumptions and Dependencies
8.5 Data Flow Diagram
Data Flow Diagram Level-0

8.6 Data Flow Diagram Level-1

8.7 -8.10 ER Diagram

9 SYSTEM DESIGNING AND TESTING


9.1-9.3 System architecture

9.4 Testing
10 Problem Faced

11 Future Scope

12 System Security Measures

13 Conclusion

14 Bibliography

INTRODUCTION
Online Voting is a web-based voting system that will help you manage your elections easily
and securely. This voting system can be used for casting votes during the elections held in
colleges, etc. In this system the voter do not have to go to the polling booth to cast their vote.
They can use their personal computer to cast their votes. There is a database which is
maintained in which all the name of the voters with their complete information is stored.

The System Administrator registers the voters by simply filling a registration form to register
the voters. After registration, the voter is assigned a secret voter ID with which he/she can use
to login to the system and cast his/her vote. If invalid/wrong details are submitted, then the
person is not registered to vote. After the user successfully registers themselves, a link is sent
on their respective E-mail IDs. The link is a key for the activation of the account of the user.
The account is activated only after the user clicks on that link.

The site will be activated only on the day of voting. Once the user logs in, they will be
provided with a One Time Password (OTP) which has to be entered by the user before
casting his/her vote. The password will be destroyed after casting of their respective vote. A
receipt of the vote will be sent to the user on their respective E-mail IDs. The advantage of
online voting is that the voters have the choice of voting at their own free time and there is
reduced congestion. It also minimizes on errors of vote counting. The individual votes are
submitted in a database which can be queried to find out who of the aspirants for a given post
has the highest number of votes.

Overview

The project maintains two levels of users: -


• Controller level
• Voter level

The resources available for this project are: -


• Keeping a voter ID.
• Provide online voting management.
• Provide Voter Information Review.
• Provide voter information to the Student Union Commission for election.
• The Student Union Electoral Commission maintains complete voter information.
• Voters can cast their vote for anyone who wishes to vote for it.

Project objectives

The following are the objectives of the project.

 The purpose of the online voting system is to assist the organization in automatically
performing all manual manipulation of the existing system.
 The main purpose of the program is to make accurate and effective decisions for
different tasks at different times in different situations. The existing system works
hand in hand so unit members often face many embarrassing situations many times
over. Now they need to automate the whole process to make it easier and more
accurate.
 The system should support a multi-user environment.
 The system should be fully functional.

SYSTEM ANALYSIS

It’s far the manner of gathering and interpreting records, locating faults, and breaking down a
gadget into its constituent parts.

A system analysis is carried out to investigate a system or its additives so that it will decide
its working. it's a problem-solving method that complements the systems and make sure that
each one of its additives paintings together to obtain their goals. every time we study the
machine before starting the venture, we carry out the subsequent analyses:

Identification of need
The process of figuring out a consumer's requirements, regulations, pain factors, and reasons
is called needs identity. it is a fundamental personal advertising approach for determining
how valuable our product will be to the purchaser. Following are the challenge's demands
after determining all of the aforementioned necessities.

 Vote at any time from anywhere: Today’s way of living doesn’t leave


much free time. We have little to no time to do anything or go anywhere. So don’t
you think that maybe giving the chance to the members of your organization to cast
their vote in just a few minutes, without the need to go to a certain place, would be a
good option? If your answer is “yes”, then you should probably consider online
voting. Unlike traditional voting, that makes voters go to a specific place at a specific
time in order to vote, online voting allows them to cast their vote at any time of the
day and from any place, just with the need of an Internet connection.

 Boost participation: As a result of the previous point, choosing online voting


for your election will more likely boost the participation. You will give the chance to
members that otherwise may not be able to vote. At this point, you might be thinking
“what about the people that for any reason can’t vote online, wouldn’t we lose their

 participation then?“. I have good news for you: running an electoral process online
does not mean that you have to discard traditional voting. This is not one thing or the
other. Depending on the provider of the online voting system you choose, a hybrid
election might be possible. With a hybrid voting, you will be able to let voters
participate in the election by either of the two ways, traditional or online. In this type
of voting a complex method avoids voters to vote more than once, just like in the all
traditional or all online methods.
 Less physical infrastructure: When running a voting online, you avoid the
need for all the physical infrastructure usually required on a traditional voting. No
need of paper, printing, physical urns or staff may, therefore, lead to a lower monetary
investment.

 More rich ballots: With the power of linking, image rendering and so on,


online voting gives you the chance to add additional information to the ballots that
would not be possible on the traditional ones. You can, for example, link to videos of
the different candidates on a presidential election, show images of the different visual
candidates on a graphic design contest, or link to articles concerning detailed
information about where a budget will be spent on a general budget voting. These are
just a few examples, but imagine all you could do with online voting to make your
ballots richer.

• Fast and easy votes tally: Since the tally in online voting is run by
machines, you can assure that it will not have human counting errors and that it will
in most cases run faster than a count carried out by persons, so the results of your
election will be available

Preliminary Investigation

 Eligibility and Authentication of voters.


 Uniqueness of vote.
 Accuracy of the record of the vote.
 Integrity of the vote.
 Verifiability and Auditability of the vote.
 count Reliability and Non-Coercibility of the vote.
 Flexibility of election equipment.
 Convenience for the voters.
 Certifiability .
 Transparency of the voting process.
 Cost-effectiveness.

FEASIBILITY STUDY

Based on the results of preliminary research this study has now been extended to more
detailed research on the feasibility. “FEASIBILITY STUDY” is a testament to the program's
effectiveness in terms of its functionality, organizational impact, meeting capacity and the
efficient use of resources. It focuses on the big questions:

1. What are the user's tangible needs and how does the candidate system meet them?

2. What resources are available for a given candidate program?


3. What are the potential impacts of the party's candidate system?

4. Is it appropriate to solve a problem?

During the feasibility study of this project, consideration will be given to key areas of
interest. Investigating and generating ideas about the new system does this.

Steps to evaluate the feasibility

The seven steps involved in a possible analysis are:

• Configure system flowcharts.

• Calculate the potential plan.

• Define and identify features of the proposed system.

• Determine and evaluate the effectiveness and cost of each proposed project.

• Weight system performance and cost data.

• Select the most recommended system.

• Prepare and report the final project instruction to management.

TECHNICAL FEASIBILITY

A service availability study that may affect the ability to acquire an acceptable system. This
test determines whether the required technology for the proposed system is available or not.

• Can project work be done with currently available software and personal technology?

• Can the system be improved if it is upgraded?

• If new technology is needed then what can be improved?


• This is concerned with specifying equipment and software that will successfully
satisfy the user requirement. The technical needs of the system may include:

Front-end back-end selection


An important issue for the development of a project is the selection of suitable front-end and
back-end. When we decided to develop the project we went through an extensive study to
determine the most suitable platform that suits the needs of the organization as well as helps in
development of the project.

The aspects of our study included the following factors.

Front-end selection:
1. It must have a GUI that assists employees that are not from IT background.

2. Scalability and extensibility.

3. Flexibility.

4. Robustness.

5. According to the organization requirement and the culture.

6. Must provide excellent reporting features with good printing support.

7. Platform independent.

8. Easy to debug and maintain.

9. Event driven programming facility.

10. Front end must support some popular back end like Ms Access.

Back-end Selection:
1. Multiple user support.

2. Efficient data handling.

3. Provide inherent features for security.

4. Efficient data retrieval and maintenance.

5. Stored procedures.

6. Popularity.

7. Operating System compatible.

8. Easy to install.

9. Various drivers should be present.

10. Easy to plant with Front-end.

In terms of the above features I have chosen MY SQL as the back-end.

The potential for technology is often the most difficult area encountered at this stage. It is
important that the analysis and interpretation process is carried out in accordance with the
feasibility of technical feasibility. It focuses on the existing computer system and to what
extent it can support the proposed system.

Possible Performance

It is closely related to human organizations and political elements.


The considerations are:
• What changes will be made to the system?
• Which university structures are affected?
• What new skills will be needed? Do the existing students have these Skills? If not, can
they be trained later?
The program works as it is very easy for end users to use it. It only needs basic information
about the Windows platform.

SCHEDULE FEASIBILITY
Timing assessment is the most important consideration in project development. The schedule
of time required for the development of this project is very important as the development
time that consumes a lot of machine time, costs and causing delays in the development of
other systems.

A reliable online voting system can be improved over time.

PROJECT PLANNING

Pert Chart
A PERT chart, also called a PERT diagram, is a tool for making plans, setting up, and
mapping out project obligations. The programme assessment and evaluate method, or PERT,
is an acronym for programme assessment and review method. It shows the timeline of an
undertaking and breaks down unique responsibilities.

Five steps of making a pert chart:

1. Identify project tasks


2. Define task dependencies
3. Connect project tasks
4. Estimate project timeframe
5. Manage task progress

S. No. Activity Start Date Duration End Date

1 Requirement Analysis 5-03-2022 23 11-03-2022

2 Designing 12-03-2022 15 26-03-2022

3 Coding 19-03-2022 32 28-03-2022

4 Testing 29-03-2022 10 07-04-2022

5 Implementation 08-04-2022 6 14-11-2022

6 Operation and Maintenance 07-5-2022 13 27-11-2022

6.
Gantt Chart
A Gantt chart is an undertaking control methodology that depicts the development of an
undertaking. It typically carries two sections: at the left, a listing of tasks is printed, and on
the proper, a timetable with scheduling bars is used to visualise paintings. venture begin and
cease dates, milestones, undertaking dependencies, and assignees can all be included inside
the Gantt chart. Our project's planning is contemplated by the Gantt chart underneath.

1. System evaluation – The project is studied briefly so the machine can be analysed and
modelled.

2. Requirement – The tasks and conditions had been decided in order that the task can be
finished efficaciously.

3. Feasibility has a look at – look at is accomplished to research the viability of a


mission for figuring out whether or not the task is probably to succeed.

4. device design – positive modules, diagrams and charts have been described to satisfy
the desired necessities of the undertaking.

five. Coding – the main framework of undertaking is building the usage of one-of-a-kind
programming languages.

6. checking out – venture turned into being tested before implementation to provide the
high-quality outcome from the project to the customers.

7. Implementation – challenge is being applied to ensure it meets the objectives that are
being outlined within the making plans segment.

8. Report –

9. Documentation-
S. No. Activity Start Date Duration End Date

1 Requirement Analysis 02-02-2022 10 11-02-2022

2 Feasibility study 12-02-2022 19 27-02-2022

3 Design 01-03-2022 14 14-03-2022


4 Documentation 15-03-2022 31 15-04-2022

5 Coding 17-03-2022 13 20-04-2022

6 Testing 23-04-2022 14 06-05-2022


The purpose of the project

The objectives of this project are;

 Easy to operate: - The system should be easy to use and in such a way that it can be
developed in a short period of time and fit a limited user budget.
 Immediate data storage: - In the hands-on system there are many problems with
storing large amounts of information.
 Quick access to information: - The main purpose of the proposed system is to
provide quick and effective retrieval of information.
 No Borrowing: - In the proposed system great care may be that no information is
repeated anywhere, where it is stored or otherwise. This will ensure the economic use
of storage space and compliance with stored data.
 Reliability: - The reliability of the proposed system will be high due to the reasons
mentioned above. The reason for the increased reliability of the system is that there
will now be proper storage of information.
 Accuracy: - The accuracy level of the proposed system will be high. All operations
will be performed correctly and ensure that any information from the facility is
accurate.
TECHNICAL DESIGN

ONLINE VOTING SYSTEM is a voting system where any voter can exercise his or her
voting rights anywhere in the world. THE ONLINE VOTING SYSTEM consists of-:

• Voter information on the website.

• Voters' names with IDs.

• Vote vote on the website.

• Calculation of the total number of votes.

The various functions performed in the system are: -

• Record Voter information on the Voters' Website.

• Examination of information completed by the voter.

• Get rid of false information.

The program provides a link to the following;

a. The system enables students to sign up for the program before starting to select the person
they wish to vote for.

b. The system provides home-based interactions where users (i.e. even unregistered) can view
updates that occur at different candidate positions in elections.

c. The system provides a voting system where users can identify the person representing the
president, vice-presidents and faculty representatives according to their abilities.

d. The system requires students to verify the selected candidate before casting the wrong
candidate.

e. This system prevents students from cheating by not allowing them to vote twice.
Output from the system

a. The system has the ability to provide updates on what is going on in the election and to
provide a comprehensive number of votes and a percentage bar.
Software Requirements Specifications

Voting is the civic


duty of the people
in a democracy,
unfortunately, the
archaic
methods of voting
still haunt us in the
21st century. Long
queues,
inconvenient
drives, and the
perceived
insignificance of a
single vote deter
many from
participating. We
need something
that can provide
the infrastructure
for a voting
system that is
efficient, secure,
mobile, and
traceable.
Thankfully,
blockchain
technology enables
us to facilitate a
voting
infrastructure that
can modernize
voting
the way we see fit
CHAPTER 1
INTRODUCT
ION
Voting is the civic
duty of the people
in a democracy,
unfortunately, the
archaic
methods of voting
still haunt us in the
21st century. Long
queues,
inconvenient
drives, and the
perceived
insignificance of a
single vote deter
many from
participating. We
need something
that can provide
the infrastructure
for a voting
system that is
efficient, secure,
mobile, and
traceable.
Thankfully,
blockchain
technology enables
us to facilitate a
voting
infrastructure that
can modernize
voting
the way we see fit
CHAPTER 1
INTRODUCT
ION
Voting is the civic
duty of the people
in a democracy,
unfortunately, the
archaic
methods of voting
still haunt us in the
21st century. Long
queues,
inconvenient
drives, and the
perceived
insignificance of a
single vote deter
many from
participating. We
need something
that can provide
the infrastructure
for a voting
system that is
efficient, secure,
mobile, and
traceable.
Thankfully,
blockchain
technology enables
us to facilitate a
voting
infrastructure that
can modernize
voting
the way we see fit
This document describes the structural properties and software requirements of the Online
Voting System project.

Voting is the civic


duty of the people
in a democracy,
unfortunately, the
archaic
methods of voting
still haunt us in the
21st century. Long
queues,
inconvenient
drives, and the
perceived
insignificance of a
single vote deter
many from
participating. We
need something
that can provide
the infrastructure
for a voting
system that is
efficient, secure,
mobile, and
traceable.
Thankfully,
blockchain
technology enables
us to facilitate a
voting
infrastructure that
can modernize
voting
the way we see fit
Voting is the civic duty of the people in a
democracy, unfortunately, the archaic
methods of voting still haunt us in the 21st
century. Long queues, inconvenient
drives, and the perceived insignificance of a
single vote deter many from
participating. We need something that can
provide the infrastructure for a voting
system that is efficient, secure, mobile, and
traceable. Thankfully, blockchain
technology enables us to facilitate a voting
infrastructure that can modernize voting
the way we see fit
Voting is a Civic duty of the people in a democracy, unfortunately the archaic method of
voting still haunt us in the 21 century. Long queues, inconvenient drives , and the perceived
in significance of a single vote deter many from participating.

We need something that can provide the infrastructure for the voting system that is efficient
secure mobile and traceable.

PURPOSE

Online Voting System is a system which enables all citizens to cast their
vote online. The purpose is to increase the voting percentage across the
country, as in the present system people have to visit the booth to cast
their vote and those people who live out of their home town are not able to
cast vote during the elections. So due to this the voting percentage across
the country is very less. Through this software those people who live out
of their home town will also be able to cast their votes as this system is
online.

Requirements considered by the system

The program responds with message windows that include dialogues for various tasks that
the user has to deal with.
FUNCTIONAL REQUIREMENTS
 Secure storage and retrieval of voters‟ details from the database.
 Enable secure login of voters, that is to say non- legitimate voters should never be
allowed to login to the tool, these include the under aged and non nationals.
 Maintaining and manipulating records in database through functions like edit, delete,
and view.
 Validate and verify input and output data

Non functional requirement

a. Protect access to private data (user details). SSL can be used.

b. 24 X 7 availability.

c. Design of the best part to get the best performance at the highest time.

d. Flexible service-based properties will be highly desirable for future expansion.

e. The program can run on the Windows NT operating system and the latest version.
(Workplace).

f. The app provides consistent user functionality, menus and commands across all parts of the
app to help new users "achieve speed". This is especially important when government
officials have substitutions for many employees (usability).

g. The system provides data / information protection mechanisms in the event of any disaster
(Copy archive / recovery).

Assumptions and Dependencies

 The end user should have a basic knowledge of English and computer
usage.
 Administrator is created in the system already.

 The voting results will be managed and calculated by the admin.

 Roles and tasks are predefined.

Data Flow Diagram


Data Flow Diagram Level-0

User
Or Adm
inistrator

System
Output

The diagram above is a 0 level DFD showing only the flow of data between the variance and
the system. In the online voting system the Manager is the system administrator and all
decisions are made by him. The Administrator can manage all voters and their details, voting
details etc. and view their details and may review those details.

Data Flow Diagram Level-1

Login Voter
Process Registration Process
er information checking process Final
Voting
Report
Process

The diagram above shown is a Data Flow Diagram with a 1 level online voting system.
According to this DFD various processes are performed after the login process. The
administrator can register voters. The Regulator can register voters and the voter can
exercise their voting rights to vote for any candidate they wish to vote for. The voter can
view the final report after the vote.

ER Diagram
The E-R model is usually the result of systematic testing to define and explain what is
important on the roads in an agency area. It does not define business strategies; The first level
provides a business statistics schema for business imagery. it is also illustrated as packaging
containers (companies) that can be connected with the help of problems (relationships) that
define organizations and interdependence between organizations. The ER model can also be
reproduced by word of mouth, for example: a single building can be divided into residential
units of 0 or more, but one flat can work best to be housed in a single building.
Businesses may seem unintelligent in relationships, but in addition to large houses
(attributes), which include identifiers called "number one keys". Drawings created to
represent attributes above business and relationships can be considered as business drawings
and a romantic element, rather than business relationship models.

The ER model is usually terminated as a website. In the simplest use of the related website,
each line of the table represents one business model, and all the complexity of the desk
represents the type of feature. On a business website dating between businesses is used to
store the key key of one business as an identifier or "external key" within another business
table.

there is a lifetime of ER models / facts that will be built on two or 3 types of inaccessibility.
note that the conceptual-logical-physical sequences below are used for different specification
styles, and are not the same as the 3 schemes of software engineering.

Conceptual data model

this is an excellent ER model ER because it incorporates small granular details but establishes
a range of what should be protected within the model set. The concept of ER concept usually
defines close reference statistics that can be commonly used by an organization. building an
ER version of a major business concept is beneficial in documenting the financial structure of
a commercial business company.

The ER concept version can be used as the basis for a single or larger logical information
model . The reason for the ER concept version is the same setup of structural metadata for
businesses to capture information within a set of intelligent ER models. The translation of
conceptual records can be used to build common relationships between ER models as the
basis for the integration of the information version.

A translation of logical facts


The sensible ER model no longer requires a mental ER model, especially if the scope of the
intelligent ER version only includes the development of a separate record system. The logical
ER version contains an additional feature than the ER ER version. similarly to understand
reality organizations, operating statistics and transaction organizations are currently defined.
The facts of the whole information organization are improved and the relationships between
those data companies are enhanced. A sensible ER model however is developed
independently on a specific stored control device where it can be performed.

version of physical statistics

One or more ER models may be developed from each ER version. The virtual ER version has
been greatly improved to strengthen it as a website. therefore, each version of the portable ER
must contain enough material to deliver the database and each ER physical model is timed
due to the fact that each portable storage device is unusually special.

Physical translation is often included in deceptive website building metadata such as related
website items that include table tables, website indexes that include specific key indicators,
and website limits in conjunction with an important overseas key or similarity bar. The ER
model is also used to design changes to related website gadgets and to maintain website
building metadata.

The first phase of the reality system format uses those fashions for all test requirements to
define mathematical preferences or the type of facts this should be stored on the website. The
record-keeping method can be used to provide an explanation of any ontology (i.e., top stage
view and sentence categories used and its relationships) in a good entertainment setting.
within the framework of the information gadget based entirely on the site, the conceptual
knowledge model, in the future (often referred to as the logical structure), is designed with a
version of logical facts, and a relationship model. ; this flip is made for a visible change in a
particular area of the body structure. note that always, each of these widths is called "body
format."

Entity Relationship Diagram

Registration
Admin.

VOTER
Fail

Id Pass

Login

VOTING

Voting Report

Report View

E-R Diagram
The entity relationship diagram shows the relationship between the various users and their
attributes. There is a relationship between the election commission and voter.

The VOTER has different attributes to store their data to data base are follows:-

 Name-Name contain first name, middle name, last name.


 Registration number that act as username
 Faculty
 Year of study
 Password

THE LOGIN FLOWCHART

LOGIN
HOME PAGE

ABOUT ONLI FAQS CONTA VOTE RESULTS REGIS


US NE CT US TERS
SUPP

DOWNL
OADS

VIEW REGISTERED
VOTERS

SYSTEM DESIGNING AND TESTING


System Architecture
The system is designed using multi tier architecture i.e. three tier model as shown in figure
below.
The three tier model involves three layers which are:

Presentation layer
This layer, which communicates with the application layer through a client API,
performs data layout and formatting actions. The Classification Module includes C,
COM, and Java™ client APIs. In addition, applications can interact with the system
by using the SOAP protocol. For example, the Classification Module might be
included as a Web reference in any .NET application. In most cases, you develop your
own presentation layer that fits in with the rest of your application suite.

Application layer
This layer, which is the core of the system, provides various services, such as
language analysis, instance pooling of knowledge bases, and management of the
distribution of tasks across computers. It is accessed through client APIs that are
provided for writing client code that communicates with the system.
Data layer
This layer is responsible for storing configuration information. The system stores its
data in a ddedicated data server, which is installed with the Classification Module
core components.
Class diagram-:
The following entities have been realized with the system. The database called onlinevoting
with the following entities and fields;

Visual connector is a presentation layer placed on the client side. A number of technologies
can be used to build links quickly. In this project, a multi-component PHP is used.
Reasons to use PHP as a link development tool include the following;
1. It is customizable. It helps in a cheap way to create objects and commands, and modify
keyboard shortcuts.
2. It is open source so even its technical support can be easily obtained.

Testing
This is the final stage of system development. At this point, although the system has not been
tested online when it is operational, but technically the inactivity test is performed to identify
errors and make corrections in the event of errors before reaching users. The test phase is
performed in two ways or sub-stages as can be explained below.
Test module and program
For this, each module is individually tested to ensure that each module is working properly.
And this is actually done every time after the completion of the module.

System Testing

After upgrading several modules, the modules were compiled and tested to see if there were
any malfunctions in the integrated units and any possible errors. This is the point where if the
system has no errors to launch it is ready for use as intended i.e. usage.

Training

Upon deployment, no need of training to administrators or other system users as the system is
simple and self demonstrating for everyone to make application of it. However, to use the
system it requires basic computer knowledge.

Problems faced
Online voting in elections might seem like a logical step forward considering the many other
daily activities, like banking and shopping, that we complete online. However, voting online
does present unique challenges that usually don’t apply to other internet-based processes.
These challenges are related to a variety of factors, including the security required for online
voting, legal requirements and frameworks, public opinion, and investment.
Time

Time become one of the problem I faced because I had a less time compared to what I
should do.

FUTURE SCOPE

The challenge of developing electronic voting systems is not only security but also
protecting the secrecy of the ballot, a bedrock principle of free and fair elections. Currently
there is “no known technology that can guarantee the secrecy, security, and verifiability of a
marked ballot transmitted over the Internet. 1

Online voting presents numerous vulnerabilities and is fundamentally insecure. There is


potential for unobserved vote manipulation as well additional security vulnerabilities
including potential denial of service attacks, malware intrusions, and privacy concerns.
Online voting does not produce a paper trail for auditing.

Block chain-based voting, which relies on a decentralized, distributed digital ledger is


vulnerable to many of the security flaws inherent in internet voting, such as the potential for
malware to alter votes on a voter’s local device before the ballot is transmitted and the lack of
secret ballots. Online and block chain-based voting would greatly increase the risk of
undetectable, nation-scale election failures.

End-to-end verifiable election software relies on cryptography to encrypt and protect votes
while allowing voters to see their vote was properly recorded, that the vote was correctly
tabulated, and that the final vote count matches the cast votes. End-to-end verifiable software
can be integrated into existing election systems to enhance the security of voting
infrastructure.5 Recent open-source software packages including end-to-end verifiability
systems, such as Microsoft’s software development kit Election Guard, could increase
security if implemented in future elections.

System security Measures

A new platform for secure votes and voting is the online voting system. Online voting
systems are a web-based voting system, which transmits votes via a web browser over the
internet. Voters from all over the world are eligible to vote online.

Security issues arising from online voting are as follows: In general applications, password
protection is high and phishing attacks are not the focus of the application. Website users are
not protected efficiently from phishing.
The key proposal for ensuring a secure online polling protocol to meet privacy, anonymity,
eligibility, equity, verification, and unique online voting safety requirements

To achieve reliability, eligibility, transparency, accuracy, and uniqueness of the e-vote


system, two milliardaires couples have created secure online voting for identities based on
cryptographic algorithms.

A secure, end-to-end verifiable, Identity-based blind signature Internet voting system: IEEE,
newspapers, 2020; This document has been amended Early vote, elliptical curve
cryptography, verifiable end-to-end digital signature, Internet vote system. Batch
venerability. Functional digital signature used by the BLS short signature system to protect
voting against any changes anonymously to issue a blank ballot to voters. Future of voting:
Specifications and feasibility study of verifiable Internet vote from end to end.

Phish-haven-An Efficiency Real-Time AI Phishing URLs Detection System: IEEE,


newspapers, 2020; This article changed phishing URLs generated by AI, machine learning,
phishing URLs created by people, lexical features, multi- threads, HTML URL encoding.
Extracts web pagecontent which is therefore ineffective in computation. Non- proactive
method Needs source codes or the website's entire website content. The use of multiple
threading technologies on an input unit and output unit may be further enhanced by the
incorporation of unattended learning.

User authentication
System users in this case students and administrators are provided with usernames and
passwords that they can use to gain access to the system subject to their authorization. This is
also possible as each user's input is previewed before allowing the user access.

And only authorized users can be redirected to the appropriate pages they can access.

Database Security
In addition to page security, the site itself provides flexible system authorization that allows
for some or all of the site rights (for example, the right to create data or delete data input from
the site, to modify data) for specific users or groups of users. and encrypted passwords.

Voter Verification and Privacy


Elections always require a high level of security in order to protect voter privacy and the
integrity of final results. Meeting the security needs of elections means that online voting
technology must overcome barriers that don’t apply to other online-based processes.

For example, if you were trying to complete any number of online banking processes, you
would want the bank to verify your identity so that only you can access your account. You
would also want the bank to associate your identity with your online banking activity, so that
you can be assured that only you are making changes to your account. This is typically done
by verifying your identity through a username and password, and then tracking your activity
once you are logged in.

When voting online, the online voting system also needs to verify your identity to ensure that
you are eligible to vote in a given election. However, unlike in online banking, the system also
needs to guarantee your anonymity by separating your identity from your online activity so
that no one can link your ballot, which contains your voting choices, to your identity. Having
to both verify your identity while also breaking ties between your identity and the ballot you
cast is a unique challenge to online voting.

Challenges like this can be overcome with sophisticated cyber security measures
like encryption and digital signatures. In this instance, a voter’s encrypted digital ballot would
be signed with their digital signature so that the voting server can verify that the ballot was
sent by an eligible voter. Once the voter’s eligibility is determined, the digital signature can be
separated from the ballot before it is shuffled and decrypted, revealing its contents while
preserving voter privacy.
VotingVerifiability
An online voting system must also be able to provide verification that it has successfully
maintained election integrity and that no manipulation had occurred during the voting or
tallying processes. Achieving this level of verifiability is complicated by the need to verify the
correctness and accuracy of the decrypting process without revealing sensitive information
related to the private decryption key or voter identities.

Conclusion
People always want to find the way to make their life easy and comfortable. Currently,
wedepend on the web pages much for everything such as- searching; purchase desire goods
etc. asthere are many web applications depend on various requirements. Today’s web
applications arerich internet applications and developers are much concerned about
applications security issues while they are developing their products. A user-friendly system
becomes popular rapidly and thus benefits both the system developer and its users

Online voting methods can help with visibility by providing a Web site where voters can go
after the election to verify that their votes were included in the total as it offers Accessibility,
Cost effectiveness, Transparency, Give Authority and Confidence to Voters and Feeling
secure and intended be kept secret

This Online Voting system will manage the Voter’s information by which voter can login and
use his voting rights. The system will incorporate all features of Voting system

Recommendations
The time spent developing and implementing a project is very small compared to the actual
time required to complete the entire project depending on the needs of the user and the
resources required. semester for project implementation only.

As a recommendation, a number of projects have been developed by various experts and


have not been completed. It is recommended that they be given to other students who wto
do the project in the same fields and therefore improve the project where it ends so that we
can have real products as student work compared to the current situation.
APPENDICES

BIBLOGRAPHY
1. Malwade Nikita, Patil Chetan, Chavan Suruchi, Prof, S Raut

Secure Online Voting System Proposed By


Biometrics And Steganography, volume 3, issue 5
Posted: 2017-05
2. Ankit Anand, Pallavi Divya
An Efficient Online Voting System, volume 2, p. 2631 - 2634
Posted: 2019-08
3. R Alaguvel, Jagadhambal G Gnanavel

Biometrics Using Electronic Voting System with Embedded Security, volume 2


Posted: 2018-03
4. I Firas, Seifedine Hazzaa, Kadry

Oussama Kassem Zein, Web-Based Voting System Using Fingerprint: Design and
Implementation, volume 2
Posted: 2019-12
5. Alexander Stakeholders

Who is your system for? IEEE: Computing and Control Engineering, volume 14, p. 22 - 26
Posted: 2003-04
6. K P Kaliyamurthie, R Udayakumar, D Parameswari, S N Mugunthan

Highly Secured Online Voting System over Network


Indian Journal of Science and Technology | Print, p. 974 - 5645
7. Software.a sp. Accessed on
Posted: 2008-10-20
Crossref
8. B Swaminathan, Dinesh J C D

Highly secure online voting system with multi security using biometric and steganography
International Journal of Advanced Scientific Research and Technology, volume 2, issue 2, p.
195 - 203
9. Drew Springall, Travis Finkenauer, Zakir Durumeric, Jason Kitcat, Harri Hursti Margaret
Macalpine, J, Alex Halderman

Security Analysis of the Estonian Internet Voting System


CCS"14
Posted: 2014
Crossref
10. M S U M A Imran, H Miah, Rahman
Face Recognition using Eigenfaces
International Journal of Computer Applications, volume 118, issue 5, p. 975 - 8887
Posted: 2021-22
Crossref
11. A Anand, P Divya

An efficient online voting system


International Journal of Modern Engineering Research, volume 2, issue 4, p. 2631 - 2634

CODING
from datetime import date
import itertools
import threading
import time
import sys

#For ID Registration-------------
students_id = list(range(1000000))
num_of_stud = len(students_id)

class election():

#Candidates for President----------------------------------


p1_no = 1
p2_no = 2
p3_no = 3
p1_name = "Gerry Garcia from BS Info. Tech. 2C"
p2_name = "Charise Encila from BS Info. Tech. 2C"
p3_name = "Joyce Tenorio from BS Info. Tech. 2C"
pres_1 = 0
pres_2 = 0
pres_3 = 0
# Candidates for Vice President----------------------------------
vp1_no = 1
vp2_no = 2
vp3_no = 3
vp1_name = "Manuel Bodios from BS Info. Tech. 2C"
vp2_name = "Ellen Borja from BS Info. Tech. 2C"
vp3_name = "Strexie Tayco from BS Info. Tech. 2C"
vpres_1 = 0
vpres_2 = 0
vpres_3 = 0
# Candidates for Secretary----------------------------------
sec1_no = 1
sec2_no = 2
sec3_no = 3
sec1_name = "Kier Berayon from BS Info. Tech. 2C"
sec2_name = "Jan Layao from BS Info. Tech. 2C"
sec3_name = "Jared Cana from BS Info. Tech. 2C"
sec_1 = 0
sec_2 = 0
sec_3 = 0
# Candidates for Auditor----------------------------------
aud1_no = 1
aud2_no = 2
aud3_no = 3
aud1_name = "Tanya Sabordo from BS Info. Tech. 2C"
aud2_name = "Sharlene Tuando from BS Info. Tech. 2C"
aud3_name = "Mae Ann Belleza from BS Info. Tech. 2C"
aud_1 = 0
aud_2 = 0
aud_3 = 0
# Candidates for Treasurer----------------------------------
tre1_no = 1
tre2_no = 2
tre3_no = 3
tre1_name = "Bryan Tabanas from BS Info. Tech. 2C"
tre2_name = "Adrian Rumbines from BS Info. Tech. 2C"
tre3_name = "Ritchmond from BS Info. Tech. 2C"
tre_1 = 0
tre_2 = 0
tre_3 = 0
# Candidates for Media Information----------------------------------
media1_no = 1
media2_no = 2
media3_no = 3
media1_name = "Dan Hedison Udasco from BS Info. Tech. 2C"
media2_name = "Agnes Amar from BS Info. Tech. 2C"
media3_name = "John Mario Nodado from BS Info. Tech. 2C"
media_1 = 0
media_2 = 0
media_3 = 0
# Candidates for First Year
Representative----------------------------------
f_rep1_no = 1
f_rep2_no = 2
f_rep3_no = 3
f_rep1_name = "Naruto Uzumaki from BS Info. Tech. 1A"
f_rep2_name = "Edward Newgate from BS Info. Tech. 1B"
f_rep3_name = "Monkey D Luffy from BS Info. Tech. 1C"
f_rep_1 = 0
f_rep_2 = 0
f_rep_3 = 0
# Candidates for Second Year
Representative----------------------------------
s_rep1_no = 1
s_rep2_no = 2
s_rep3_no = 3
s_rep1_name = "Trafalgar Water Law from BS Info. Tech. 2A"
s_rep2_name = "Marshal Teach from BS Info. Tech. 2B"
s_rep3_name = "Roronoa Zoro from BS Info. Tech. 2C"
s_rep_1 = 0
s_rep_2 = 0
s_rep_3 = 0
# Candidates for Third Year
Representative----------------------------------
t_rep1_no = 1
t_rep2_no = 2
t_rep3_no = 3
t_rep1_name = "Kozuki Oden from BS Info. Tech. 3A"
t_rep2_name = "Mohammad Pervaiz from BS Info. Tech. 3B"
t_rep3_name = "Paul Pierce from BS Info. Tech. 3C"
t_rep_1 = 0
t_rep_2 = 0
t_rep_3 = 0
# Candidates for Fourth Year
Representative----------------------------------
frt_rep1_no = 1
frt_rep2_no = 2
frt_rep3_no = 3
frt_rep1_name = "Charlotte Katakuri from BS Info. Tech. 4A"
frt_rep2_name = "Rai Luzana from BS Info. Tech. 4B"
frt_rep3_name = "Jean Magahud from BS Info. Tech. 4C"
frt_rep_1 = 0
frt_rep_2 = 0
frt_rep_3 = 0

def welcome(obj):
today = date.today()
datetime = today.strftime("%B %d, %Y")
print("--------------------------------------------------------------------
---")
print(" Carlos Hilado Memorial State College
")
print(" COLLEGE OF ENGINEERING AND INFORMATION TECHNOLOGY
")
print(" Alijis Campus - " + datetime + "
")
print("--------------------------------------------------------------------
---")
print("************* Welcome to SSG Elections for S.Y. 2021-2022
*************")

def loading(obj):
done = False

# here is the animation


def animate():
for c in itertools.cycle(['|', '/', '-', '\\']):
if done:
break
sys.stdout.write('\rAnalyzing ID...' + c)
sys.stdout.flush()
time.sleep(0.1)

t = threading.Thread(target=animate)
t.start()

# long process here


time.sleep(2)
done = True

def error_loading(obj):
done = False

# here is the animation


def animate():
for c in itertools.cycle(['|', '/', '-', '\\']):
if done:
break
sys.stdout.write('\rAnalyzing ID...' + c)
sys.stdout.flush()
time.sleep(0.1)

t = threading.Thread(target=animate)
t.start()

# long process here


time.sleep(5)
done = True

def loading_result(obj):
done = False

# here is the animation


def animate():
for c in itertools.cycle(['|', '/', '-', '\\']):
if done:
break
sys.stdout.write('\rPlease wait while reading the result...' + c)
sys.stdout.flush()
time.sleep(0.1)

t = threading.Thread(target=animate)
t.start()

# long process here


time.sleep(8)
done = True

def registration(obj):

while True:
print("-----------------------------
REGISTRATION-----------------------------")
print("")
obj.f_name = input("First name: ")
obj.l_name = input("Last name: ")
obj.course = input("BS in: ")
obj.year_section = input("Year & section: ")
obj.stud_id = int(input("Student ID no.: "))
if obj.stud_id in students_id:
students_id.remove(obj.stud_id)
obj.loading()
print("Done!")
print('-----------------------Registered
Successfully!-----------------------')
print("Name: " + obj.f_name + " " + obj.l_name)
print("Course: Bachelor of Science in " + obj.course)
print("Year & Section: " + obj.year_section)
print("Voter's ID: " + str(obj.stud_id))
obj.president()
obj.vice_pres()
obj.secretary()
obj.auditor()
obj.treasurer()
obj.media_info()
obj.first_yr_rep()
obj.sec_yr_rep()
obj.third_yr_rep()
obj.fourth_yr_rep()
break
else:
obj.error_loading()
print("Done!")
print("------------------ID existed. You have already
voted!----------------")
print("---------------------------PLEASE TRY
AGAIN--------------------------\n")

#President --------------------------------------------------------
def president(obj):

print("--------------------------------------------------------------------
--")
proceed_pres = int(input("Do you want to proceed voting in President? 1.
Yes / 2. No : "))
if proceed_pres == 1:
pres = 1
while pres <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for President are: \n")
print(str(obj.p1_no) + ") " + obj.p1_name)
print(str(obj.p2_no) + ") " + obj.p2_name)
print(str(obj.p3_no) + ") " + obj.p3_name)
print("--------------------------------------------------------------------
--")
pres_vote = int(input("Press the number of candidate you want to vote for:
"))
if pres_vote == 1:
obj.pres_1 += 1
pres1_final = obj.p1_name + " = " + str(obj.pres_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(pres1_final))
print("Total votes for " + obj.p2_name + " = " + str(obj.pres_2))
print("Total votes for " + obj.p3_name + " = " + str(obj.pres_3))
obj.vice_pres()
break
elif pres_vote == 2:
obj.pres_2 += 1
pres2_final = obj.p2_name + " = " + str(obj.pres_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.p1_name + " = " + str(obj.pres_1))
print("Total votes for " + str(pres2_final))
print("Total votes for " + obj.p3_name + " = " + str(obj.pres_3))
obj.vice_pres()
break
elif pres_vote == 3:
obj.pres_3 += 1
pres3_final = obj.p3_name + " = " + str(obj.pres_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.p1_name + " = " + str(obj.pres_1))
print("Total votes for " + obj.p2_name + " = " + str(obj.pres_2))
print("Total votes for " + str(pres3_final))
obj.vice_pres()
break
else:
print("Invalid input. Please try again.")
print("--------------------------------------------------------------------
--")
elif proceed_pres == 2:
obj.vice_pres()
else:
print("Invalid input. Please try again.")
print("--------------------------------------------------------------------
--")

#Vice president --------------------------------------------------------

def vice_pres(obj):

print("--------------------------------------------------------------------
--")
proceed_vpres = int(input("Do you want to proceed voting in Vice President?
1. Yes / 2. No : "))
if proceed_vpres == 1:
vpres = 1
while vpres <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for Vice President are: \n")
print(str(obj.vp1_no) + ") " + obj.vp1_name)
print(str(obj.vp2_no) + ") " + obj.vp2_name)
print(str(obj.vp3_no) + ") " + obj.vp3_name)
print("--------------------------------------------------------------------
--")
vpres_vote = int(input("Press the number of candidate you want to vote for:
"))
if vpres_vote == 1:
obj.vpres_1 += 1
vpres1_final = obj.vp1_name + " = " + str(obj.vpres_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(vpres1_final))
print("Total votes for " + obj.vp2_name + " = " + str(obj.vpres_2))
print("Total votes for " + obj.vp3_name + " = " + str(obj.vpres_3))
obj.secretary()
break
elif vpres_vote == 2:
obj.vpres_2 += 1
vpres2_final = obj.vp2_name + " = " + str(obj.vpres_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.vp1_name + " = " + str(obj.vpres_1))
print("Total votes for " + str(vpres2_final))
print("Total votes for " + obj.vp3_name + " = " + str(obj.vpres_3))
obj.secretary()
break
elif vpres_vote == 3:
obj.vpres_3 += 1
vpres3_final = obj.vp3_name + " = " + str(obj.vpres_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.vp1_name + " = " + str(obj.vpres_1))
print("Total votes for " + obj.vp2_name + " = " + str(obj.vpres_2))
print("Total votes for " + str(vpres3_final))
obj.secretary()
break
else:
print("Invalid input. Please try again.")
elif proceed_vpres == 2:
obj.secretary()
else:
print("Invalid input. Please try again.")

#Secretary --------------------------------------------------------

def secretary(obj):

print("--------------------------------------------------------------------
--")
proceed_sec = int(input("Do you want to proceed voting in Secretary? 1. Yes
/ 2. No : "))
if proceed_sec == 1:
sec = 1
while sec <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for Secretary are: \n")
print(str(obj.sec1_no) + ") " + obj.sec1_name)
print(str(obj.sec2_no) + ") " + obj.sec2_name)
print(str(obj.sec3_no) + ") " + obj.sec3_name)
print("--------------------------------------------------------------------
--")
sec_vote = int(input("Press the number of candidate you want to vote for:
"))
if sec_vote == 1:
obj.sec_1 += 1
sec_final = obj.sec1_name + " = " + str(obj.sec_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(sec_final))
print("Total votes for " + obj.sec2_name + " = " + str(obj.sec_2))
print("Total votes for " + obj.sec3_name + " = " + str(obj.sec_3))
obj.auditor()
break
elif sec_vote == 2:
obj.sec_2 += 1
sec2_final = obj.sec2_name + " = " + str(obj.sec_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.sec1_name + " = " + str(obj.sec_1))
print("Total votes for " + str(sec2_final))
print("Total votes for " + obj.sec3_name + " = " + str(obj.sec_3))
obj.auditor()
break
elif sec_vote == 3:
obj.sec_3 += 1
sec3_final = obj.sec3_name + " = " + str(obj.sec_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.sec1_name + " = " + str(obj.sec_1))
print("Total votes for " + obj.sec2_name + " = " + str(obj.sec_2))
print("Total votes for " + str(sec3_final))
obj.auditor()
break
else:
print("Invalid input. Please try again.")
elif proceed_sec == 2:
obj.auditor()
else:
print("Invalid input. Please try again.")

#Auditor --------------------------------------------------------

def auditor(obj):

print("--------------------------------------------------------------------
--")
proceed_aud = int(input("Do you want to proceed voting in Auditor? 1. Yes /
2. No : "))
if proceed_aud == 1:
aud = 1
while aud <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for Auditor are: \n")
print(str(obj.aud1_no) + ") " + obj.aud1_name)
print(str(obj.aud2_no) + ") " + obj.aud2_name)
print(str(obj.aud3_no) + ") " + obj.aud3_name)
print("--------------------------------------------------------------------
--")
aud_vote = int(input("Press the number of candidate you want to vote for:
"))
if aud_vote == 1:
obj.aud_1 += 1
aud_final = obj.aud1_name + " = " + str(obj.aud_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(aud_final))
print("Total votes for " + obj.aud2_name + " = " + str(obj.aud_2))
print("Total votes for " + obj.aud3_name + " = " + str(obj.aud_3))
obj.treasurer()
break
elif aud_vote == 2:
obj.aud_2 += 1
aud2_final = obj.aud2_name + " = " + str(obj.aud_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.aud1_name + " = " + str(obj.aud_1))
print("Total votes for " + str(aud2_final))
print("Total votes for " + obj.aud3_name + " = " + str(obj.aud_3))
obj.treasurer()
break
elif aud_vote == 3:
obj.aud_3 += 1
aud3_final = obj.aud3_name + " = " + str(obj.aud_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.aud1_name + " = " + str(obj.aud_1))
print("Total votes for " + obj.aud2_name + " = " + str(obj.aud_2))
print("Total votes for " + str(aud3_final))
obj.treasurer()
break
else:
print("Invalid input. Please try again.")
elif proceed_aud == 2:
obj.treasurer()
else:
print("Invalid input. Please try again.")

#Treasurer --------------------------------------------------------

def treasurer(obj):

print("--------------------------------------------------------------------
--")
proceed_tre = int(input("Do you want to proceed voting in Treasurer? 1. Yes
/ 2. No : "))
if proceed_tre == 1:
tre = 1
while tre <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for Treasurer are: \n")
print(str(obj.tre1_no) + ") " + obj.tre1_name)
print(str(obj.tre2_no) + ") " + obj.aud2_name)
print(str(obj.tre3_no) + ") " + obj.tre3_name)
print("--------------------------------------------------------------------
--")
tre_vote = int(input("Press the number of candidate you want to vote for:
"))
if tre_vote == 1:
obj.tre_1 += 1
tre_final = obj.tre1_name + " = " + str(obj.tre_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(tre_final))
print("Total votes for " + obj.tre2_name + " = " + str(obj.tre_2))
print("Total votes for " + obj.tre3_name + " = " + str(obj.tre_3))
obj.media_info()
break
elif tre_vote == 2:
obj.tre_2 += 1
tre2_final = obj.tre2_name + " = " + str(obj.tre_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.tre1_name + " = " + str(obj.tre_1))
print("Total votes for " + str(tre2_final))
print("Total votes for " + obj.tre3_name + " = " + str(obj.tre_3))
obj.media_info()
break
elif tre_vote == 3:
obj.tre_3 += 1
tre3_final = obj.tre3_name + " = " + str(obj.tre_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.tre1_name + " = " + str(obj.tre_1))
print("Total votes for " + obj.tre2_name + " = " + str(obj.tre_2))
print("Total votes for " + str(tre3_final))
obj.media_info()
break
else:
print("Invalid input. Please try again.")
elif proceed_tre == 2:
obj.media_info()
else:
print("Invalid input. Please try again.")

#Media Information --------------------------------------------------------

def media_info(obj):

print("--------------------------------------------------------------------
--")
proceed_media = int(input("Do you want to proceed voting in Media
Information? 1. Yes / 2. No : "))
if proceed_media == 1:
media = 1
while media <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for Media Information are: \n")
print(str(obj.media1_no) + ") " + obj.media1_name)
print(str(obj.media2_no) + ") " + obj.media2_name)
print(str(obj.media3_no) + ") " + obj.media3_name)
print("--------------------------------------------------------------------
--")
media_vote = int(input("Press the number of candidate you want to vote for:
"))
if media_vote == 1:
obj.media_1 += 1
media_final = obj.media1_name + " = " + str(obj.media_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(media_final))
print("Total votes for " + obj.media2_name + " = " + str(obj.media_2))
print("Total votes for " + obj.media3_name + " = " + str(obj.media_3))
obj.first_yr_rep()
break
elif media_vote == 2:
obj.media_2 += 1
media2_final = obj.media2_name + " = " + str(obj.media_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.media1_name + " = " + str(obj.media_1))
print("Total votes for " + str(media2_final))
print("Total votes for " + obj.media3_name + " = " + str(obj.media_3))
obj.first_yr_rep()
break
elif media_vote == 3:
obj.media_3 += 1
media3_final = obj.media3_name + " = " + str(obj.media_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.media1_name + " = " + str(obj.media_1))
print("Total votes for " + obj.media2_name + " = " + str(obj.media_2))
print("Total votes for " + str(media3_final))
obj.first_yr_rep()
break
else:
print("Invalid input. Please try again.")
elif proceed_media == 2:
obj.first_yr_rep()
else:
print("Invalid input. Please try again.")

#First Year Representatives


--------------------------------------------------------

def first_yr_rep(obj):

print("--------------------------------------------------------------------
--")
proceed_f_rep = int(input("Do you want to proceed voting in First Year
Representative? 1. Yes / 2. No : "))
if proceed_f_rep == 1:
f_rep = 1
while f_rep <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for First Year Representative are: \n")
print(str(obj.f_rep1_no) + ") " + obj.f_rep1_name)
print(str(obj.f_rep2_no) + ") " + obj.f_rep2_name)
print(str(obj.f_rep3_no) + ") " + obj.f_rep3_name)
print("--------------------------------------------------------------------
--")
f_rep_vote = int(input("Press the number of candidate you want to vote for:
"))
if f_rep_vote == 1:
obj.f_rep_1 += 1
f_rep_final = obj.f_rep1_name + " = " + str(obj.f_rep_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(f_rep_final))
print("Total votes for " + obj.f_rep2_name + " = " + str(obj.f_rep_2))
print("Total votes for " + obj.f_rep3_name + " = " + str(obj.f_rep_3))
obj.sec_yr_rep()
break
elif f_rep_vote == 2:
obj.f_rep_2 += 1
f_rep2_final = obj.f_rep2_name + " = " + str(obj.f_rep_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.f_rep1_name + " = " + str(obj.f_rep_1))
print("Total votes for " + str(f_rep2_final))
print("Total votes for " + obj.f_rep3_name + " = " + str(obj.f_rep_3))
obj.sec_yr_rep()
break
elif f_rep_vote == 3:
obj.f_rep_3 += 1
f_rep3_final = obj.f_rep3_name + " = " + str(obj.f_rep_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.f_rep1_name + " = " + str(obj.f_rep_1))
print("Total votes for " + obj.f_rep2_name + " = " + str(obj.f_rep_2))
print("Total votes for " + str(f_rep3_final))
obj.sec_yr_rep()
break
else:
print("Invalid input. Please try again.")
elif proceed_f_rep == 2:
obj.sec_yr_rep()
else:
print("Invalid input. Please try again.")

#Second Year Representatives


--------------------------------------------------------

def sec_yr_rep(obj):

print("--------------------------------------------------------------------
--")
proceed_s_rep = int(input("Do you want to proceed voting in Second Year
Representative? 1. Yes / 2. No : "))
if proceed_s_rep == 1:
s_rep = 1
while s_rep <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for Second Year Representative are: \n")
print(str(obj.s_rep1_no) + ") " + obj.s_rep1_name)
print(str(obj.s_rep2_no) + ") " + obj.s_rep2_name)
print(str(obj.s_rep3_no) + ") " + obj.s_rep3_name)
print("--------------------------------------------------------------------
--")
s_rep_vote = int(input("Press the number of candidate you want to vote for:
"))
if s_rep_vote == 1:
obj.s_rep_1 += 1
s_rep_final = obj.s_rep1_name + " = " + str(obj.s_rep_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(s_rep_final))
print("Total votes for " + obj.s_rep2_name + " = " + str(obj.s_rep_2))
print("Total votes for " + obj.s_rep3_name + " = " + str(obj.s_rep_3))
obj.third_yr_rep()
break
elif s_rep_vote == 2:
obj.s_rep_2 += 1
s_rep2_final = obj.s_rep2_name + " = " + str(obj.s_rep_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.s_rep1_name + " = " + str(obj.s_rep_1))
print("Total votes for " + str(s_rep2_final))
print("Total votes for " + obj.s_rep3_name + " = " + str(obj.s_rep_3))
obj.third_yr_rep()
break
elif s_rep_vote == 3:
obj.s_rep_3 += 1
s_rep3_final = obj.s_rep3_name + " = " + str(obj.s_rep_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.s_rep1_name + " = " + str(obj.s_rep_1))
print("Total votes for " + obj.s_rep2_name + " = " + str(obj.s_rep_2))
print("Total votes for " + str(s_rep3_final))
obj.third_yr_rep()
break
else:
print("Invalid input. Please try again.")
elif proceed_s_rep == 2:
obj.third_yr_rep()
else:
print("Invalid input. Please try again.")

#Third Year Representatives


--------------------------------------------------------

def third_yr_rep(obj):

print("--------------------------------------------------------------------
--")
proceed_t_rep = int(input("Do you want to proceed voting in Third Year
Representative? 1. Yes / 2. No : "))
if proceed_t_rep == 1:
t_rep = 1
while t_rep <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for Third Year Representative are: \n")
print(str(obj.t_rep1_no) + ") " + obj.t_rep1_name)
print(str(obj.t_rep2_no) + ") " + obj.t_rep2_name)
print(str(obj.t_rep3_no) + ") " + obj.t_rep3_name)
print("--------------------------------------------------------------------
--")
t_rep_vote = int(input("Press the number of candidate you want to vote for:
"))
if t_rep_vote == 1:
obj.t_rep_1 += 1
t_rep_final = obj.t_rep1_name + " = " + str(obj.t_rep_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(t_rep_final))
print("Total votes for " + obj.t_rep2_name + " = " + str(obj.t_rep_2))
print("Total votes for " + obj.t_rep3_name + " = " + str(obj.t_rep_3))
obj.fourth_yr_rep()
break
elif t_rep_vote == 2:
obj.t_rep_2 += 1
t_rep2_final = obj.t_rep2_name + " = " + str(obj.t_rep_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.t_rep1_name + " = " + str(obj.t_rep_1))
print("Total votes for " + str(t_rep2_final))
print("Total votes for " + obj.t_rep3_name + " = " + str(obj.t_rep_3))
obj.fourth_yr_rep()
break
elif t_rep_vote == 3:
obj.t_rep_3 += 1
t_rep3_final = obj.t_rep3_name + " = " + str(obj.t_rep_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.t_rep1_name + " = " + str(obj.t_rep_1))
print("Total votes for " + obj.t_rep2_name + " = " + str(obj.t_rep_2))
print("Total votes for " + str(t_rep3_final))
obj.fourth_yr_rep()
break
else:
print("Invalid input. Please try again.")
elif proceed_t_rep == 2:
obj.fourth_yr_rep()
else:
print("Invalid input. Please try again.")

#Fourth Year Representatives


--------------------------------------------------------

def fourth_yr_rep(obj):

print("--------------------------------------------------------------------
--")
proceed_frt_rep = int(input("Do you want to proceed voting in Fourth Year
Representative? 1. Yes / 2. No : "))
if proceed_frt_rep == 1:
frt_rep = 1
while frt_rep <= float('inf'):
print("--------------------------------------------------------------------
--")
print("The candidtates running for Fourth Year Representative are: \n")
print(str(obj.frt_rep1_no) + ") " + obj.frt_rep1_name)
print(str(obj.frt_rep2_no) + ") " + obj.frt_rep2_name)
print(str(obj.frt_rep3_no) + ") " + obj.frt_rep3_name)
print("--------------------------------------------------------------------
--")
frt_rep_vote = int(input("Press the number of candidate you want to vote
for: "))
if frt_rep_vote == 1:
obj.frt_rep_1 += 1
frt_rep_final = obj.frt_rep1_name + " = " + str(obj.frt_rep_1)
print("--------------------------------------------------------------------
--")
print("Total votes for " + str(frt_rep_final))
print("Total votes for " + obj.frt_rep2_name + " = " + str(obj.frt_rep_2))
print("Total votes for " + obj.frt_rep3_name + " = " + str(obj.frt_rep_3))
obj.another_vote()
break
elif frt_rep_vote == 2:
obj.frt_rep_2 += 1
frt_rep2_final = obj.frt_rep2_name + " = " + str(obj.frt_rep_2)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.frt_rep1_name + " = " + str(obj.frt_rep_1))
print("Total votes for " + str(frt_rep2_final))
print("Total votes for " + obj.frt_rep3_name + " = " + str(obj.frt_rep_3))
obj.another_vote()
break
elif frt_rep_vote == 3:
obj.frt_rep_3 += 1
frt_rep3_final = obj.frt_rep3_name + " = " + str(obj.frt_rep_3)
print("--------------------------------------------------------------------
--")
print("Total votes for " + obj.frt_rep1_name + " = " + str(obj.frt_rep_1))
print("Total votes for " + obj.frt_rep2_name + " = " + str(obj.frt_rep_2))
print("Total votes for " + str(frt_rep3_final))
obj.another_vote()
break
else:
print("Invalid input. Please try again.")
elif proceed_frt_rep == 2:
obj.another_vote()
else:
print("Invalid input. Please try again.")

#Another vote --------------------------------------------------------

def another_vote(obj):
a = """ IF ANY OF THE POSITION GOT A TIE VOTE RESULTS, JUST START THE
PROGRAM OVER AGAIN
AND KINDLY SKIP (DO NOT PROCEED) TO THE POSITION THAT DOES NOT HAVE A TIE
VOTE RESULT"""
print("--------------------------------------------------------------------
--")
an_vote = int(input("DO YOU WANT TO PROCEED ANOTHER VOTE? 1. Yes / 2. No :
"))
while True:
if an_vote == 1:
obj.registration()
obj.president()
obj.vice_pres()
obj.secretary()
obj.auditor()
obj.treasurer()
obj.media_info()
obj.first_yr_rep()
obj.sec_yr_rep()
obj.third_yr_rep()
obj.fourth_yr_rep()
break
elif an_vote == 2:
obj.loading_result()
obj.result()
print(a)
sys.exit()
else:
print("Invalid input. Please try again.")

#Results --------------------------------------------------------

def result(obj):
#Ranking for President----------------------------
pres_total = (obj.pres_1, obj.pres_2, obj.pres_3)
pres_result = max(pres_total)
# Ranking for Vice President----------------------------
vp_total = (obj.vpres_1, obj.vpres_2, obj.vpres_3)
vp_result = max(vp_total)
# Ranking for Secretary----------------------------
sec_total = (obj.sec_1, obj.sec_2, obj.sec_3)
sec_result = max(sec_total)
# Ranking for Auditor----------------------------
aud_total = (obj.aud_1, obj.aud_2, obj.aud_3)
aud_result = max(aud_total)
# Ranking for Treasurer----------------------------
tre_total = (obj.tre_1, obj.tre_2, obj.tre_3)
tre_result = max(tre_total)
# Ranking for Media Information----------------------------
media_total = (obj.media_1, obj.media_2, obj.media_3)
media_result = max(media_total)
# Ranking for First Year Representative----------------------------
f_rep_total = (obj.f_rep_1, obj.f_rep_2, obj.f_rep_3)
f_rep_result = max(f_rep_total)
# Ranking for Second Year Representative----------------------------
s_rep_total = (obj.s_rep_1, obj.s_rep_2, obj.s_rep_3)
s_rep_result = max(s_rep_total)
# Ranking for Third Year Representative----------------------------
t_rep_total = (obj.t_rep_1, obj.t_rep_2, obj.t_rep_3)
t_rep_result = max(t_rep_total)
# Ranking for Fourth Year Representative----------------------------
frt_rep_total = (obj.frt_rep_1, obj.frt_rep_2, obj.frt_rep_3)
frt_rep_result = max(frt_rep_total)
print("")
print("***************** SUPREME STUDENT GOVERNMENT S.Y. 2021-2022
******************")
print("")
# Final Result for President
------------------------------------------------------------------------
if ((obj.pres_1 > obj.pres_2) and (obj.pres_1 > obj.pres_3)):
print("****************** New elected President for S.Y. 2021-2022
******************")
print(str(obj.p1_no) + ") " + str(obj.p1_name) + " with a total votes of =
" + str(pres_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.pres_2 > obj.pres_1) and (obj.pres_2 > obj.pres_3)):
print("****************** New elected President for S.Y. 2021-2022
******************")
print(str(obj.p2_no) + ") " + str(obj.p2_name) + " with a total votes of =
" + str(pres_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.pres_3 > obj.pres_1) and (obj.pres_3 > obj.pres_2)):
print("****************** New elected President for S.Y. 2021-2022
******************")
print(str(obj.p3_no) + ") " + str(obj.p3_name) + " with a total votes of =
" + str(pres_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.pres_1 == obj.pres_2) and (obj.pres_1 > obj.pres_3) and
(obj.pres_2 > obj.pres_3)):
print("----------------------- WE HAVE A TIE -----------------------")
print(str(obj.p1_no) + ") " + str(obj.p1_name) + " with a total votes of =
" + str(pres_result))
print(str(obj.p2_no) + ") " + str(obj.p2_name) + " with a total votes of =
" + str(pres_result))
elif ((obj.pres_2 == obj.pres_3) and (obj.pres_2 > obj.pres_1) and
(obj.pres_3 > obj.pres_1)):
print(str(obj.p2_no) + ") " + str(obj.p2_name) + " with a total votes of =
" + str(pres_result))
print(str(obj.p3_no) + ") " + str(obj.p3_name) + " with a total votes of =
" + str(pres_result))
elif ((obj.pres_1 == obj.pres_3) and (obj.pres_1 > obj.pres_2) and
(obj.pres_3 > obj.pres_2)):
print(str(obj.p1_no) + ") " + str(obj.p1_name) + " with a total votes of =
" + str(pres_result))
print(str(obj.p3_no) + ") " + str(obj.p3_name) + " with a total votes of =
" + str(pres_result))
elif ((obj.pres_1 == obj.pres_2) and (obj.pres_1 == obj.pres_3)
and (obj.pres_2 == obj.pres_1) and (obj.pres_2 == obj.pres_3)
and (obj.pres_3 == obj.pres_1) and (obj.pres_3 == obj.pres_2)):
print("----------------------- WE HAVE TRIPLE TIE FOR PRESIDENT
-----------------------")
print(str(obj.p1_no) + ") " + str(obj.p1_name) + " with a total votes of =
" + str(pres_result))
print(str(obj.p2_no) + ") " + str(obj.p2_name) + " with a total votes of =
" + str(pres_result))
print(str(obj.p3_no) + ") " + str(obj.p3_name) + " with a total votes of =
" + str(pres_result))
print("--------------------------------------------------------------------
----------")

# Final Result for Vice President


------------------------------------------------------------------------
if ((obj.vpres_1 > obj.vpres_2) and (obj.vpres_1 > obj.vpres_3)):
print("*************** New elected Vice President for S.Y. 2021-2022
****************")
print(str(obj.vp1_no) + ") " + str(obj.vp1_name) + " with a total votes of
= " + str(vp_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.vpres_2 > obj.vpres_1) and (obj.vpres_2 > obj.vpres_3)):
print("*************** New elected Vice President for S.Y. 2021-2022
****************")
print(str(obj.vp2_no) + ") " + str(obj.vp2_name) + " with a total votes of
= " + str(vp_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.vpres_3 > obj.vpres_1) and (obj.vpres_3 > obj.vpres_2)):
print("*************** New elected Vice President for S.Y. 2021-2022
****************")
print(str(obj.vp3_no) + ") " + str(obj.vp3_name) + " with a total votes of
= " + str(vp_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.vpres_1 == obj.vpres_2) and (obj.vpres_1 > obj.vpres_3) and
(obj.vpres_2 > obj.vpres_3)):
print("---------------------- WE HAVE A TIE FOR VICE PRESIDENT
----------------------")
print(str(obj.vp1_no) + ") " + str(obj.vp1_name) + " with a total votes of
= " + str(vp_result))
print(str(obj.vp2_no) + ") " + str(obj.vp2_name) + " with a total votes of
= " + str(vp_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.vpres_2 == obj.vpres_3) and (obj.vpres_2 > obj.vpres_1) and
(obj.vpres_3 > obj.vpres_1)):
print("---------------------- WE HAVE A TIE FOR VICE PRESIDENT
----------------------")
print(str(obj.vp2_no) + ") " + str(obj.vp2_name) + " with a total votes of
= " + str(vp_result))
print(str(obj.vp3_no) + ") " + str(obj.vp3_name) + " with a total votes of
= " + str(vp_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.pres_1 == obj.pres_3) and (obj.pres_1 > obj.pres_2) and
(obj.pres_3 > obj.pres_2)):
print("---------------------- WE HAVE A TIE FOR VICE PRESIDENT
----------------------")
print(str(obj.vp1_no) + ") " + str(obj.vp1_name) + " with a total votes of
= " + str(vp_result))
print(str(obj.vp3_no) + ") " + str(obj.vp3_name) + " with a total votes of
= " + str(vp_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.vpres_1 == obj.vpres_2) and (obj.vpres_1 == obj.vpres_3)
and (obj.vpres_2 == obj.pres_1) and (obj.vpres_2 == obj.vpres_3)
and (obj.vpres_3 == obj.vpres_1) and (obj.vpres_3 == obj.vpres_2)):
print("------------------- WE HAVE TRIPLE TIE FOR VICE PRESIDENT
--------------------")
print(str(obj.vp1_no) + ") " + str(obj.vp1_name) + " with a total votes of
= " + str(vp_result))
print(str(obj.vp2_no) + ") " + str(obj.vp2_name) + " with a total votes of
= " + str(vp_result))
print(str(obj.vp3_no) + ") " + str(obj.vp3_name) + " with a total votes of
= " + str(vp_result))
print("--------------------------------------------------------------------
----------")

# Final Result for Secretary


------------------------------------------------------------------------
if ((obj.sec_1 > obj.sec_2) and (obj.sec_1 > obj.sec_3)):
print("***************** New elected Secretary for S.Y. 2021-2022
*******************")
print(str(obj.sec1_no) + ") " + str(obj.sec1_name) + " with a total votes
of = " + str(sec_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.sec_2 > obj.sec_1) and (obj.sec_2 > obj.sec_3)):
print("***************** New elected Secretary for S.Y. 2021-2022
*******************")
print(str(obj.sec2_no) + ") " + str(obj.sec2_name) + " with a total votes
of = " + str(sec_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.sec_3 > obj.sec_1) and (obj.sec_3 > obj.sec_2)):
print("***************** New elected Secretary for S.Y. 2021-2022
*******************")
print(str(obj.sec3_no) + ") " + str(obj.sec3_name) + " with a total votes
of = " + str(sec_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.sec_1 == obj.sec_2) and (obj.sec_1 > obj.sec_3) and (obj.sec_2 >
obj.sec_3)):
print("------------------------ WE HAVE A TIE FOR SECRETARY
-------------------------")
print(str(obj.sec1_no) + ") " + str(obj.sec1_name) + " with a total votes
of = " + str(sec_result))
print(str(obj.sec2_no) + ") " + str(obj.sec2_name) + " with a total votes
of = " + str(sec_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.sec_2 == obj.sec_3) and (obj.sec_2 > obj.sec_1) and (obj.sec_3 >
obj.sec_1)):
print("------------------------ WE HAVE A TIE FOR SECRETARY
-------------------------")
print(str(obj.sec2_no) + ") " + str(obj.sec2_name) + " with a total votes
of = " + str(sec_result))
print(str(obj.sec3_no) + ") " + str(obj.sec3_name) + " with a total votes
of = " + str(sec_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.sec_1 == obj.sec_3) and (obj.sec_1 > obj.sec_2) and (obj.sec_3 >
obj.sec_2)):
print("------------------------ WE HAVE A TIE FOR SECRETARY
-------------------------")
print(str(obj.sec1_no) + ") " + str(obj.sec1_name) + " with a total votes
of = " + str(sec_result))
print(str(obj.sec3_no) + ") " + str(obj.sec3_name) + " with a total votes
of = " + str(sec_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.sec_1 == obj.sec_2) and (obj.sec_1 == obj.sec_3)
and (obj.sec_2 == obj.sec_1) and (obj.sec_2 == obj.sec_3)
and (obj.sec_3 == obj.sec_1) and (obj.sec_3 == obj.sec_2)):
print("---------------------- WE HAVE TRIPLE TIE FOR SECRETARY
----------------------")
print(str(obj.sec1_no) + ") " + str(obj.sec1_name) + " with a total votes
of = " + str(sec_result))
print(str(obj.sec2_no) + ") " + str(obj.sec2_name) + " with a total votes
of = " + str(sec_result))
print(str(obj.sec3_no) + ") " + str(obj.sec3_name) + " with a total votes
of = " + str(sec_result))
print("--------------------------------------------------------------------
----------")

# Final Result for Auditor


------------------------------------------------------------------------
if ((obj.aud_1 > obj.aud_2) and (obj.aud_1 > obj.aud_3)):
print("****************** New elected Auditor for S.Y. 2021-2022
********************")
print(str(obj.aud1_no) + ") " + str(obj.aud1_name) + " with a total votes
of = " + str(aud_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.aud_2 > obj.aud_1) and (obj.aud_2 > obj.aud_3)):
print("****************** New elected Auditor for S.Y. 2021-2022
********************")
print(str(obj.aud2_no) + ") " + str(obj.aud2_name) + " with a total votes
of = " + str(aud_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.aud_3 > obj.aud_1) and (obj.aud_3 > obj.aud_2)):
print("****************** New elected Auditor for S.Y. 2021-2022
********************")
print(str(obj.aud3_no) + ") " + str(obj.aud3_name) + " with a total votes
of = " + str(aud_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.aud_1 == obj.aud_2) and (obj.aud_1 > obj.aud_3) and (obj.aud_2 >
obj.aud_3)):
print("------------------------- WE HAVE A TIE FOR AUDITOR
--------------------------")
print(str(obj.aud1_no) + ") " + str(obj.aud1_name) + " with a total votes
of = " + str(aud_result))
print(str(obj.aud2_no) + ") " + str(obj.aud2_name) + " with a total votes
of = " + str(aud_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.aud_2 == obj.aud_3) and (obj.aud_2 > obj.aud_1) and (obj.aud_3 >
obj.aud_1)):
print("------------------------- WE HAVE A TIE FOR AUDITOR
--------------------------")
print(str(obj.aud2_no) + ") " + str(obj.aud2_name) + " with a total votes
of = " + str(aud_result))
print(str(obj.aud3_no) + ") " + str(obj.aud3_name) + " with a total votes
of = " + str(aud_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.aud_1 == obj.aud_3) and (obj.aud_1 > obj.aud_2) and (obj.aud_3 >
obj.aud_2)):
print("------------------------- WE HAVE A TIE FOR AUDITOR
--------------------------")
print(str(obj.aud1_no) + ") " + str(obj.aud1_name) + " with a total votes
of = " + str(aud_result))
print(str(obj.aud3_no) + ") " + str(obj.aud3_name) + " with a total votes
of = " + str(aud_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.aud_1 == obj.aud_2) and (obj.aud_1 == obj.aud_3)
and (obj.aud_2 == obj.aud_1) and (obj.aud_2 == obj.aud_3)
and (obj.aud_3 == obj.aud_1) and (obj.aud_3 == obj.aud_2)):
print("---------------------- WE HAVE TRIPLE TIE FOR AUDITOR
------------------------")
print(str(obj.aud1_no) + ") " + str(obj.aud1_name) + " with a total votes
of = " + str(aud_result))
print(str(obj.aud2_no) + ") " + str(obj.aud2_name) + " with a total votes
of = " + str(aud_result))
print(str(obj.aud3_no) + ") " + str(obj.aud3_name) + " with a total votes
of = " + str(aud_result))
print("--------------------------------------------------------------------
----------")

# Final Result for Treasurer


------------------------------------------------------------------------
if ((obj.tre_1 > obj.tre_2) and (obj.tre_1 > obj.tre_3)):
print("***************** New elected Treasurer for S.Y. 2021-2022
*******************")
print(str(obj.tre1_no) + ") " + str(obj.tre1_name) + " with a total votes
of = " + str(tre_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.tre_2 > obj.tre_1) and (obj.tre_2 > obj.tre_3)):
print("***************** New elected Treasurer for S.Y. 2021-2022
*******************")
print(str(obj.tre2_no) + ") " + str(obj.tre2_name) + " with a total votes
of = " + str(tre_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.tre_3 > obj.tre_1) and (obj.tre_3 > obj.tre_2)):
print("***************** New elected Treasurer for S.Y. 2021-2022
*******************")
print(str(obj.tre3_no) + ") " + str(obj.tre3_name) + " with a total votes
of = " + str(tre_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.tre_1 == obj.tre_2) and (obj.tre_1 > obj.tre_3) and (obj.tre_2 >
obj.tre_3)):
print("------------------------ WE HAVE A TIE FOR TREASURER
-------------------------")
print(str(obj.tre1_no) + ") " + str(obj.tre1_name) + " with a total votes
of = " + str(tre_result))
print(str(obj.tre2_no) + ") " + str(obj.tre2_name) + " with a total votes
of = " + str(tre_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.tre_2 == obj.tre_3) and (obj.tre_2 > obj.tre_1) and (obj.tre_3 >
obj.tre_1)):
print("------------------------ WE HAVE A TIE FOR TREASURER
-------------------------")
print(str(obj.tre2_no) + ") " + str(obj.tre2_name) + " with a total votes
of = " + str(tre_result))
print(str(obj.tre3_no) + ") " + str(obj.tre3_name) + " with a total votes
of = " + str(tre_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.tre_1 == obj.tre_3) and (obj.tre_1 > obj.tre_2) and (obj.sec_3 >
obj.tre_2)):
print("------------------------ WE HAVE A TIE FOR TREASURER
-------------------------")
print(str(obj.tre1_no) + ") " + str(obj.tre1_name) + " with a total votes
of = " + str(tre_result))
print(str(obj.tre3_no) + ") " + str(obj.tre3_name) + " with a total votes
of = " + str(tre_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.tre_1 == obj.tre_2) and (obj.tre_1 == obj.tre_3)
and (obj.tre_2 == obj.tre_1) and (obj.tre_2 == obj.tre_3)
and (obj.tre_3 == obj.tre_1) and (obj.tre_3 == obj.tre_2)):
print("---------------------- WE HAVE TRIPLE TIE FOR TREASURER
----------------------")
print(str(obj.tre1_no) + ") " + str(obj.tre1_name) + " with a total votes
of = " + str(tre_result))
print(str(obj.tre2_no) + ") " + str(obj.tre2_name) + " with a total votes
of = " + str(tre_result))
print(str(obj.tre3_no) + ") " + str(obj.tre3_name) + " with a total votes
of = " + str(tre_result))
print("--------------------------------------------------------------------
----------")

# Final Result for Media Information


------------------------------------------------------------------------
if ((obj.media_1 > obj.media_2) and (obj.media_1 > obj.media_3)):
print("************ New elected Media Information for S.Y. 2021-2022
****************")
print(str(obj.media1_no) + ") " + str(obj.media1_name) + " with a total
votes of = " + str(media_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.media_2 > obj.media_1) and (obj.media_2 > obj.media_3)):
print("************ New elected Media Information for S.Y. 2021-2022
****************")
print(str(obj.media2_no) + ") " + str(obj.media2_name) + " with a total
votes of = " + str(media_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.media_3 > obj.media_1) and (obj.media_3 > obj.media_2)):
print("************ New elected Media Information for S.Y. 2021-2022
****************")
print(str(obj.media3_no) + ") " + str(obj.media3_name) + " with a total
votes of = " + str(media_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.media_1 == obj.media_2) and (obj.media_1 > obj.media_3) and
(obj.media_2 > obj.media_3)):
print("-------------------- WE HAVE A TIE FOR MEDIA INFORMATION
---------------------")
print(str(obj.media1_no) + ") " + str(obj.media1_name) + " with a total
votes of = " + str(media_result))
print(str(obj.media2_no) + ") " + str(obj.media2_name) + " with a total
votes of = " + str(media_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.media_2 == obj.media_3) and (obj.media_2 > obj.media_1) and
(obj.media_3 > obj.media_1)):
print("-------------------- WE HAVE A TIE FOR MEDIA INFORMATION
---------------------")
print(str(obj.media2_no) + ") " + str(obj.media2_name) + " with a total
votes of = " + str(media_result))
print(str(obj.media3_no) + ") " + str(obj.media3_name) + " with a total
votes of = " + str(media_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.media_1 == obj.media_3) and (obj.media_1 > obj.media_2) and
(obj.media_3 > obj.media_2)):
print("-------------------- WE HAVE A TIE FOR MEDIA INFORMATION
---------------------")
print(str(obj.media1_no) + ") " + str(obj.media1_name) + " with a total
votes of = " + str(media_result))
print(str(obj.media3_no) + ") " + str(obj.media3_name) + " with a total
votes of = " + str(media_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.media_1 == obj.media_2) and (obj.media_1 == obj.media_3)
and (obj.media_2 == obj.media_1) and (obj.media_2 == obj.media_3)
and (obj.media_3 == obj.media_1) and (obj.media_3 == obj.media_2)):
print("----------------- WE HAVE TRIPLE TIE FOR MEDIA INFORMATION
-------------------")
print(str(obj.media1_no) + ") " + str(obj.media1_name) + " with a total
votes of = " + str(media_result))
print(str(obj.media2_no) + ") " + str(obj.media2_name) + " with a total
votes of = " + str(media_result))
print(str(obj.media3_no) + ") " + str(obj.media3_name) + " with a total
votes of = " + str(media_result))
print("--------------------------------------------------------------------
----------")

# Final Result for First Year Representative


------------------------------------------------------------------------
if ((obj.f_rep_1 > obj.f_rep_2) and (obj.f_rep_1 > obj.f_rep_3)):
print("******** New elected First Year Representative for S.Y. 2021-2022
************")
print(str(obj.f_rep1_no) + ") " + str(obj.f_rep1_name) + " with a total
votes of = " + str(f_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.f_rep_2 > obj.f_rep_1) and (obj.f_rep_2 > obj.f_rep_3)):
print("******** New elected First Year Representative for S.Y. 2021-2022
************")
print(str(obj.f_rep2_no) + ") " + str(obj.f_rep2_name) + " with a total
votes of = " + str(f_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.f_rep_3 > obj.f_rep_1) and (obj.f_rep_3 > obj.f_rep_2)):
print("******** New elected First Year Representative for S.Y. 2021-2022
************")
print(str(obj.f_rep3_no) + ") " + str(obj.f_rep3_name) + " with a total
votes of = " + str(f_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.f_rep_1 == obj.f_rep_2) and (obj.f_rep_1 > obj.f_rep_3) and
(obj.f_rep_2 > obj.f_rep_3)):
print("--------------- WE HAVE A TIE FOR FIRST YEAR REPRESENTATIVE
------------------")
print(str(obj.f_rep1_no) + ") " + str(obj.f_rep1_name) + " with a total
votes of = " + str(f_rep_result))
print(str(obj.f_rep2_no) + ") " + str(obj.f_rep2_name) + " with a total
votes of = " + str(f_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.f_rep_2 == obj.f_rep_3) and (obj.f_rep_2 > obj.f_rep_1) and
(obj.f_rep_3 > obj.f_rep_1)):
print("--------------- WE HAVE A TIE FOR FIRST YEAR REPRESENTATIVE
------------------")
print(str(obj.f_rep2_no) + ") " + str(obj.f_rep2_name) + " with a total
votes of = " + str(f_rep_result))
print(str(obj.f_rep3_no) + ") " + str(obj.f_rep3_name) + " with a total
votes of = " + str(f_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.f_rep_1 == obj.f_rep_3) and (obj.f_rep_1 > obj.f_rep_2) and
(obj.f_rep_3 > obj.f_rep_2)):
print("--------------- WE HAVE A TIE FOR FIRST YEAR REPRESENTATIVE
------------------")
print(str(obj.f_rep1_no) + ") " + str(obj.f_rep1_name) + " with a total
votes of = " + str(f_rep_result))
print(str(obj.f_rep3_no) + ") " + str(obj.f_rep3_name) + " with a total
votes of = " + str(f_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.f_rep_1 == obj.f_rep_2) and (obj.f_rep_1 == obj.f_rep_3)
and (obj.f_rep_2 == obj.f_rep_1) and (obj.f_rep_2 == obj.f_rep_3)
and (obj.f_rep_3 == obj.f_rep_1) and (obj.f_rep_3 == obj.f_rep_2)):
print("------------ WE HAVE TRIPLE TIE FOR FIRST YEAR REPRESENTATIVE
----------------")
print(str(obj.f_rep1_no) + ") " + str(obj.f_rep1_name) + " with a total
votes of = " + str(f_rep_result))
print(str(obj.f_rep2_no) + ") " + str(obj.f_rep2_name) + " with a total
votes of = " + str(f_rep_result))
print(str(obj.f_rep3_no) + ") " + str(obj.f_rep3_name) + " with a total
votes of = " + str(f_rep_result))
print("--------------------------------------------------------------------
----------")

# Final Result for Second Year Representative


------------------------------------------------------------------------
if ((obj.s_rep_1 > obj.s_rep_2) and (obj.s_rep_1 > obj.s_rep_3)):
print("******** New elected Second Year Representative for S.Y. 2021-2022
***********")
print(str(obj.s_rep1_no) + ") " + str(obj.s_rep1_name) + " with a total
votes of = " + str(s_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.s_rep_2 > obj.s_rep_1) and (obj.s_rep_2 > obj.s_rep_3)):
print("******** New elected Second Year Representative for S.Y. 2021-2022
***********")
print(str(obj.s_rep2_no) + ") " + str(obj.s_rep2_name) + " with a total
votes of = " + str(s_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.s_rep_3 > obj.s_rep_1) and (obj.s_rep_3 > obj.s_rep_2)):
print("******** New elected Second Year Representative for S.Y. 2021-2022
***********")
print(str(obj.s_rep3_no) + ") " + str(obj.s_rep3_name) + " with a total
votes of = " + str(s_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.s_rep_1 == obj.s_rep_2) and (obj.s_rep_1 > obj.s_rep_3) and
(obj.s_rep_2 > obj.s_rep_3)):
print("--------------- WE HAVE A TIE FOR SECOND YEAR REPRESENTATIVE
-----------------")
print(str(obj.s_rep1_no) + ") " + str(obj.s_rep1_name) + " with a total
votes of = " + str(s_rep_result))
print(str(obj.s_rep2_no) + ") " + str(obj.s_rep2_name) + " with a total
votes of = " + str(s_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.s_rep_2 == obj.s_rep_3) and (obj.s_rep_2 > obj.s_rep_1) and
(obj.s_rep_3 > obj.s_rep_1)):
print("--------------- WE HAVE A TIE FOR SECOND YEAR REPRESENTATIVE
-----------------")
print(str(obj.s_rep2_no) + ") " + str(obj.s_rep2_name) + " with a total
votes of = " + str(s_rep_result))
print(str(obj.s_rep3_no) + ") " + str(obj.s_rep3_name) + " with a total
votes of = " + str(s_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.s_rep_1 == obj.s_rep_3) and (obj.s_rep_1 > obj.s_rep_2) and
(obj.s_rep_3 > obj.s_rep_2)):
print("--------------- WE HAVE A TIE FOR SECOND YEAR REPRESENTATIVE
-----------------")
print(str(obj.s_rep1_no) + ") " + str(obj.s_rep1_name) + " with a total
votes of = " + str(s_rep_result))
print(str(obj.s_rep3_no) + ") " + str(obj.s_rep3_name) + " with a total
votes of = " + str(s_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.s_rep_1 == obj.s_rep_2) and (obj.s_rep_1 == obj.s_rep_3)
and (obj.s_rep_2 == obj.s_rep_1) and (obj.s_rep_2 == obj.s_rep_3)
and (obj.s_rep_3 == obj.s_rep_1) and (obj.s_rep_3 == obj.s_rep_2)):
print("------------ WE HAVE TRIPLE TIE FOR SECOND YEAR REPRESENTATIVE
---------------")
print(str(obj.s_rep1_no) + ") " + str(obj.s_rep1_name) + " with a total
votes of = " + str(s_rep_result))
print(str(obj.s_rep2_no) + ") " + str(obj.s_rep2_name) + " with a total
votes of = " + str(s_rep_result))
print(str(obj.s_rep3_no) + ") " + str(obj.s_rep3_name) + " with a total
votes of = " + str(s_rep_result))
print("--------------------------------------------------------------------
----------")

# Final Result for Third Year Representative


------------------------------------------------------------------------
if ((obj.t_rep_1 > obj.t_rep_2) and (obj.t_rep_1 > obj.t_rep_3)):
print("********* New elected Third Year Representative for S.Y. 2021-2022
***********")
print(str(obj.t_rep1_no) + ") " + str(obj.t_rep1_name) + " with a total
votes of = " + str(t_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.t_rep_2 > obj.t_rep_1) and (obj.t_rep_2 > obj.t_rep_3)):
print("********* New elected Third Year Representative for S.Y. 2021-2022
***********")
print(str(obj.t_rep2_no) + ") " + str(obj.t_rep2_name) + " with a total
votes of = " + str(t_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.t_rep_3 > obj.t_rep_1) and (obj.t_rep_3 > obj.t_rep_2)):
print("********* New elected Third Year Representative for S.Y. 2021-2022
***********")
print(str(obj.t_rep3_no) + ") " + str(obj.t_rep3_name) + " with a total
votes of = " + str(t_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.t_rep_1 == obj.t_rep_2) and (obj.t_rep_1 > obj.t_rep_3) and
(obj.t_rep_2 > obj.t_rep_3)):
print("---------------- WE HAVE A TIE FOR THIRD YEAR REPRESENTATIVE
-----------------")
print(str(obj.t_rep1_no) + ") " + str(obj.t_rep1_name) + " with a total
votes of = " + str(t_rep_result))
print(str(obj.t_rep2_no) + ") " + str(obj.t_rep2_name) + " with a total
votes of = " + str(t_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.t_rep_2 == obj.t_rep_3) and (obj.t_rep_2 > obj.t_rep_1) and
(obj.t_rep_3 > obj.t_rep_1)):
print("---------------- WE HAVE A TIE FOR THIRD YEAR REPRESENTATIVE
-----------------")
print(str(obj.t_rep2_no) + ") " + str(obj.t_rep2_name) + " with a total
votes of = " + str(t_rep_result))
print(str(obj.t_rep3_no) + ") " + str(obj.t_rep3_name) + " with a total
votes of = " + str(t_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.t_rep_1 == obj.t_rep_3) and (obj.t_rep_1 > obj.t_rep_2) and
(obj.t_rep_3 > obj.t_rep_2)):
print("---------------- WE HAVE A TIE FOR THIRD YEAR REPRESENTATIVE
-----------------")
print(str(obj.t_rep1_no) + ") " + str(obj.t_rep1_name) + " with a total
votes of = " + str(t_rep_result))
print(str(obj.t_rep3_no) + ") " + str(obj.t_rep3_name) + " with a total
votes of = " + str(t_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.t_rep_1 == obj.t_rep_2) and (obj.t_rep_1 == obj.t_rep_3)
and (obj.t_rep_2 == obj.t_rep_1) and (obj.t_rep_2 == obj.t_rep_3)
and (obj.t_rep_3 == obj.t_rep_1) and (obj.t_rep_3 == obj.t_rep_2)):
print("------------- WE HAVE TRIPLE TIE FOR THIRD YEAR REPRESENTATIVE
---------------")
print(str(obj.t_rep1_no) + ") " + str(obj.t_rep1_name) + " with a total
votes of = " + str(t_rep_result))
print(str(obj.t_rep2_no) + ") " + str(obj.t_rep2_name) + " with a total
votes of = " + str(t_rep_result))
print(str(obj.t_rep3_no) + ") " + str(obj.t_rep3_name) + " with a total
votes of = " + str(t_rep_result))
print("--------------------------------------------------------------------
----------")
# Final Result for Fourth Year Representative
------------------------------------------------------------------------
if ((obj.frt_rep_1 > obj.frt_rep_2) and (obj.frt_rep_1 > obj.frt_rep_3)):
print("******** New elected Fourth Year Representative for S.Y. 2021-2022
***********")
print(str(obj.frt_rep1_no) + ") " + str(obj.frt_rep1_name) + " with a total
votes of = " + str(frt_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.frt_rep_2 > obj.frt_rep_1) and (obj.frt_rep_2 > obj.frt_rep_3)):
print("******** New elected Fourth Year Representative for S.Y. 2021-2022
***********")
print(str(obj.frt_rep2_no) + ") " + str(obj.frt_rep2_name) + " with a total
votes of = " + str(frt_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.frt_rep_3 > obj.frt_rep_1) and (obj.frt_rep_3 > obj.frt_rep_2)):
print("******** New elected Fourth Year Representative for S.Y. 2021-2022
***********")
print(str(obj.frt_rep3_no) + ") " + str(obj.frt_rep3_name) + " with a total
votes of = " + str(frt_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.frt_rep_1 == obj.frt_rep_2) and (obj.frt_rep_1 > obj.frt_rep_3)
and (obj.frt_rep_2 > obj.frt_rep_3)):
print("--------------- WE HAVE A TIE FOR FOURTH YEAR REPRESENTATIVE
-----------------")
print(str(obj.frt_rep1_no) + ") " + str(obj.frt_rep1_name) + " with a total
votes of = " + str(frt_rep_result))
print(str(obj.frt_rep2_no) + ") " + str(obj.frt_rep2_name) + " with a total
votes of = " + str(frt_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.frt_rep_2 == obj.frt_rep_3) and (obj.frt_rep_2 > obj.frt_rep_1)
and (obj.frt_rep_3 > obj.frt_rep_1)):
print("--------------- WE HAVE A TIE FOR FOURTH YEAR REPRESENTATIVE
-----------------")
print(str(obj.frt_rep2_no) + ") " + str(obj.frt_rep2_name) + " with a total
votes of = " + str(frt_rep_result))
print(str(obj.frt_rep3_no) + ") " + str(obj.frt_rep3_name) + " with a total
votes of = " + str(frt_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.frt_rep_1 == obj.frt_rep_3) and (obj.frt_rep_1 > obj.frt_rep_2)
and (obj.frt_rep_3 > obj.frt_rep_2)):
print("--------------- WE HAVE A TIE FOR FOURTH YEAR REPRESENTATIVE
-----------------")
print(str(obj.frt_rep1_no) + ") " + str(obj.frt_rep1_name) + " with a total
votes of = " + str(frt_rep_result))
print(str(obj.frt_rep3_no) + ") " + str(obj.frt_rep3_name) + " with a total
votes of = " + str(frt_rep_result))
print("--------------------------------------------------------------------
----------")
elif ((obj.frt_rep_1 == obj.frt_rep_2) and (obj.frt_rep_1 == obj.frt_rep_3)
and (obj.frt_rep_2 == obj.frt_rep_1) and (obj.frt_rep_2 == obj.frt_rep_3)
and (obj.frt_rep_3 == obj.frt_rep_1) and (obj.frt_rep_3 == obj.frt_rep_2)):
print("------------ WE HAVE TRIPLE TIE FOR FOURTH YEAR REPRESENTATIVE
---------------")
print(str(obj.frt_rep1_no) + ") " + str(obj.frt_rep1_name) + " with a total
votes of = " + str(frt_rep_result))
print(str(obj.frt_rep2_no) + ") " + str(obj.frt_rep2_name) + " with a total
votes of = " + str(frt_rep_result))
print(str(obj.frt_rep3_no) + ") " + str(obj.frt_rep3_name) + " with a total
votes of = " + str(frt_rep_result))
print("--------------------------------------------------------------------
----------")
else:
print("System error. Please try again.")

#Calling functions--------------------------------------------
call = election()
call.welcome()
call.registration()

You might also like