You are on page 1of 49

A

Project Report
On

Food Delivering App

Undertaken At
Maharaja Agrasen Vidyalaya
Memnagar, Ahmedabad - 380052

By
Dhrumi Shah

Guided By
Mr. Vipul V. Srivastava

Submitted To
Maharaja Agrasen Vidyalaya
(Affiliated to Central Board of Secondary Education)
Gujarat-India.
2023 – 2024

1|Page
CONTENTS
SR.NO. TOPIC PAGE NO.

1. CERTIFICATE 3

2. ACKNOWLEDGEMENT 4

3. INTRODUCTION 5

4. PROJECT PROFILE 6

5. ABOUT PYTHON 7-14

6. PROJECT OVERVIEW 15

7. SOURCE CODE 16-35

8. OUTPUT SCREENS 35-47

9. BIBLIOGRAPHY 48

2|Page
CERTIFICATE
This is to certify that the project
entitled Food Delivering App is done by
Mss. Dhrumi Shah Of class XI - A of
Maharaja Agrasen Vidyalaya, As per the
requirement of All India Senior School
Certificate Examination during the
academic year 2023 - 2024.

Signature Of Student : ____________

Signature Of Teacher : ____________

Date of Submission : ____________

3|Page
ACKNOWLEDGMENT
The phenomenon remains same that no project ever can be
executed proficiently and efficiently without sharing the
meticulous ideas, technical expertise and innovative thoughts put
forwarded by the technical and non-technical veterans.
In this regard first of all we would like to express deep gratitude to
Mr. Vipul V. Srivastava for sharing his precious knowledge
and innovative ideas for the successful execution of the project.
Whenever a technical project is developed, eventually it requires
conductive technical environment and technical guidance to get in
involved in the assigned project enthusiastically.
I would also like to thank our Principal DR. Neeta Awasthi
and our school ‘Maharaja agrasen Vidyalaya’ for
giving us this opportunity and improve upon our skills.

Dhrumi Shah
‘XI’ - ‘A’

4|Page
INTRODUCTION
In today's fast-paced world, convenience
is king. Introducing ZWIGGATO, a
revolutionary food delivery solution
designed to streamline the dining
experience for both restaurants and
customers. Our user-friendly platform
connects you with a vast selection of
local eateries, allowing you to browse
menus, customize orders, and enjoy
delicious meals delivered directly to
your doorstep – all with a few taps on
your mobile device.

5|Page
PROJECT PROFILE
NAME OF THE PROJECT Food Delivering App

PURPOSE To Order Food Online

Maharaja Agrasen
DEVELOPED AT
Vidyalaya

Dhrumi Shah

DEVELOPED BY Vidhi Patel

Amarkrit Dang

PROJECT GUIDES Mr. VIPUL V. SRIVASTAVA

Maharaja Agrasen
SUBMITTED TO
Vidyalaya

TOOLS AND TECHNOLOGIES USED

OPERATING SYSTEM Windows 10

PROGRAMMING
Python 3.7.2
LANGUAGE

DOCUMENTATION Microsoft Word

6|Page
ABOUT PYTHON
HISTORY
Python is an interpreted, high-level, general-purpose programming language. Created
by ‘Guido van Rossum’ and first released in 1991, Python's design philosophy
emphasizes code readability with its notable use of significant whitespace. Its
language constructs and object-oriented approach aim to help programmers write
clear, logical code for small and large-scale projects.

Python is dynamically typed and garbage-collected. It supports multiple programming


paradigms, including procedural, object-oriented, and functional programming. Python
is often described as a "batteries included" language due to its comprehensive standard
library.

Python was conceived in the late 1980s as a successor to the ABC language. Python
2.0, released in 2000, introduced features like list comprehensions and a garbage
collection system capable of collecting reference cycles. Python 3.0, released in 2008,
was a major revision of the language that is not completely backward-compatible, and
much Python 2 code does not run unmodified on Python 3.

The Python 2 language, i.e. Python 2.7.x, "sunsetted" on January 1, 2020 (after
extension; first planned for 2015), and the Python team of volunteers will not fix
security issues, or improve it in other ways after that date. With the end-of-life, only
Python 3.5.x and later will be supported.

Python interpreters are available for many operating systems. A global community of
programmers develops and maintains C Python, an open source reference
implementation. A non-profit organization, the Python Software Foundation, manages
and directs resources for Python and C Python development.

7|Page
FEATURES
Python is a multi-paradigm programming language. Object-oriented programming and
structured programming are fully supported, and many of its features support
functional programming and aspect-oriented programming (including by meta-
programming and meta-objects (magic methods)). Many other paradigms are
supported via extensions, including design by contract and logic programming.

Python uses dynamic typing and a combination of reference counting and a cycle-
detecting garbage collector for memory management. It also features dynamic name
resolution (late binding), which binds method and variable names during program
execution.

Python's design offers some support for functional programming in the Lisp tradition.
It has filter, map, and reduce functions; list comprehensions, dictionaries, sets, and
generator expressions. The standard library has two modules (iter-tools and func-tools)
that implement functional tools borrowed from Haskell and Standard ML.

Rather than having all of its functionality built into its core, Python was designed to be
highly extensible. This compact modularity has made it particularly popular as a
means of adding programmable interfaces to existing applications. Van Rossum's
vision of a small core language with a large standard library and easily extensible
interpreter stemmed from his frustrations with ABC, which espoused the opposite
approach.

Python strives for a simpler, less-cluttered syntax and grammar while giving
developers a choice in their coding methodology. In contrast to Perl's "there is more
than one way to do it" motto, Python embraces a "there should be one—and
preferably only one—obvious way to do it" design philosophy. Alex Martelli, a
Fellow at the Python Software Foundation and Python book author, writes that "To
describe something as 'clever' is not considered a compliment in the Python culture.”

8|Page
Indentation
Python syntax and semantics & Indentation

Python uses whitespace indentation, rather than curly brackets or keywords, to delimit
blocks. An increase in indentation comes after certain statements; a decrease in
indentation signifies the end of the current block. Thus, the program's visual structure
accurately represents the program's semantic structure. This feature is sometimes
termed the off-side rule, which some other languages share, but in most languages
indentation doesn't have any semantic meaning.

Flow Of Control
Python's statements include (among others):

• The assignment statement (token '=', the equals sign). This operates differently
than in traditional imperative programming languages, and this fundamental
mechanism (including the nature of Python's version of variables) illuminates many
other features of the language. Assignment in C, e.g., x = 2, translates to "typed
variable name x receives a copy of numeric value 2". The (right-hand) value is copied
into an allocated storage location for which the (left-hand) variable name is the
symbolic address. The memory allocated to the variable is large enough (potentially
quite large) for the declared type. In the simplest case of Python assignment, using the
same example, x = 2, translates to "(generic) name x receives a reference to a separate,
dynamically allocated object of numeric (int) type of value 2." This is termed binding
the name to the object. Since the name's storage location doesn't contain the indicated
value, it is improper to call it a variable. Names may be subsequently rebound at any
time to objects of greatly varying types, including strings, procedures, complex objects
with data and methods, etc.

Successive assignments of a common value to multiple names, e.g., x = 2; y = 2; z = 2


result in allocating storage to (at most) three names and one numeric object, to which
all three names are bound. Since a name is a generic reference holder it is
unreasonable to associate a fixed data type with it. However at a given time a name
will be bound to some object, which will have a type; thus there is dynamic typing.

9|Page
• The if statement, which conditionally executes a block of code, along with else
and elif (a contraction of else-if).

• The for statement, which iterates over an iterable object, capturing each
element to a local variable for use by the attached block.

• The while statement, which executes a block of code as long as its condition
is true.

• The try statement, which allows exceptions raised in its attached code block to
be caught and handled by except clauses; it also ensures that clean-up code in a
finally block will always be run regardless of how the block exits.

• The raise statement, used to raise a specified exception or re-raise a caught


exception.

• The class statement, which executes a block of code and attaches its local
namespace to a class, for use in object-oriented programming.

• The def statement, which defines a function or method.

• The break statement, exits from the loop.

• The continue statement, skips this iteration and continues with the next
item.

• The pass statement, which serves as a NOP. It is syntactically needed to


create an empty code block.

• The assert statement, used during debugging to check for conditions that
ought to apply.

• The import statement, which is used to import modules whose functions or


variables can be used in the current program. There are three ways of using
import: import <module name> [as <alias>] or from <module name>
import * or from <module name> import <definition 1> [as <alias 1>],
<definition 2> [as <alias 2>], ....

• The print statement was changed to the print() function in Python 3.7.3.

10 | P a g e
Expressions
Some Python expressions are similar to languages such as C and Java, while some are
not:

• Addition, subtraction, and multiplication are the same, but the behavior of
division differs. There are two types of divisions in Python. They are floor
division (or integer division) // and floating point/division. Python also added
the ** operator for exponentiation.

• From Python 3.5, the new @ infix operator was introduced. It is intended to be
used by libraries such as NumPy for matrix multiplication.

• From Python 3.8, the syntax :=, called the 'walrus operator' was introduced. It
assigns values to variables as part of a larger expression.

• In Python, == compares by value, versus Java, which compares numerics by


value and objects by reference. (Value comparisons in Java on objects can be
performed with the equals() method.) Python's ‘is’ operator may be used to
compare object identities (comparison by reference). In Python, comparisons may be
chained, for example a <= b <= c.

• Python uses the words ‘and’, ‘or’, ‘not’ for its boolean operators rather
than the symbolic &&, ||, ! used in Java and C.

• Conditional expressions in Python are written as x if c else y (different in


order of operands from the c ? x : y operator common to many other
languages).

11 | P a g e
LISTS AND TUPLES

• Python makes a distinction between lists and tuples. Lists are written
as [1, 2, 3], are mutable, and cannot be used as the keys of dictionaries
(dictionary keys must be immutable in Python). Tuples are written as (1, 2, 3), are
immutable and thus can be used as the keys of dictionaries, provided all
elements of the tuple are immutable. The + operator can be used to concatenate
two tuples, which does not directly modify their contents, but rather produces a new
tuple containing the elements of both provided tuples. Thus, given the variable t
initially equal to (1, 2, 3), executing t = t + (4, 5) first evaluates t + (4, 5), which
yields (1, 2, 3, 4, 5), which is then assigned back to t, thereby effectively
"modifying the contents" of t, while conforming to the immutable nature of tuple
objects. Parentheses are optional for tuples in unambiguous contexts.

• Python has a "string format" operator %. This functions analogous to printf


format strings in C, e.g. "spam=%s eggs=%d" % ("blah", 2) evaluates to
"spam=blah eggs=2". In Python 3 and 2.6+, this was supplemented by the
format() method of the str class, e.g. "spam={0} eggs={1}".format("blah", 2).
Python 3.6 added "f-strings": blah = "blah"; eggs = 2; f'spam={blah} eggs={eggs}'.

12 | P a g e
STRING LITERALS
• Strings delimited by single or double quote marks. Unlike in Unix shells,
Perl and Perl-influenced languages, single quote marks and double quote marks
function identically. Both kinds of string use the backslash (\) as an escape
character. String interpolation became available in Python 3.6 as "formatted string
literals".

• Triple-quoted strings, which begin and end with a series of three single or
double quote marks. They may span multiple lines and function like here
documents in shells, Perl and Ruby.

• Raw string varieties, denoted by prefixing the string literal with an r.


Escape sequences are not interpreted; hence raw strings are useful where
literal backslashes are common, such as regular expressions and Windows-style
paths. Compare "@-quoting" in C#.

• Python has array index and array slicing expressions on lists, denoted as
a[key], a[start:stop] or a[start:stop:step]. Indexes are zero-based, and negative
indexes are relative to the end. Slices take elements from the start index up to, but
not including, the stop index. The third slice parameter, called step or stride, allows
elements to be skipped and reversed. Slice indexes may be omitted, for example
a[:] returns a copy of the entire list. Each element of a slice is a shallow copy.

Statements cannot be a part of an expression, so list and other comprehensions or


lambda expressions, all being expressions, cannot contain statements. A particular
case of this is that an assignment statement such as a = 1 cannot form part of the
conditional expression of a conditional statement. This has the advantage of
avoiding a classic C error of mistaking an assignment operator = for an equality
operator == in conditions: if (c = 1) { ... } is syntactically valid (but probably
unintended) C code but if c = 1: ... causes a syntax error in Python.

13 | P a g e
14 | P a g e
METHODS
Methods on objects are functions attached to the object's class; the syntax
instance.method(argument) is, for normal methods and functions, syntactic sugar
for Class.method(instance, argument). Python methods have an explicit self
parameter to access instance data, in contrast to the implicit self (or this) in some
other object-oriented programming languages (e.g., C++, Java, Objective-C, or
Ruby
Summary of Python 3's built-in types
Type Mutability Description Syntax example
bool immutable Boolean value True, False
bytearray mutable Sequence of bytes bytearray(b'Some ASCII')
bytearray(b"Some ASCII")
bytearray([119, 105, 107,
105])
bytes immutable Sequence of bytes b'Some ASCII' b"Some
ASCII"
bytes([119, 105, 107, 105])
complex immutable Complex number with real and 3+2.7j
imaginary parts
dict mutable Associative array (or dictionary) of {'key1': 1.0, 3: False}
key and value pairs; can contain
mixed types (keys and values),
keys must be a hashable type
ellipsis immutable An ellipsis placeholder to be used ...
as an index in NumPy arrays Ellipsis
float immutable Floating point number, system- 3.1415927
defined precision
frozenset immutable Unordered set, contains no frozenset([4.0, 'string',
duplicates; can contain mixed True])
types, if hashable
int immutable Integer of unlimited magnitude[84] 42
list mutable List, can contain mixed types [4.0, 'string', True]
NoneTypea immutable An object representing the absence None
of a value.
set mutable Unordered set, contains no {4.0, 'string', True}
duplicates; can contain mixed
types, if hashable
str immutable A character string: sequence of 'Wikipedia' "Wikipedia"
Unicode codepoints """Spanning
multiple
lines"""
tuple immutable Can contain mixed types (4.0, 'string', True)
range immutable A Sequence of numbers commonly range(1, 10)
used for looping specific number range(10,-5,-2)
of times in for loops[85]

15 | P a g e
PROJECT OVERVIEW

FILES IMPORTED
Random : Used to generate random numbers.

FUNCTIONS : USER DEFINED

No User Defined Functions

FUNCTIONS : BUILT-IN

input() : If a string is present in the parenthesis it prints it without going to a new


line .Then it reads a line from the input and returns it after coveting it to a string.
int() : Returns an integer constructed from a number or a string given in
parenthesis
len() : Returns the length of the object given in parenthesis
print() : Prints objects to the text stream file seperated by default separator ‘ ‘
and goes to next lne fter printing
range() :Returns a sequence of numbers from x to y both of which are passed in
parenthesis
return() : Ends the execution of the function call and returns a value if present in
the parenthesis
str() : Returns a string version o the object passed in the parenthesis
upper() : Returns the uppercase of the string passed

16 | P a g e
SOURCE CODE
import random

print(21*'#')

print(' WELCOME TO ZWIGGATO ')

print(21*'#')

print('')

summ=0

t1=1

q=1

L=[]

L1=[]

L2=[]

D1={1:90 ,2:160,3:100,4:250,5:130,6:110,7:135,8:150,9:120,10:80 }

D2={1:160,2:110,3:150,4:125,5:120,6:140,7:145,8:135,9:135,10:120}

D3={1:170,2:120,3:140,4:125,5:190,6:115,7:145,8:165,9:100,10:120}

D4={1:100,2:110,3:135,4:110,5:145,6:150,7:165,8:120,9:125,10:115}

D5={1:110,2:150,3:120,4:165,5:145,6:135,7:130,8:115,9:120,10:125}

D6={1:120,2:150,3:100,4:100,5:130,6:140,7:130,8:135,9:50 ,10:50 }

D7={1:100,2:150,3:150,4:100,5:120,6:130,7:135,8:135,9:120,10:70 }

D8={1:190,2:170,3:150,4:140,5:70 ,6:120,7:80 ,8:100,9:130,10:160}

D11={1:'Cappucino ',2:'Choco-chip Shake ',3:'Classic Cold Coffee ',4:'Coconut


Lemonade ',5:'Guava Punch ',6:'Hot Chocolate ',7:'KitKat Shake
',8:'Bubblegum Mint Mojito ',9:'Mango Mojito ',10:'Rajwadi Tea '}

D22={1:'Makai Shorba ',2:'Palak Shorba ',3:'Manchaow Soup ',4:'Cheese Corn


Tomato Soup ',5:'Cheesy Soup ',6:'Creole Soup ',7:'Hot N Sour ',8:'Lemon
Coriander Soup ',9:'Mix Veg. Clear Soup ',10:'Mulligatway Soup '}

D33={1:'French Fries ',2:'Peri Peri French Fries ',3:'Cheesy French Fries ',4:'Manchurian
',5:'Noodles ',6:'Vegetable Sandwich ',7:'Cheese Sandwich ',8:'Samosa
',9:'Cutlets ',10:'Spring Roll '}

17 | P a g e
D44={1:'Margarita Pizza ',2:'Pineapple Pizza ',3:'Cheese & Corn Pizza ',4:'Farmhouse
Pizza ',5:'Arrabbiata Pasta(Red Sauce) ',6:'Alfredo Pasta(White Sauce) ',7:'Pesto Pasta (Green
Sauce) ',8:'Aglio e olio Pasta ',9:'Garlic Bread ',10:'Stuffed Garlic Bread '}

D55={1:'Mexican Rice ',2:'Sp. Loaded Nachos ',3:'Burrito ',4:'Quesadilla


',5:'Veg Tacos ',6:'Enchiladas ',7:'Guacamole ',8:'Fajitas
',9:'Carnitas ',10:'Chilaquiles '}

D66={1:'Chole Bhature ',2:'Butter Panner ',3:'Dal Makhani ',4:'Sarson da Saag &


Makke di Roti ',5:'Aloo De Parathe ',6:'Rajma Chawal ',7:'Kadhi Pakoda with Rice
',8:'Paneer Tikka ',9:'Butter Naan ',10:'Butter Roti '}

D77={1:'Plain Dosa ',2:'Masala Dosa ',3:'Mysore Dosa ',4:'Rawa Dosa


',5:'Idli Sambhar ',6:'Podi Idli ',7:'Medu vada Sambhar ',8:'Uttapam
',9:'Masala Uttapam ',10:'Sambhar '}

D88={1:'Nuetella Cheesecake ',2:'Biscoff Cheesecake ',3:'Blueberry Cheesecake


',4:'Hazelnut Nutella Brownie ',5:'Gulab Jamun ',6:'Rabadi Jalebi ',7:'Rasgulla
',8:'Payasam ',9:'Tiramisu ',10:'Churros with Chocolate Sauce '}

flag=1

while t1!=0:

print('What Cusine would you like to have? ')

print('')

print(31*'-')

print('Code Cusine')

print(31*'-')

print(' 1. Beverages')

print(' 2. Soups')

print(' 3. Starters')

print(' 4. Italian')

print(' 5. Mexican')

print(' 6. North Indian')

print(' 7. South Indian')

print(' 8. Dessert')

print(' 9. Generate Bill')

print(' 10. Not Hungry(Exit)!!')

print(43*'-')

18 | P a g e
cui=int(input('Enter the code of cusine you would like: '))

if cui > 10 or cui < 1:

print('Sorry you entered a wrong code' )

else:

if cui == 1:

print('')

print(59*'-')

print('Item code',6*' ','Items',27*' ','Price')

print(59*'-')

print(' 1. Cappucino ---------------------------- 90')

print(' 2. Choco-chip Shake --------------------- 160')

print(' 3. Classic Cold Coffee ------------------ 100')

print(' 4. Coconut Lemonade --------------------- 250')

print(' 5. Guava Punch -------------------------- 130')

print(' 6. Hot Chocolate ------------------------ 110')

print(' 7. KitKat Shake ------------------------- 135')

print(' 8. Bubblegum Mint Mojito ---------------- 150')

print(' 9. Mango Mojito ------------------------- 120')

print(' 10. Rajwadi Tea -------------------------- 80')

print(' 11. Back To Main Menu.')

print('')

while q!=0:

food=int(input('Which dish would you like to have? (Enter the Number): '))

if food==11:

flag=0

break

print('')

if food > 0 and food < 12:

r=int(input('How much would you like to order?: '))

19 | P a g e
print('')

summ = summ + (D1[food]*r)

a=D1[food]

L.append(D11[food])

L1.append(r)

L2.append(a)

mor=input('Would you like to have more?[y/n]: ')

print('')

if mor =='Y' or mor == 'y':

q=1

else:

q=-1

break

else:

print('You entered wrong Item Code')

print('')

continue

if flag==0:

t1=t1+1

print("Okay...")

print('')

continue

elif cui == 2:

print('')

print(59*'-')

print('Item code',6*' ','Items',27*' ','Price')

print(59*'-')

print(' 1. Makai Shorba ------------------------- 160')

print(' 2. Palak Shorba ------------------------- 110')

20 | P a g e
print(' 3. Cheese Corn Tomato Soup -------------- 150')

print(' 4. Manchaow Soup ------------------------ 125')

print(' 5. Cheesy Soup -------------------------- 120')

print(' 6. Creole Soup -------------------------- 140')

print(' 7. Hot N Sour --------------------------- 145')

print(' 8. Lemon Coriander Soup ----------------- 135')

print(' 9. Mix Veg. Clear Soup ------------------ 135')

print(' 10. Mulligatway Soup --------------------- 120')

print(' 11. Back To Main Menu.')

print('')

while q!=0 :

food=int(input('Which dish would you like to have? (Enter the Number): '))

if food == 11:

flag=0

break

print('')

if food > 0 and food < 12:

r=int(input('How much would you like to order?: '))

print('')

summ = summ + (D2[food]*r)

a=D2[food]

L.append(D22[food])

L1.append(r)

L2.append(a)

mor=input('Would you like to have more?[y/n]: ')

print('')

if mor =='Y' or mor == 'y':

continue

else:

21 | P a g e
q=-1

break

else:

print('You entered wrong Item Code')

print('')

continue

if flag==0:

t1=t1+1

print("Okay...")

print('')

continue

elif cui == 3:

print('')

print(59*'-')

print('Item code',6*' ','Items',27*' ','Price')

print(59*'-')

print(' 1. French Fries ------------------------ 170')

print(' 2. Peri Peri French Fries --------------- 120')

print(' 3. Cheesy French Fries ------------------ 140')

print(' 4. Manchurian --------------------------- 125')

print(' 5. Noodles ------------------------------ 190')

print(' 6. Vegetable Sandwich --------------------115')

print(' 7. Cheese Sandwich----------------------- 145')

print(' 8. Samosa ------------------------------- 165')

print(' 9. Cutlets ------------------------------ 100')

print(' 10. Spring Roll -------------------------- 120')

print(' 11. Back To Main Menu.')

print('')

while q!=0 :

22 | P a g e
food=int(input('Which dish would you like to have? (Enter the Number): '))

if food == 11:

flag=0

break

print('')

if food > 0 and food < 11:

r=int(input('How much would you like to order?: '))

print('')

summ = summ + (D3[food]*r)

a=D3[food]

L.append(D33[food])

L1.append(r)

L2.append(a)

mor=input('Would you like to have more?[y/n]: ')

print('')

if mor =='Y' or mor == 'y':

continue

else:

q=-1

break

else:

print('You entered wrong Item Code')

print('')

continue

if flag==0:

t1=t1+1

print("Okay...")

print('')

continue

23 | P a g e
elif cui == 4:

print('')

print(59*'-')

print('Item code',6*' ','Items',27*' ','Price')

print(59*'-')

print(' 1. Margarita Pizza ---------------------- 100')

print(' 2. Pineapple Pizza ---------------------- 110')

print(' 3. Cheese & Corn Pizza ------------------ 135')

print(' 4. Farmhouse Pizza ---------------------- 110')

print(' 5. Arrabbiata Pasta(Red Sauce) ---------- 145')

print(' 6. Alfredo Pasta(White Sauce) ----------- 150')

print(' 7. Pesto Pasta (Green Sauce) ------------ 165')

print(' 8. Aglio e olio Pasta ------------------- 120')

print(' 9. Garlic Bread ------------------------- 125')

print(' 10. Stuffed Garlic Bread ----------------- 115')

print(' 11. Back To Main Menu.')

print('')

while q!=0:

food=int(input('Which dish would you like to have? (Enter the Number): '))

if food == 11:

flag=0

break

print('')

if food > 0 and food < 11:

r=int(input('How much would you like to order?: '))

print('')

summ = summ + (D4[food]*r)

a=D4[food]

L.append(D44[food])

24 | P a g e
L1.append(r)

L2.append(a)

mor=input('Would you like to have more?[y/n]: ')

print('')

if mor =='Y' or mor == 'y':

continue

else:

q=-1

break

else:

print('You entered wrong Item Code')

continue

if flag==0:

t1=t1+1

print('')

print("Okay...")

print('')

continue

elif cui == 5:

print('')

print(59*'-')

print('Item code',6*' ','Items',27*' ','Price')

print(59*'-')

print(' 1. Mexican Rice ------------------------ 110')

print(' 2. Sp. Loaded Nachos -------------------- 150')

print(' 3. Burrito ------------------------------ 120')

print(' 4. Quesadilla --------------------------- 165')

print(' 5. Veg Tacos ---------------------------- 145')

print(' 6. Enchiladas ----------------------------135')

25 | P a g e
print(' 7. Guacamole ---------------------------- 130')

print(' 8. Fajitas ------------------------------ 115')

print(' 9. Carnitas ----------------------------- 120')

print(' 10. Chilaquiles -------------------------- 125')

print(' 11. Back To Main Menu.')

print('')

while q!=0:

food=int(input('Which dish would you like to have? (Enter the Number): '))

if food == 11:

flag=0

break

if food > 0 and food < 11:

print('')

r=int(input('How much would you like to order?: '))

print('')

summ = summ + (D5[food]*r)

a=D5[food]

L.append(D55[food])

L1.append(r)

L2.append(a)

mor=input('Would you like to have more?[y/n]: ')

print('')

if mor =='Y' or mor == 'y':

continue

else:

q=-1

break

else:

print('You entered wrong Item Code')

26 | P a g e
print('')

continue

if flag==0:

t1=t1+1

print("Okay...")

print('')

continue

elif cui == 6:

print('')

print(59*'-')

print('Item code',6*' ','Items',27*' ','Price')

print(59*'-')

print(' 1. Chhole Bhature ----------------------- 120')

print(' 2. Butter Panner ------------------------ 150')

print(' 3. Dal Makhani -------------------------- 100')

print(' 4. Sarson da Saag & Makke di Roti ------- 100')

print(' 5. Aloo De Parathe ---------------------- 130')

print(' 6. Rajma Chawal ------------------------- 140')

print(' 7. Kadhi Pakoda with Rice --------------- 130')

print(' 8. Paneer Tikka ------------------------- 135')

print(' 9. Butter Naan -------------------------- 50')

print(' 10. Butter Roti -------------------------- 50')

print(' 11. Back To Main Menu.')

print('')

while q!=0:

food=int(input('Which dish would you like to have? (Enter the Number): '))

if food == 11:

flag=0

break

27 | P a g e
print('')

if food > 0 and food < 11:

r=int(input('How much would you like to order?: '))

print('')

summ = summ + (D6[food]*r)

a=D6[food]

L.append(D66[food])

L1.append(r)

L2.append(a)

mor=input('Would you like to have more?[y/n]: ')

print('')

if mor =='Y' or mor == 'y':

continue

else:

q=-1

break

else:

print('You entered wrong Item Code')

print('')

continue

if flag==0:

t1=t1+1

print("Okay...")

print('')

continue

elif cui == 7:

print('')

print(59*'-')

print('Item code',6*' ','Items',27*' ','Price')

28 | P a g e
print(59*'-')

print(' 1. Plain Dosa --------------------------- 100')

print(' 2. Masala Dosa -------------------------- 150')

print(' 3. Mysore Dosa -------------------------- 150')

print(' 4. Rawa Dosa ---------------------------- 100')

print(' 5. Idli Sambhar --------------------------120')

print(' 6. Podi Idli ---------------------------- 130')

print(' 7. Medu Vada Sambhar -------------------- 135')

print(' 8. Uttapam ------------------------------ 135')

print(' 9. Masala Uttapam ----------------------- 120')

print(' 10. Sambhar ------------------------------ 70')

print(' 11. Back To Main Menu.')

print('')

while q!=0:

food=int(input('Which dish would you like to have? (Enter the Number): '))

if food == 11:

flag=0

break

print('')

if food > 0 and food < 11:

r=int(input('How much would you like to order?: '))

print('')

summ = summ + (D7[food]*r)

a=D7[food]

L.append(D77[food])

L1.append(r)

L2.append(a)

mor=input('Would you like to have more?[y/n]: ')

print('')

29 | P a g e
if mor =='Y' or mor == 'y':

continue

else:

q=-1

break

else:

print('You entered wrong Item Code')

print('')

continue

if flag==0:

t1=t1+1

print("Okay...")

print('')

continue

elif cui == 8:

print('')

print(59*'-')

print('Item code',6*' ','Items',27*' ','Price')

print(59*'-')

print(' 1. Nutella Cheesecake ------------------- 190')

print(' 2. Biscoff Cheesecake ------------------- 150')

print(' 3. Blueberry Cheesecake ----------------- 170')

print(' 4. Hazelnut Nutella Brownie ------------- 140')

print(' 5. Gulab Jamun -------------------------- 70')

print(' 6. Rabadi Jalebi ------------------------ 120')

print(' 7. Rasgulla ----------------------------- 80')

print(' 8. Payasam ------------------------------ 100')

print(' 9. Tiramisu ----------------------------- 130')

print(' 10. Churros with Chocolate Sauce --------- 160')

30 | P a g e
print(' 11. Back To Main Menu.')

print('')

while q!=0:

food=int(input('Which dish would you like to have? (Enter the Number): '))

if food == 11:

flag=0

break

print('')

if food > 0 and food < 11:

r=int(input('How much would you like to order?: '))

print('')

summ = summ + (D8[food]*r)

a=D8[food]

L.append(D88[food])

L1.append(r)

L2.append(a)

mor=input('Would you like to have more?[y/n]: ')

print('')

if mor =='Y' or mor == 'y':

continue

else:

q=-1

break

else:

print('You entered wrong Item Code')

print('')

continue

if flag==0:

t1=t1+1

31 | P a g e
print("Okay...")

print('')

continue

elif cui == 10:

if L==[]:

print('')

print(10*'-','Thanks For Visiting',13*'-')

print('')

print(15*'-','Exitinggg...',15*'-')

input()

if cui == 10:

flag=0

break

if flag==0:

t1=t1+1

input()

else:

print()

print('You have Ordered some items.')

print('')

ask=input('Do you still want to Exit[y/n]??')

print('')

if ask.lower() == 'y':

print(10*'-','Thanks For Visiting',13*'-')

print('')

print(15*'-','Exitinggg...',15*'-')

if cui == 10:

flag=0

32 | P a g e
break

if flag==0:

t1=t1+1

input()

else:

print('')

input()

continue

else:

if summ==0:

print('Order something to generate bill')

elif summ > 0:

print('')

name=str(input('Please enter your Name:- '))

print('')

d=len(name)

while d==0:

name=str(input('Please enter your Name:- '))

d=len(name)

print('')

else:

mobno=int(input('Please enter your Mobile No.:- '))

print('')

mobno=str(mobno)

z=str(mobno)

e=len(mobno)

while len(mobno) != 10:

print('You entered a wrong Mobile No.')

print('')

33 | P a g e
mobno=int(input('Please enter the correct mobile no.'))

print('')

mobno=str(mobno)

else:

add1=str(input('Please enter your House no. and Colony:- '))

f=len(add1)

print('')

while f==0:

add1=str(input('Please enter your House no. and Colony:- '))

f=len(add1)

print('')

else:

add2=str(input('Please enter your Area and City:- '))

g=len(add2)

print('')

while g==0:

add2=str(input('Please enter your Area and City:- '))

g=len(add2)

print('')

else:

print(33*' ','BILL')

bill=random.randint(10000,99999)

print("|",69*'-',"|")

print('| Bill No.',21*' ',':- ',bill,26*' ','|')

print('| Order is placed by :- ',name.upper(),(31-d)*(' '),'|')

print('| Mobile No. :- ',mobno,(30-e)*(' '),'|')

print('| Order will be delivered at :- ',add1.upper(),(31-f)*(' '),'|')

print('| ',add2.upper(),(31-g)*(' '),'|')

print("|",69*'-',"|")

34 | P a g e
print('| Items Qty Price(Rs) Total Price(Rs) |')

print("|",69*'-',"|")

for i in range(len(L)):

a=(L[i])

b=(L1[i])

c=(L2[i])

if c < 100 :

if b < 10:

print('|',a,' ',b,7*' ',c,11*' ',c*b,7*' ','|')

else :

print('|',a,'',b,7*' ',c,11*' ',c*b,5*' ','|')

else :

if b < 10:

print('|',a,' ',b,7*' ',c,10*' ',c*b,6*' ','|')

else :

print('|',a,'',b,7*' ',c,10*' ',c*b,5*' ','|')

print("|",69*'-',"|")

l=len(str(summ))

print('| Total Rs= ',summ,((8-l)*(' ')),'|')

h=(summ*8)/100

j=len(str(h))

gst=((summ*8)/100)+summ

i=len(str(gst))

summ=float(summ)

print("|",69*'-',"|")

print('| Total Amount is:- Rs ',summ,(24-l)*(' '),'|')

print('| GST(8%) is:- + Rs ',h,(25-j)*(' '),'|')

print('| Your Total Bill with GST(8%) is:- Rs ',gst,(26-i)*(' '),'|')

print("|",69*'-',"|")

35 | P a g e
c=gst*10

d=c%10

f=c//10

if d<5.0:

e=f

n=len(str(e))

else:

e=f+1

n=len(str(e))

print('| Please pay the Rs', e ,'to the delivery boy.',(29-n)*(' '),'|')

print("|",69*'-',"|")

print('')

print(30*' ','Thank You')

print(26*' ','Please visit Again')

input()

break

36 | P a g e
OUTPUT SCREENS
Output 1

37 | P a g e
38 | P a g e
39 | P a g e
40 | P a g e
Output 2

41 | P a g e
42 | P a g e
43 | P a g e
44 | P a g e
Output 3

45 | P a g e
46 | P a g e
47 | P a g e
48 | P a g e
BIBLIOGRAPHY
• COMPUTER SCIENCE WITH PYTHON
• SUMITRA ARORA
• TEXTBOOK OF COMPUTER SCIENCE : FOR CLASS XI
• BY SEEMA BHATNAGAR

49 | P a g e

You might also like