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

Unit 01 Programming Assignment Reworded Compress

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

Unit 01 Programming Assignment Reworded Compress

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

Higher Nationals

Internal verification of assessment decisions – BTEC (RQF)


INTERNAL VERIFICATION – ASSESSMENT DECISIONS
Programme title Higher National Diploma in Computing

Assessor Internal Verifier


Unit-01 Programming Assignment_Reworded
Unit(s)
Design & Implement a GUI based system using a suitable Integrated Development
Assignment title
Environment
Mohamed Sabrin/COL00143342
Student’s name
List which assessment criteria Pass Merit Distinction
the Assessor has awarded.

INTERNAL VERIFIER CHECKLIST

Do the assessment criteria awarded match those


shown in the assignment brief? Y/N
Is the Pass/Merit/Distinction grade awarded
justified by the assessor’s comments on the Y/N
student work?
Has the work been assessed accurately?
Y/N
Is the feedback to the student:
Give details:
Constructive?
Linked to relevant assessment criteria? Y/N Y/N
Identifying opportunities for improved Y/N
performance? Y/N
Agreeing actions?
Does the assessment decision need amending?
Y/N

Assessor signature Date

Internal Verifier signature Date


Programme Leader signature (if required)
Date

1|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Confirm action completed
Remedial action taken

Give details:

Assessor signature Date


Internal Verifier signature
Date

Programme Leader
signature (if required) Date

2|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Higher Nationals - Summative Assignment Feedback Form
Student Name/ID Mohamed Sabrin/COL00143342
Unit Title Unit-01 Programming Assignment_Reworded
Assignment Number 1 Assessor
02/11/2022 Date Received 1st
Submission Date submission
Date Received 2nd
Re-submission Date submission
Assessor Feedback:
LO1. Define basic algorithms to carry out an operation and outline the process of programming an application.
Pass, Merit & Distinction Descripts P1 M1 D1

LO2. Explain the characteristics of procedural, object-orientated and event-driven programming, conduct an an
Integrated Development Environment (IDE).
Pass, Merit & Distinction Descripts P2 M2 D2

LO3. Implement basic algorithms in code using an IDE.

Pass, Merit & Distinction Descripts P3 M3 D3

LO4. Determine the debugging process and explain the importance of a coding standard.

Pass, Merit & Distinction Descripts P4 P5 M4 D4

Grade: Assessor Signature: Date:


Resubmission Feedback:

Grade: Assessor Signature: Date:


Internal Verifier’s Comments:

Signature & Date:

* Please note that grade decisions are provisional. They are only confirmed once internal and external moderation has taken place and
grades decisions have been agreed at the assessment board.
Assignment Feedback
Formative Feedback: Assessor to Student

3|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Action Plan

Summative feedback

Feedback: Student to Assessor

Assessor Date
signature
02/11/2022
Student signature Date

4|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Pearson Higher Nationals in
Computing
Unit 01: Programming
Assignment 01

5|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
General Guidelines

1. A Cover page or title page – You should always attach a title page to your assignment. Use previous
page as your cover sheet and make sure all the details are accurately filled.
2. Attach this brief as the first section of your assignment.
3. All the assignments should be prepared using a word processing software.
4. All the assignments should be printed on A4 sized papers. Use single side printing.
5. Allow 1= for top, bottom , right margins and 1.25= for the left margin of each page.
Word Processing Rules

1. The font size should be 12 point, and should be in the style of Time New Roman.
2. Use 1.5 line spacing. Left justify all paragraphs.
3. Ensure that all the headings are consistent in terms of the font size and font style.
4. Use footer function in the word processor to insert Your Name, Subject, Assignment No, and
Page Number on each page. This is useful if individual sheets become detached for any reason.
5. Use word processing application spell check and grammar check function to help editing your
assignment.
Important Points:

1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the compulsory
information. eg: Figures, tables of comparison etc. Adding text boxes in the body except for the
before mentioned compulsory information will result in rejection of your work.
2. Carefully check the hand in date and the instructions given in the assignment. Late submissions will
not be accepted.
3. Ensure that you give yourself enough time to complete the assignment by the due date.
4. Excuses of any nature will not be accepted for failure to hand in the work on time.
5. You must take responsibility for managing your own time effectively.
6. If you are unable to hand in your assignment on time and have valid reasons such as illness, you
may apply (in writing) for an extension.
7. Failure to achieve at least PASS criteria will result in a REFERRAL grade .
8. Non-submission of work without valid reasons will lead to an automatic RE FERRAL. You will
then be asked to complete an alternative assignment.
9. If you use other people’s work or ideas in your assignment, reference them properly using
HARVARD referencing system to avoid plagiarism. You have to provide both in-text citation and
a reference list.
10. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be
reduced to A REFERRAL or at worst you could be expelled from the course

6|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Student Declaration

I hereby, declare that I know what plagiarism entails, namely to use another’s work and to present
it as my own without attributing the sources in the correct way. I further understand what it means
to copy another’s work.

1. I know that plagiarism is a punishable offence because it constitutes theft.


2. I understand the plagiarism and copying policy of the Edexcel UK.
3. I know what the consequences will be if I plagiaries or copy another’s work in any of the
assignments for this program.
4. I declare therefore that all work presented by me for every aspects of my program, will be my own,
and where I have made use of another’s work, I will attribute the source in the correct way.
5. I acknowledge that the attachment of this document signed or not, constitutes a binding agreement
between myself and Edexcel UK.
6. I understand that my assignment will not be considered as submitted if this document is not attached
to the attached.

E171701@esoft.academy 02/11/2022
Student’s Signature: Date:
(Provide E-mail ID) (Provide Submission Date)

7|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Higher National Diploma in Computing
Assignment Brief
Student Name /ID Number Mohamed Sabrin/COL00143342

Unit Number and Title Unit 01: Programming


Academic Year 2022/23

Unit Tutor

Assignment Title Design &Implement a GUI based system using a suitable


Integrated Development Environment
Issue Date

Submission Date

IV Name & Date

Submission Format

This submission will have 3 components


Written Report
This submission is in the form of an individual written report. This should be written in a concise, formal
business style using single spacing and font size 12. You are required to make use of headings, paragraphs
and subsections as appropriate, and all work must be supported with research and referenced using the Harvard
referencing system. Please also provide a bibliography using the Harvard referencing system. (The
recommended word count is 1,500–2,000 words for the report excluding annexures)

Implemented System (Software)


The student should submit a GUI based system developed using an IDE. The system should connect with a
backend database and should have at least 5 different forms and suitable functionality including insert, edit
and delete of main entities and transaction processing.

Presentation
With the submitted system student should do a presentation to demonstrate the system that was developed.
Time allocated is 10 to 15 min. Student may use 5 to 10 PowerPoint slides while doing the presentation, but
live demonstration of the system is required. Evaluator will also check the ability to modify and debug the
system using the IDE.

Unit Learning Outcomes:

LO1. Define basic algorithms to carry out an operation and outline the process of
programming an application.

LO2. Explain the characteristics of procedural, object-orientated and event-driven


programming, conduct an analysis of a suitable Integrated Development Environment
(IDE).

LO3. Implement basic algorithms in code using an IDE.

LO4. Determine the debugging process and explain the importance of a coding standard

8|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Assignment Brief and Guidance:

Activity 1

The Fibonacci numbers are the numbers in the following integer sequence.
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ……..
In mathematical terms, the sequence Fn of Fibonacci numbers is defined by the recurrence
relation.
Fn = F n-1 + F n-2

Factorial of a non-negative integer, is multiplication of all integers smaller than or equal to n.


For example, factorial of 6 is 6*5*4*3*2*1 which is 720.
n! = n * (n - 1) * …….. 1

Define what an algorithm is and outline the characteristics of a good algorithm. Write the algorithms to
display the Fibonacci series and the factorial value for a given number using Pseudo code. Determine the
steps involved in the process of writing and executing a program.
Take a sample number and dry run the above two algorithms. Show the outputs at the end of each
iteration and the final output. Examine what Big-O notation is and explain its role in evaluating
efficiencies of algorithms. Write the Python program code for the above two algorithms and critically
evaluate their efficiencies using Big-O notation.

Activity 2

2.1 Explain what is meant by a Programming Paradigm and the main characteristics of Procedural,
Object oriented and Event-driven paradigms and the relationships among them. Write small snippets of
code as example for the above three programming paradigms using a suitable programming language(s).
you also need to critically evaluate the code samples that you have given above in relation to their
structure and the unique characteristics.

Activity 3 and Activity 4 are based on the following Scenario.

Ayubo Drive is the transport arm of Ayubo Leisure (Pvt) Ltd, an emerging travel & tour company in Sri
Lanka. It owns a fleet of vehicles ranging from cars, SUVs to vans.

The vehicles that it owns are hired or rented with or without a driver. The tariffs are based on the vehicle
type. Some of the vehicle types that it operates are, small car, sedan car, SVUs, Jeep (WD), 7-seater van
and Commuter van. New vehicle types are to be added in the future.

Vehicle rent and hire options are described below.

Rent (With or without driver) – For each type of vehicle rates are given per day, per week and per month.
Rate for a driver also given per day. Depending on the rent period the total rent amount needs to be
calculated. For example: if a vehicle is rented for 10 days with a driver, total amount to be calculated as
follows:

Total rent = weeklyRent x 1 + dailyRent x 3 + dailyDriverCost x 10

9|Page
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Hire (with driver only) – These are based on packages such as airport drop, airport pickup, 100km per
day package, 200km per day package etc. Standard rates are defined for a package type of a vehicle
typeif that is applicable for that type of vehicle.For each package maximum km limit and maximum
number of hours arealso defined. Extra km rate is also defined which is applicable if they run beyond the
allocated km limit for the tour. For day tours if they exceed max hour limit,a waiting charge is applicable
for extra hours. Driver overnight rate and vehicle night park rate also defined which is applicable for
each night when the vehicle is hired for 2 or more days.

Activity 3

Function 1: Rent calculation.


Return the total rent_value when vehicle_no, rented_date, return_date, with_driver parameters are sent
in. with_driver parameter is set to true or false depending whether the vehicle is rented with or without
driver.

Function 2: Day tour - hire calculation.


Calculate total hire_value when vehicle_no, package_type, start_time, end_time, start_km_reading,
end_km_reading parameters are sent in. Should return base_hire_charge, waiting_charge and
extra_km_charge as output parameters.

Function 3: Long tour - hire calculation.


Calculate total hire_value when vehicle_no, package_type, start_date, end_date, start_km_reading,
end_km_reading parameters are sent in. Should return base_hire_charge, overnight_stay_charge and
extra_km_charge as output parameters.

Write suable algorithms for vehicle tariff calculation for rents and hires. Ideally 3 functions should be
developed for this purpose as above. Use the visual studio IDE (using C#.net) to Implement the above
algorithms and design the suitable database structure for keeping the tariffs for vehicle types and
different packages which must be used for implementing the above functions.
Analyze the features of an Integrated Development Environment (IDE) and explain how those features
help in application development. Evaluate the use of the Visual StudioIDE for your application
development contrasted with not using an IDE.

Activity 4

Design and build a small system to calculate vehicle hire amounts and record them in a database for
customer billing and management reporting forAyubo drive. This includes the completing the database
design started in 3.2 and implementing one or more GUIs for vehicle, vehicle type, and package
add/edit/delete functions. It essentially requires an interface for hire calculation and recording function
described above. Generating customer reports and customer invoices are not required for this course
work.

2 Explain debugging process and the features available in Visual studio IDE for debugging your code more
easily. Evaluate how you used the debugging process to develop more secure, robust application with
examples.

Outline the coding standards you have used in your application development. Critically evaluate why a
coding standard is necessary for the team as well as for the individual.

10 | P a g e
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
11 | P a g e
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No. 01

0 0
Grading Rubric

Grading Criteria Achieved Feedback

LO1 Define basic algorithms to carry out an operation


and outline the process of programming an application.

P1Provide a definition of what an algorithm is and outline the


process in building an application.

M1Determine the steps taken from writing code to execution.

D1 Evaluate the implementation of an algorithm in a suitable


language. Evaluate the relationship between the written
algorithm and the code variant

LO2 Explain the characteristics of procedural,


objectorientated and event-driven programming, conduct
an analysis of a suitable Integrated Development
Environment (IDE)

P2Give explanations of what procedural, objectorientated,


and eventdriven paradigms are; their characteristics and the
relationship between them.

M2 Compare and contrast the procedural, object orientated


and event driven paradigms used in given source code of an
application

D2Critically evaluate the source code of an application which


implements the programming paradigms, in terms of the code
structure and characteristics.

LO3Implement basic algorithms in code using an IDE.

12
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
P3Write a program that implements an algorithm using an
IDE.

M3Use the IDE to manage the development process of the


program.

D3Evaluate the use of an IDE for development of


applications contrasted with not using an IDE.

LO4 Determine the debugging process and explain the


importance of a coding standard

P4Explain the debugging process and explain the debugging


facilities available in the IDE.

P5Outline the coding standard you have used in your code.

M4Evaluate how the debugging process can be used to help


develop more secure, robust applications.

D4 Critically evaluate why a coding standard is necessary in a


team as well as for the individual.

13
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Acknowledgment

First of all, I would like to thank Our batch coordinators for guiding us through the lessons. And also,
I thank ESOFT Metro Campus for this valuable opportunity.

Mohamed Sabrin

14
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Contents

Acknowledgement…………………………………………………………………………...14
1.1 Define what an algorithm is and outline the characteristics of a good algorithm.
Develop algorithms for linear search and binary search using Pseudo code………………..19
1.2 Describe the steps involved in the process of writing and executing a program. Take an
arrayof 10 or more elements and dry run the above two algorithms. Show the outputs at
the end of each iteration and the final output……………………..………………………..29
1.3 Define what Big-O notation is and explain its role in evaluating efficiencies of
algorithms. Write the Python program code for the above two algorithms and critically
evaluate their efficiencies using Big-O notation……………………………………………34
2.1 Define what is meant by a Programming Paradigm. Explain the main characteristics of
Procedural, Object oriented and Event-driven paradigms and the relationships among
them…………………………………………………………………………………………39
2.2 Write small snippets of code as example for the above three programming paradigms
using a suitable programming language(s)…………………………………………………42
2.3 Critically evaluate the code samples that you have above in relation to their structure
and the unique characteristics………………………………………………………………47
In the second example this codded example for Object oriented programming paradigm using
the programming language C#. The Object-oriented programming is based on the concept
of "objects"…………………………………………………………………………………50
Activity 03………………………………………………………………………………….53
3.1 Design suable algorithms for vehicle tariff calculation for rents and hires. Ideally 3
functions should be developed for this purpose as follows………………………….....53
3.2 Implement the above algorithms using visual studio IDE (using C#.net) and design
the suitable database structure for keeping the tariffs for vehicle types and different
packages which must be used for implementing the above functions……………………..56
3.3 Analyze the features of an Integrated Development Environment (IDE) and explain
how those features help in application development. Evaluate the use of the Visual Studio
IDE for your application development contrasted with not using an IDE…………………72

15
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
4.1 Design and build a small system to calculate vehicle hire amounts and record them in
adatabase for customer billing and management reporting for Ayubo drive. This includes the
completing the database design started in 3.2 and implementing one or more GUIs for
vehicle, vehicle type, and package add/edit/delete functions. It essentially requires an
interface for hirecalculation and recording function described above. Generating customer
reports and customer invoices are not required for this course work………………………77
4.2 What is debugging an application? Explain the features available in Visual studio
IDE for debugging your code more easily. Evaluate how you used the debugging process
to develop more secure, robust application with examples………………………………..110
4.3 Explain the coding standards you have used in your application development. Critically
evaluate why a coding standard is necessary for the team as well as for the individual…...115
List of references…………………………………………………………………………...119

Figure of contents
Figure 1 How Linear search works…………………………………………………………25
Figure 2 How Binary search works…………………………………………………………27
Figure 3 Output for the C++ code…………………………………………………………..43
Figure 4 Output for the C# code…………………………………………………………….45
Figure 5 Output for the python paradigm…………………………………………………...46
Figure 6 Flowchart for rent calculation……………………………………………………..53
Figure 7 Flow chart for day tour hire calculation…………………………………………...54
Figure 8 Flow chart for long tour hire calculation………………………………………….55
Figure 9 output for rent calculation code….………………………………………………..57
Figure 10 Output for day tour calculation…………………………………………………..59
Figure 11 Output for long tour calculation…………………………………………………61
Figure 12 Ayubo Drive Database Structure………………………………………………62
Figure 13 insert values for package registration……………………………………………62
Figure 14 Before update…………………………………………………………………….64
Figure 15 After update……………………………………………………………………...64
Figure 16 The Before Delete Package Table……………………………………………….66
Figure 17 The after delete package table………………………………………………….66

16
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Figure 18 Insert values to vehicle registration……………………………………………..67
Figure 19 Before update……………………………………………………………………68
Figure 20 After update……………………………………………………………………...69
Figure 21 Before delete……………………………………………………………………..70
Figure 22 After delete………………………………………………………………………70
Figure 23 Example visual studio IDE………………………………………………………72
Figure 24 Login page for ayubo drive………………………………………………………77
Figure 25 Display exit button……………………………………………………………….78
Figure 26 Login as admin…………………………………………………………………...82
Figure 27 Main menu……………………………………………………………………….83
Figure 28 Logout button……………………………………………………………………83
Figure 29 Insert values for vehicle registration…………………………………………….85
Figure 30 Update seat capacity……………………………………………………………..86
Figure 31 After update seat capacity………………………………………………………..87
Figure 32 Delete value………………………………………………………………………88
Figure 33 Insert driver details……………………………………………………………….89
Figure 34 Update over night charge…………………………………………………………90
Figure 35 Delete driver id…………………………………………………………………...91
Figure 36 Insert package detailes……………………………………………………………92
Figure 37 Update package type……………………………………………………………93
Figure 38 Delete package id…………………………………………………………………94
Figure 39 Login as receptionist………………………………………………………………95
Figure 40 Main menu for receptionist……………………………………………………….95
Figure 41 Insert rent values………………………………………………………………….98
Figure 42 Update return date………………………………………………………………...99
Figure 43 Delete rent details………………………………………………………………..100
Figure 44 Insert details for day tour hire calculation…...........................................................101
Figure 45 Update package type………………………………………………………………102
Figure 46 Delete detail from day tour hire calculation……………………………………..104
Figure 47 Insert detail for long tour hire calculation………………………………………105

17
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Figure 48 Update vehicle type……………………………………………………………107
Figure 49 Delete details in long tour hire calculation……………………………………...109
Figure 50 The debugging menu…………………………………………………………….110
Figure 51 Break point in code………………………………………………………………111
Figure 52 Run to click in visual studio……………………………………………………..111
Figure 53 Examine exceptions………………………………………………………………112
Figure 54 Error list…………………………………………………………………………..114
Figure 55 Exception…………………………………………………………………………114

18
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Activity 01

1.1 Define what an algorithm is and outline the characteristics of a good algorithm.
Develop algorithms for linear search and binary search using Pseudo code.

The algorithm is a process or formula for solving the problems. It is based on conducting a
sequence of specified actions. It is commonly used for data processing, calculation, and other
related computer and mathematical operations. In computer programming, by using algorithms
we can create functions. Those functions can serve as small programs that can be mention by
a larger program.
When we think of an algorithm is in the most common way it is not just in regards to computer
algorithms are in everywhere. Such as a recipe for making a food is an algorithm. The
technique we use to solve the addition or long division problems are an algorithm andthe
process of folding a shirt or a pair of pants are an also algorithm. Even our morning routine
could be considered an algorithm (Techtarget.com, 2022).
An example for algorithm to calculate its average and then display the result.

Begin

Input a,b,c,d,e
Total = a+b+c+d+e
Average = total/5
Print average
End

An algorithm is represent or show by flow chart and pseudo code.

19
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Flow chart

A flowchart is a pictorial representation of an algorithm, which used to show the steps in a


procedure in a more understandable manner. A flowchart purpose is to provide the people
witha common language or a reference point when dealing with the project or process.

We can use simple symbols and arrows to describe relationships in a flow chart. In a
flowchart, the Start and end of programs are represented by an oval shape. An input/output is
represented by the parallelogram, An a process is represented by a rectangle shape, a decision
is represented by a diamond shape and the flow line is represented by an arrow
(Techtarget.com, 2022).Flow chart Symbols

Start/End

Process

Input /Output

20
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Decision

Flow line

Pseudocode

The pseudocode is an informal method of a programming that is does not required any strict
programming language syntax or fundamental technology. It can be used for creating an
outline or a rough draft of program. Pseudocode is sometimes used as a detailed step by step
in the process of developing a program. The pseudocode is allows to designers or lead the
programmers to show the design in a great details and also provides programmers a detailed
design for the next procedure of writing code in a specific programming language.
(economictimes.indiatimes.com, 2022).

21
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Example for Flowchart and pseudocode

start

marks = 45

Yes
if marks > =75 Grade = <Distinction=

Yes
if marks > =55 Grade = <Credit=

Yes
if marks > =35 Grade = <Pass=

Grade = <Fail=

Print Grade

End

22
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Begin

Marks= 45
If Marks > = 75 Then
Grade = <Distinction= Else If Mark > = 55 Then
Grade ==Credit=
Else If Mark> = 35 Then
Grade = <Pass=
Else
Grade = <Fail=
End If
End If
End If
Print Grade

The characteristics of a good algorithm

There are few important characteristics of good algorithm.

Finiteness-: an algorithm is should be terminate without any number of steps and each step
mustbe finish in finite amount of time.
Definiteness-: the procedure of algorithm is should be clearly and exactly define and there
shouldnot be any uncertainty.
Input-: an algorithm is must have zero or more but must be limitation number of inputs.

Output -: an algorithm should have one or more defined outputs and should match the
desiredoutput.
Effectiveness-: an algorithm is should be effective. Effective means that procedure should
bemention as most important and should be executing in limitation time

23
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Uniqueness-: each step taken in the algorithm should give a definite result. The results should
not change by any means.
Feasibility-: the algorithm should be possible and practicable in real life. It should not be
abstractor imaginary.
Precision-: a good algorithm must have some outlined steps. The steps should be exact
enoughand not variable (Owlgen.com, 2022).

Liner search and binary search

Liner search
The linear search is a very simple and basic search algorithm. In Linear search we search an
element or value in a provide array by traversing the array from the starting until the desired
element or value is found (studytonight.com, 2022).

24
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Example:-

Searching for Item 17 in the following array

Figure 1 How Linear search works

25
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Algorithm for Linear Search using Pseudo code.

BEGIN LINEARSAERCH

lastIndex = ARRAYLENGTH(array) `

FoundIt = false

Index = 1

Read Find

WHILE FoundIt = false AND Index <= lastIndex

IF array(index) = Find THEN

FoundIt = true

ENDIF

index= Index + 1

ENDWHILE

IF FoundIt = true THEN

DISPLAY "Found", Find

ELSE

DISPLAY Find, "Not found"

ENDIF

END LINEARSAERCH

26
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Binary search
Rather than searching individual elements sequentially a sorted array can be more efficiently
searched using binary search. We compare the middle element and continue the search on
upper or lower half or the array based on the value is greater or smaller than the middle. This
continues until the value is found at the middle or until we confirm the value is not present
(Geeksforgeeks, 2022).

Example -:

Searching for Item 29 in the following array

Figure 2 How Binary search works

27
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Algorithm for Binary Search using Pseudo code.

FUNCTION binarySearch(list, value)


left = 0
right = LEN(list) - 1
WHILE left ≤ right mid
= floor((right+left)/2) IF

list[mid] = value THEN


return Found

IF value < list[mid] THEN


right = mid-1 ELSE
left = mid+1
RETURN Not Found
END FUNCTION

28
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
1.2 Describe the steps involved in the process of writing and executing a program. Take
an array of 10 or more elements and dry run the above two algorithms. Show the outputs
at the end of each iteration and the final output.

A program is a set of step-by-step instructions that directs the computer to do the tasks we
wantit to do and produce the results we want (homepage.cs.uri.edu, 2022)
The most important steps in writing and executing a computer program would be like this

• Defining the Problem


• Design the Program
• Code the Program
• Test the Program
• Document and Maintain

Defining the Problem


The problem needs to identify at the beginning of the process, as it needs to be clearly
understood. If the problem is found clearly then the programmers are capable of working
towards an objective. Identifying the problem includes identifying the user and system
requirements in order to provide the exact solution for the problem.

Design the Program


The program need to be designed at the next stage. The outline of the program should be built
up in order for the programmers to get a clear idea of the concept. Concepts like pseudocodes
and flowcharts are used to show up the program.

Code the Program


After the program is designed, it is time to code the program using a appropriate programming
language. It is the programmer’s duty to select a programming language according to the
necessity. Once the language is chosen the program is coded using a suitable IDE.

29
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Test the Program
The next step is to check the coded program in order to detect any errors in it and to ensure
that it provides us with the expected outcome. Testing is considered as an critical part in the
creating of a program. Several techniques are used to do a testing according to the
circumstance.

Document and Maintain


The documentation should be ongoing from the very beginning because it is needed for those
complicated with program now and future. And also the program is finalized the user
documentation for the commercial use to an operator the documentation for the people who
run the computer system and the programmer documentation for the programmers charged
with maintenance.

Dry run

The dry run is can be test or check performed on a program. Run to check the performance or
stability of a particular program before it is made available (computerhope.com, 2022). The
dry run conducted by using a trace table. Trace table is track the values of variables as they
change throughout the program. This is useful when a program is not producing the desired
result (101computing.com, 2022)

30
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Dry run for linear search
Array=[2,5,9,12,33,47,24,50,67,3]

Array Input Index Array[Index] Input= Array[Index] Result

[2,5,9,12,33,47,24,50,67,3] 2 0 2 True Found

[2,5,9,12,33,47,24,50,67,3] 33 0 2 False
1 5 False Found

2 9 False
3 12 False
4 33 True
[2,5,9,12,33,47,24,50,67,3] 50 0 2 False
1 5 False Found

2 9 False
3 12 False

4 33 False

5 47 False
6 24 False

31
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
7 50 True

[2,5,9,12,33,47,24,50,67,3] 99 0 2 False
1 5 False

2 9 False
3 12 False
Not Found
4 33 False
5 47 False

6 24 False
7 50 False
8 67 False
9 3 False

32
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Dry run for binary search
Array= [2,9,14,22,38,29,46,58,66,90]

List Value Left Right Mid Result

[2,9,14,22,38,29,46,58,66,90] 14 0 9 4
0 3 1
2 3 2 Found
[2,9,14,22,38,29,46,58,66,90] 29 0 5 Found

[2,9,14,22,38,39,46,58,66,90] 90 0 09 5

8 09 09

8 09 9

09 09 09 Found

33
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
1.3 Define what Big-O notation is and explain its role in evaluating
efficiencies of algorithms. Write the Python program code for the above two
algorithms and criticallyevaluate their efficiencies using Big-O notation.

Big o notation is simplified analyses of an algorithm's efficiency. Big o notation is an


algorithm complexity in term of input size and it gives the way to efficiency or code from
the machine is runout we don't care of the start the machine rather we assign in the basic
computer step of the code. We can use big o to analyze both time and space. There are
couple ways to look at the algorithm efficiencies. That we can divide as worst-case,
bestcase and average-case.
The best case is here we look at the most favorable situation and check the efficiency of the
algorithm. For an example sorting a nearly sported array. The worst case is here we look at
most adverse situation and analyze the efficiency of the algorithm. For example sorting an
array arranged in descending order to ascending order and the average case is average of
the best case and the worst case scenarios (Geekforgeeks.com, 2022).

The following is a list of common types of notation and their names


Notation Names

O(1) Constant

O(N) Linear

O(N2) Quadratic

O(LogN) Logarithmic

34
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Constant O(1)

This is called constant. O(1) is describes an algorithm that will be always execute in the
equal time regardless of the size of the input data set. The algorithm does a constant number
of operations independent on the input (rob-bell.net, 2009).

Linear O(N)

This is called has linear O(N) is a describes the algorithm is which performance will be
raisethe linearly and in the direct proportion to the size of the input data set. The best
example for linear time complexity is the linear search where an element is searched
through an arraysequentially. The time depends on the amount of elements in the array (rob-
bell.net, 2009).

Quadratic O(N²)
This is call quadratic. The running time of the algorithm -. So it’s N multiplied by N. An a
common sorting algorithms like bubble sort, selection sort and insertion sort takes O(N²).
This is common with algorithms that involve nested iterations over the data set. Deeper
nested iterations will result in O(N3), O(N4)and etc. (rob-bell.net, 2009).

Logarithmic O(LogN)
This is called logarithmic. The running time of the algorithm is decreased by some factor
with each step. A very simple and small example of this type is an algorithm that keeps
dividing the input by two. A binary search algorithm follows the same rule (rob-bell.net,
2009).

35
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Python code for linear search

arr = [] num = int(input("enter number of

elements: ")) for i in range(0, 10):

arr.insert(i, int(input("enter element: ")))

print(arr)

# searching element

item = int(input("enter element to be searched:


")) position = 0 while position <= num:
if item == arr[position]:
print("element is at ", position + 1, "
position") break elif item not in arr:
print("element not
found") break position
+= 1

36
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
4

In linear search a particular element is searched through an array in a sequential order. If


the provided array contains a few elements, finding the required. Element is easy, but if the
arraycontains more elements, then it will appear a bit tough as it will consist more and more
time. Therefore this can be considered as an time complexity notation where the
consummation depends on the on the size of the input.

37
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Python code for binary search
def binary_sort(sorted_list, length, key):
start = 0 end = length-1 while start
<= end:
mid = int((start + end)/2)
if key == sorted_list[mid]:
print("\nEntered number %d is present at position: %d" % (key, mid))
return -1 elif key < sorted_list[mid]:
end = mid - 1 elif
key > sorted_list[mid]:
start = mid + 1
print("\nElement not found!")
return -1
lst = []
size = int(input("Enter size of list: \t"))
for n in range(size):
numbers = int(input("Enter any number: \t"))
lst.append(numbers)
lst.sort()
print('\n\nThe list will be sorted, the sorted list is:', lst) x
= int(input("\nEnter the number to search: "))
binary_sort(lst, size, x)

In the python code a While search is being found which needs to be run until the define
condition is met. Once the condition is met the code starts to execute the next set of
instructions. Once it is done a if condition is being given as to check whether the predefined
condition is met. According to this it is seen that the time consumed depend on the list of
elements available. But in Binary Search, the elements are divided into 2, thus it will reduce
the time. There for as the notation for efficiency it could be stated as O(Log n).

38
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Activity 02

2.1 Define what is meant by a Programming Paradigm. Explain the main


characteristics of Procedural, Object oriented and Event-driven paradigms and the
relationships among them.

The programming paradigm is the way of a thinking about or approaching the problems
and also programming paradigm is an important style of a build the structure and elements
of the program. The styles and capabilities of the programming languages are describe by
their paradigms (Quora.com, 2022).

Procedural
Procedural programming is a list of instructions to telling a Computer Step-by- Step. In an
order of how to performance the first Code to the Second and So forth which may contain
loops (Prezi.com, 2011).
The main characteristics of procedural paradigm

The first most important paradigm is puts much importance on Things to be done. And also
the large problems are divided into a smaller programs known as a functions. The most of
the functions are share global data and data move openly around on the system from
function to functions. The functions are transfer data from one form to another form.Also
top down approach in the program designing. And also finally appropriate and effective
techniques are unavailable to secure data of a function from others(onlineclassnotes.com,
2013).
Object oriented
Object orientated is the programmer examines the problem in an old fashioned way. It does
not write and algorithm but instead breaks down the problem of elements into classes the
process used to create an object is called instantiation (Prezi.com, 2011).

39
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
The main characteristics of object oriented paradigm

The most important and the first object oriented paradigm is encapsulation an encapsulation
is a capturing data and keeping it safely and securely from the outside interfaces. And also
inheritance is the process by which a class can be derived from a base class with all the
features of base class and some of its own. This increases code reusability. The variety is
the ability to the exist in various forms. For example an operator can be over loaded so as
to the add a two integer numbers and add two floats. And also finally abstraction is the
ability to the represent the data at a very conceptual level without any details. They are
characteristics of the object oriented paradigm (careerride.com, 2016).

Event-driven paradigms
Event driven paradigm which is determined by events or user actions. An example we can
get clicking on a mouse. It can only be used using a graphical user interface. Which is one
of its main features. It can interact with any hardware that is attached to a computer and it
is not a Complex program to use. A program can easily be developed and all of the
properties used in the program are all independent so they can save altogether saving the
programmer time and effort saving them separately (Prezi.com, 2011).

The main characteristics of event driven paradigm

In event driven programming time driven is a characteristics of paradigm it is a code that


runs on a time trigger. Time driven can be a specific code that runs on a specific time.
And also event handlers is a type of functions or method that run a specific action when a
specific event is triggered. The trigger function in event driven programming are afunctions
that is decide what code to run when there are a specific event occurs. which areused to
select which event handler to use for the event when there is specific event occurred finally
events is include mouse, keyboard and user interface, which events need to be triggered in
the program in order to happen, that mean user have to interacts with an object in the
program (ukessays.com, 2022).

40
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Constant O(1)

This is called constant. O(1) is describes an algorithm that will be always execute in the
equal time regardless of the size of the input data set. The algorithm does a constant number
of operations independent on the input (rob-bell.net, 2009).

Linear O(N)

This is called has linear O(N) is a describes the algorithm is which performance will be
raisethe linearly and in the direct proportion to the size of the input data set. The best
example for linear time complexity is the linear search where an element is searched
through an arraysequentially. The time depends on the amount of elements in the array (rob-
bell.net, 2009).

Quadratic O(N²)
This is call quadratic. The running time of the algorithm -. So it’s N multiplied by N. An a
common sorting algorithms like bubble sort, selection sort and insertion sort takes O(N²).
This is common with algorithms that involve nested iterations over the data set. Deeper
nested iterations will result in O(N3), O(N4)and etc. (rob-bell.net, 2009).

Logarithmic O(LogN)
This is called logarithmic. The running time of the algorithm is decreased by some factor
with each step. A very simple and small example of this type is an algorithm that keeps
dividing the input by two. A binary search algorithm follows the same rule (rob-bell.net,
2009).

35
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Python code for linear search

arr = [] num = int(input("enter number of

elements: ")) for i in range(0, 10):

arr.insert(i, int(input("enter element: ")))

print(arr)

# searching element

item = int(input("enter element to be searched:


")) position = 0 while position <= num:
if item == arr[position]:
print("element is at ", position + 1, "
position") break elif item not in arr:
print("element not
found") break position
+= 1

0 0
36
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
In linear search a particular element is searched through an array in a sequential order. If
the provided array contains a few elements, finding the required. Element is easy, but if the
arraycontains more elements, then it will appear a bit tough as it will consist more and more
time. Therefore this can be considered as an time complexity notation where the
consummation depends on the on the size of the input.

37
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

Python code for binary search


def binary_sort(sorted_list, length, key):
start = 0 end = length-1 while start
<= end:
mid = int((start + end)/2)
0 0
if key == sorted_list[mid]:
print("\nEntered number %d is present at position: %d" % (key, mid))
return -1 elif key < sorted_list[mid]:
end = mid - 1 elif
key > sorted_list[mid]:
start = mid + 1
print("\nElement not found!")
return -1
lst = []
size = int(input("Enter size of list: \t"))
for n in range(size):
numbers = int(input("Enter any number: \t"))
lst.append(numbers)
lst.sort()
print('\n\nThe list will be sorted, the sorted list is:', lst) x
= int(input("\nEnter the number to search: "))
binary_sort(lst, size, x)

In the python code a While search is being found which needs to be run until the define
condition is met. Once the condition is met the code starts to execute the next set of
instructions. Once it is done a if condition is being given as to check whether the predefined
condition is met. According to this it is seen that the time consumed depend on the list of
elements available. But in Binary Search, the elements are divided into 2, thus it will reduce
the time. There for as the notation for efficiency it could be stated as O(Log n).

38
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Activity 02

2.1 Define what is meant by a Programming Paradigm. Explain the main


characteristics of Procedural, Object oriented and Event-driven paradigms and the
relationships among them.

The programming paradigm is the way of a thinking about or approaching the problems
and also programming paradigm is an important style of a build the structure and elements
of the program. The styles and capabilities of the programming languages are describe by
their paradigms (Quora.com, 2022).

Procedural
Procedural programming is a list of instructions to telling a Computer Step-by- Step. In an
order of how to performance the first Code to the Second and So forth which may contain
loops (Prezi.com, 2011).
The main characteristics of procedural paradigm

The first most important paradigm is puts much importance on Things to be done. And also
the large problems are divided into a smaller programs known as a functions. The most of
the functions are share global data and data move openly around on the system from
function to functions. The functions are transfer data from one form to another form.Also
top down approach in the program designing. And also finally appropriate and effective
techniques are unavailable to secure data of a function from others(onlineclassnotes.com,
2013).
Object oriented
Object orientated is the programmer examines the problem in an old fashioned way. It does
not write and algorithm but instead breaks down the problem of elements into classes the
process used to create an object is called instantiation (Prezi.com, 2011).

39
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
The main characteristics of object oriented paradigm

The most important and the first object oriented paradigm is encapsulation an encapsulation
is a capturing data and keeping it safely and securely from the outside interfaces. And also
inheritance is the process by which a class can be derived from a base class with all the
features of base class and some of its own. This increases code reusability. The variety is
the ability to the exist in various forms. For example an operator can be over loaded so as
to the add a two integer numbers and add two floats. And also finally abstraction is the
ability to the represent the data at a very conceptual level without any details. They are
characteristics of the object oriented paradigm (careerride.com, 2016).

Event-driven paradigms
Event driven paradigm which is determined by events or user actions. An example we can
get clicking on a mouse. It can only be used using a graphical user interface. Which is one
of its main features. It can interact with any hardware that is attached to a computer and it
is not a Complex program to use. A program can easily be developed and all of the
properties used in the program are all independent so they can save altogether saving the
programmer time and effort saving them separately (Prezi.com, 2011).

The main characteristics of event driven paradigm

In event driven programming time driven is a characteristics of paradigm it is a code that


runs on a time trigger. Time driven can be a specific code that runs on a specific time.
And also event handlers is a type of functions or method that run a specific action when a
specific event is triggered. The trigger function in event driven programming are afunctions
that is decide what code to run when there are a specific event occurs. which areused to
select which event handler to use for the event when there is specific event occurred finally
events is include mouse, keyboard and user interface, which events need to be triggered in
the program in order to happen, that mean user have to interacts with an object in the
program (ukessays.com, 2022).

40
T.M..Sabrin/COL00143342 Unit-01 Programming
0 0 Assignment No.01
Relationship among Procedural, Event Driven and Object Oriented Programming.
The procedural paradigm is we looking at the process needed to solve a problem. There a
definite process and the flow of the data is highly predictable.

Also the object oriented is we observing at the actors and the creating a objects to
representthose actors. For an example and an emulator for a movie line queue. We have
got people the line and a ticket booth. So we build objects around those actors.

The event driven is a used when we have impulsive the moments that need to be taken care
of. We can add some event handlers to the both procedural and the object oriented
paradigms. So as a standalone, it’s not a complete paradigm. For the instance the procedural
report writer a could have an a event to handle out of the papers or the object oriented
program could be have an a event to the handle. when lightning hits a person standing line
for the movie. Events are more a feature to add to other stuff.

Is there a no really relationship between procedural and object oriented. Because it is based
on the problem to be solved we pick a paradigm which allows to solve it most efficiently
(quora.com, 2022).

0 0
41
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

2.2 Write small snippets of code as example for the above three
programmingparadigms using a suitable programming language(s).

Procedural programming paradigm


In this C++ program the user is asked to enter three numbers and also this program is finds
out the largest number of the among three numbers entered by the user and the displays it
with a proper message.

#include "stdafx.h"
#include <iostream>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])0 0


{
float n1, n2, n3;
float n1, n2, n3;

cout << "Enter three numbers: ";


cin >> n1 >> n2 >> n3;

if(n1 >= n2 && n1 >= n3)


{
cout << "Largest number: " << n1;
}
if(n2 >= n1 && n2 >= n3)
{
cout << "Largest number: " << n2;
}
if(n3 >= n1 && n3 >= n2) {
cout << "Largest number: " << n3;
}
system("pause");
return 0;
}

42
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

Output for the above C++ code

0 0
Figure 3 Output for the C++ code

Object oriented programming paradigm

A simple calculator is created using C# console applications where the sum of the two
numbers entered by the user is displayed. And the difference between the two numbers
entered will be displayed below.

namespace consoleApplication5
{
public class oopprogram
{
public class simplecalculator
{
public double add(double number1, double number2)
{
return number1 + number2;
}

43
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
public double minus(double number1, double number2)
{
return number1 - number2;
}
}
static void Main(string[] args)

{
Console.Write("Type your first Number: "); double x =
double.Parse(Console.ReadLine());
Console.Write("Type your second Number: "); double y

= double.Parse(Console.ReadLine()); simplecalculator
operation = new simplecalculator();
Console.Write("The addition of " + x + " and " + y + " is : ");
Console.WriteLine(operation.add(x, y));
Console.Write("The difference between " + x + " and " + y + " is : ");
Console.WriteLine(operation.minus(x, y));
Console.ReadLine();
}
}

44
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Output for the above C# code

Figure 4 Output for the C# code

0 0
45
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

Event driven programming paradigm (Mouse click event)

import turtle turtle.setup(400,500) wn =


turtle.Screen() wn.title("How to handle mouse clicks
on the window!") wn.bgcolor("lightgreen") tess =
turtle.Turtle() tess.color("blue") tess.pensize(3)
tess.shape("turtle") def h1(x, y): tess.goto(x, y)
wn.onclick(h1) # Wire up a click on the window.
wn.mainloop()

Output for the above python code

0 0
Figure 5 Output for the python paradigm

46
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

2.3 Critically evaluate the code samples that you have above in relation to
theirstructure and the unique characteristics.
Procedural Programming using C++

#include "stdafx.h"
#include <iostream>

using namespace std;

0 0
int _tmain(int argc, _TCHAR* argv[])
{
float n1, n2, n3;

cout << "Enter three numbers: ";


cin >> n1 >> n2 >> n3;

if(n1 >= n2 && n1 >= n3)


{
cout << "Largest number: " << n1;
}
if(n2 >= n1 && n2 >= n3)
{
cout << "Largest number: " << n2;
}
if(n3 >= n1 && n3 >= n2) {
cout << "Largest number: " << n3;
}
system("pause");
return 0;
}

47
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
In the first example this codded example Procedural programming paradigm using the
programming language C++. When referring the structure of this code the header files need
to be predefined. Then the input and out needs to be declared using cin and cout variables.
Cout is used to define the phrase to be displayed. The phrases written in front couts is
displayed in the console window when the program is being run. Once the output is
declaredthe numbers entered by the user is declared. 3 if conditions are being used to
choose between the 3 numbers as to find out which one is the largest number.
The user can able to enter the values of his choice. The declared variable n1, n2 and n3 is
being used here.

The uniqueness of this language is that it uses shift operators(<<) for its coding. After the
steps are instructed to the computer it needs to be instructed to the computer the to pause
theprogram in order to see the output, if system(<pause=) is not included the user will not
be able to see the output.

Object Oriented Paradigm using C#

using System;
using System.Collections.Generic;
using System.Linq; using
System.Text;
using System.Threading.Tasks;

namespace consoleApplication5
{
public class oopprogram
{
public class simplecalculator
{
public double add(double number1, double number2)

48
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
{
return number1 + number2;
}

public double minus(double number1, double number2)


{
return number1 - number2;
}
}
static void Main(string[] args)
{
Console.Write("Type your first Number: ");
double x = double.Parse(Console.ReadLine());
Console.Write("Type your second Number: "); double y
= double.Parse(Console.ReadLine()); simplecalculator
operation = new simplecalculator();
Console.Write("The addition of " + x + " and " + y + " is : ");
Console.WriteLine(operation.add(x, y));
Console.Write("The difference between " + x + " and " + y + " is : ");
Console.WriteLine(operation.minus(x, y));
Console.ReadLine();
}
}

49
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
In the second example this codded example for Object oriented programming paradigm
usingthe programming language C#. The Object-oriented programming is based on the
concept of "objects". In this object-oriented programs, we can see that the code is well
structured, and

the programmer makes it easy. However there are two main classes <oopprogram>
and
<simplecalculate> and we have the <main> method under the <oopprogram> class.
The <total> function under the <simplecalculate> class. The one of the unique features of
objectoriented programming is that it has classes and objects. In this code almost all have
public access specifiers.
The Classes, Object and Methods
Classes

Object

Method

0 0
Event driven Paradigm using python (Mouse click event)

50
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

import turtle turtle.setup(400,500) wn = turtle.Screen()


wn.title("How to handle mouse clicks on the window!")
wn.bgcolor("lightgreen")
tess = turtle.Turtle()
tess.color("blue") tess.pensize(3)
tess.shape("triangle")

def h1(x, y):


tess.goto(x, y)

wn.onclick(h1) # Wire up a click on the window.


wn.mainloop()

In our last example python language is0being used


0 to code the event driven program. I used
mouse click event on this program. An a mouse click event is for an each widget it’s
possible to bind python functions and methods to an event. If the defined event occurs in
thewidget, the handler function is called with event object describing the event. Every time
we move the mouse in the message widget, the position of the mouse pointer will be printed
(python-course.eu, 2022).

Here the coded program actually uses python turtle, which is used in drawings in python.
A mouse event is a bit different from a keypress event because its handler needs two
parameters to receive x, y coordinate information telling us where the mouse was when the
event occurred.

51
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

This turtle method allows us to move the turtle to an absolute coordinate position. I named
the handler function h1 it like this.

0 0
So what this program does is move the turtle and draw a line to wherever the mouse is
clicked and this program is very is to use. An a mouse click event is very useful and import
event.

52
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Activity 03

3.1 Design suable algorithms for vehicle tariff calculation for rents and
hires. Ideally 3functions should be developed for this purpose as follows:

Rent calculation

Figure 6 Flowchart for rent calculation

53
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Day tour hire calculation

Figure 7 Flow chart for day tour hire calculation

0 0
54
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01
Long tour hire calculation

0 0
Figure 8 Flow chart for long tour hire calculation

55
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

3.2 Implement the above algorithms using visual studio IDE (using C#.net)
and designthe suitable database structure for keeping the tariffs for vehicle types
and different packages which must be used for implementing the above functions.

The IDE for above algorithm using C#

Rent calculation code

private void button2_Click(object sender, EventArgs e)


{
double Check = 0;
int charges = 0;
0 0
DateTime date1 = dateTimePicker1.Value;
DateTime date2 = dateTimePicker2.Value;
int numberDays = (int)date2.Subtract(date1).TotalDays + 1;
int month = numberDays / 30; int week = (numberDays %
30) / 7; int day = (numberDays % 30) % 7;

if (numberDays < 7)
{
charges = day * 2000; //2000 per
Day charges
}
if (numberDays >= 7 || numberDays < 30)
{
charges = week * 8500 + day * 2000; //8500 per
week charges
}
if (numberDays >= 30)
{
charges = month * 32000 + week * 8500 + day * 2000; //32000 per
month charges
}

56
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
if (checkBox1.Checked)
{
Check = 1500 * numberDays; // per
Driver Charge } if (checkBox2.Checked)
{
Check = 0;
}

double total = Check + charges;


textBox5.Text = total.ToString();

Output for above rent calculation code

Figure 9 output for rent calculation code

57
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Day tour hire calculation code
private void button1_Click_1(object sender, EventArgs e)
{ int
waiting = 0;
int Extra = 0;

DateTime Time1 = dateTimePicker1.Value;


DateTime Time2 = dateTimePicker2.Value;
int TimeAmount = (int)Time2.Subtract(Time1).TotalHours + 1;
int start = int.Parse(textBox2.Text); int end =
int.Parse(textBox3.Text); int totalKM = end - start;
int BHC, maximumkm, priceperkm,THC;

maximumkm = int.Parse(textBox9.Text);
priceperkm = int.Parse(textBox10.Text);

BHC = maximumkm * priceperkm ;


textBox6.Text = BHC.ToString();
if (totalKM > 100)
{
Extra = (totalKM - 100) * 100; // 100 per Extra KM Charges
}

if (TimeAmount > 3 || TimeAmount <= 12) // maximum 3 hours is


time
allowed
{
waiting = (3 - TimeAmount) * 150;

58
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
}

THC = BHC + waiting + Extra;


textBox7.Text = THC.ToString(); ;
textBox4.Text = waiting.ToString();
textBox5.Text =
Extra.ToString(); textBox7.Text
= THC.ToString();

Output for above day tour calculation code

Figure 10 Output for day tour calculation

Long tour hire calculation code

private void button1_Click(object sender, EventArgs e)


{
string vehicleno, customername, packagetype,vehicaletype;
0 0
int maximumkm, pricepercharge,customercontactno,driverovernightcharge,
BHC; int overnight = 0; int parking = 600;
int EKM = 0;

59
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

DateTime date1 = dateTimePicker1.Value;


DateTime date2 = dateTimePicker2.Value;
int numberDay = (int)date2.Subtract(date1).TotalDays + 1;
int start = int.Parse(textBox10.Text); int end =
int.Parse(textBox11.Text); int TK = end - start;

if (TK > 400)


{
EKM = (TK - 400) * 100; //100 Per Extra KM CHARGE
}

driverovernightcharge = int.Parse(textBox7.Text);
if (numberDay > 2)
{
overnight = (numberDay - 2) * 500 + parking+ driverovernightcharge;
}
customername = textBox12.Text;
customercontactno = int.Parse(textBox13.Text);
packagetype = textBox9.Text; vehicaletype =
comboBox1.Text;
0 0
vehicleno = textBox1.Text;
maximumkm = int.Parse(textBox3.Text);
pricepercharge = int.Parse(textBox8.Text);
driverovernightcharge = int.Parse(textBox7.Text);
if (numberDay > 2)
{
driverovernightcharge = (numberDay - 2) * 250;
}
BHC = maximumkm * pricepercharge + driverovernightcharge;
textBox5.Text = BHC.ToString(); double total = overnight
+ EKM + BHC; textBox2.Text = EKM.ToString();
textBox6.Text = overnight.ToString(); textBox4.Text =
total.ToString();
}

60
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

Output for above long tour hire calculation

0 0
Figure 11 Output for long tour calculation

Database structure for keeping the tariffs for vehicle types and different packages.

The system is supported by two databases. Where login database stores the login
information and the Login activity log. The vehicle tariff and packages details are two
tables have been created under this database. While the database stores the vehicle details
and package details respectively and it is able to easily insert, update and delete the data
within the database.

61
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Figure 12 Ayubo Drive Database Structure

Insert values for package registration

Figure 13 insert values for package registration

62
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Message box for package registration

Insert code for package registration

private void button1_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "insert into packageregistration values('" +
textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text
+ "','"+textBox5.Text+"')";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Inserted successfully!");

63
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Update value for package registration
Before update package price

Figure 14 Before update

After update package price

Figure 15 After update


0 0
64
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

Message box for update

Coding for update values

private void button2_Click(object sender, EventArgs e)


{
con.Open(); 0 0
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "update packageregistration set packagetype='"
textBox2.Text + "',packageprice= '" + textBox3.Text + "',maximumkm='" +textBox4.Text
+ "',maximumhours='"+textBox5.Text+"' where packageid= '" + textBox1.Text + "'";
cmd.ExecuteNonQuery(); con.Close(); data_view();
MessageBox.Show("Upadted Successfully!");
}

65
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

Delete package id
Before delete

0 0
Figure 16 The Before Delete Package Table

After delete

Figure 17 The after delete package table

66
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
Delete Message box

Code for delete

private void button3_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "delete from packageregistration where packageid='"
+textBox1.Text + "'"; cmd.ExecuteNonQuery(); con.Close(); data_view();
MessageBox.Show("Deleted Successfully!");
}

Insert values for vehicle registration

Figure 18 Insert values to vehicle registration

67
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

this.textBox2.PasswordChar =
this.checkBox1.Checked ? char.MinValue : '●';
}
private void timer1_Tick(object sender, EventArgs e)
{
DateTime datetime = DateTime.Now;
this.label4.Text = datetime.ToString();
}

private void textBox1_TextChanged(object sender, EventArgs e)


{

}
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Dispose();

private void button3_Click_1(object sender, EventArgs e)


{
this.Dispose();
}

}
}
}

81
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Login as a admin

Figure 26 Login as admin

If I login as admin it display main menu like this. There are three functions available in
mainmenu.

82
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Figure 27 Main menu

Main menu form logout button

Figure 28 Logout button

Coding for above three function

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data; using
System.Drawing; using
System.Linq; using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

83
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

namespace Ayubo_Leisure
{
public partial class Form8 : Form
{
public Form8()
{
InitializeComponent();
}

private void Form8_Load(object sender, EventArgs e)


{

}
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
Form3 fr = new Form3();
fr.ShowDialog();
}
private void button5_Click(object sender, EventArgs e)
{
this.Hide();
Form6 fr = new Form6();
fr.ShowDialog();
}
private void button2_Click(object sender, EventArgs e)
{
this.Hide();
Form1 fr = new Form1();
fr.ShowDialog();

84
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

private void button3_Click(object sender, EventArgs e)


{
this.Hide();
Form9 fr = new Form9();
fr.ShowDialog();
}
private void logoutToolStripMenuItem_Click(object sender, EventArgs e)

{
this.Hide();
Form1 fr = new Form1();
fr.ShowDialog();
}
}
}

Vehicle registration

Insert values for vehicle registration

Figure 29 Insert values for vehicle registration

85
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Code for insert

private void button1_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "insert into vehicalregistration values('" + textBox1.Text + "','" +
comboBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text+ "')";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Vehical Registration Inserted successfully!");
}

Update values vehicle registration

Before update

Figure 30 Update seat capacity

86
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

After update

Figure 31 After update seat capacity

Code for update

private void button3_Click_1(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "update vehicalregistration set vehicaltype='" + comboBox1.Text +
"',overnightparkingrate= '" + textBox2.Text + "',seatcapacity='" +textBox3.Text + "'
where vehicalid= '"+textBox1.Text+"'";
cmd.ExecuteNonQuery(); con.Close(); data_view();
MessageBox.Show("Upadted Successfully!");
}

87
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Delete value in vehicle registration

Figure 32 Delete value


Code for delete

private void button2_Click_1(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "delete from vehicalregistration where Vehicalid='" +
textBox1.Text + "'";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Deleted Successfully!");
}

88
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Driver registration

Insert values for driver registration

Figure 33 Insert driver details

Code for insert

private void button1_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "insert into driverregistration values('" + textBox1.Text + "','"
+textBox2.Text+ "','" + textBox3.Text + "','" + textBox4.Text +"')";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Inserted successfully!");
}

89
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Update values for driver registration

Figure 34 Update over night charge

Code for update

private void button3_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text; cmd.CommandText =
"update driverregistration set drivername='"
+textBox2.Text + "',overnightcharge= '" + textBox3.Text + "',hourlywaitingcharge='" +
textBox4.Text + "' where driverid= '" + textBox1.Text + "'";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Upadted Successfully!");
}

90
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Delete value for driver registration

Figure 35 Delete driver id

Code for delete

private void button5_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "delete from driverregistration where driverid='" +textBox1.Text +
"'";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Deleted Successfully!");
}

91
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Package registration

Insert values for package registration

Figure 36 Insert package detailes

Code for insert


private void button1_Click(object sender, EventArgs e)
{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "insert into packageregistration values('" + textBox1.Text + "','" +
textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text
+ "','"+textBox5.Text+"')";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Inserted successfully!");
}

92
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Update values for package registration

Figure 37 Update package type

Code for update

private void button2_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "update packageregistration set packagetype='" + textBox2.Text +
"',packageprice= '" + textBox3.Text + "',maximumkm='" + textBox4.Text
+ "',maximumhours='"+textBox5.Text+"' where packageid= '" + textBox1.Text + "'";
cmd.ExecuteNonQuery(); con.Close(); data_view();
MessageBox.Show("Upadted Successfully!");
}

93
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Delete values for package registration

Figure 38 Delete package id

Code for delete

private void button3_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "delete from packageregistration where packageid='" +
textBox1.Text + "'";
cmd.ExecuteNonQuery();
con.Close();
data_view();
MessageBox.Show("Deleted Successfully!");
}

94
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Login as a receptionist

Figure 39 Login as receptionist

If I login as receptionist it display main menu like this. There are three functions
available inmain menu and they are.

Figure 40 Main menu for receptionist

95
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Code for main menu

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data; using
System.Drawing; using
System.Linq; using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Ayubo_Leisure
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
this.Hide();
Form4 fr = new Form4();
fr.ShowDialog();

}
private void button3_Click(object sender, EventArgs e)
{
this.Hide();
Form5 fr = new Form5();
fr.ShowDialog();

96
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

}
private void button4_Click(object sender, EventArgs e)
{
this.Hide();
Form7 fr = new Form7();
fr.ShowDialog();
}
private void button5_Click(object sender, EventArgs e)
{

}
private void button1_Click_1(object sender, EventArgs e)
{
this.Hide();
Form1 fr = new Form1();
fr.ShowDialog();
}

private void logoutToolStripMenuItem_Click(object sender, EventArgs e)


{
this.Hide();
Form1 fr = new Form1();
fr.ShowDialog();
}
}}

97
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Insert values for rent calculation

Figure 41 Insert rent values

Code for insert

private void button1_Click_1(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "insert into rentcalculation values('" + textBox1.Text +"','" +
dateTimePicker1.Text+ "','" + dateTimePicker2.Text + "','" +
checkBox1.Text+"','"+checkBox2.Text+"','"+textBox5.Text+"')";
cmd.ExecuteNonQuery(); con.Close();
data_view();
MessageBox.Show(" Inserted successfully!");
}

98
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Updates values

Figure 42 Update return date

Code for update

private void button3_Click_1(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "update rentcalculation set renteddate='" + dateTimePicker1.Text+
"',returndate= '" +dateTimePicker2.Text+"',withdriver='"
+checkBox1.Text+ "',withoutdriver='" + checkBox2.Text+
"',totalrentvalue='"+textBox5.Text+"' where vehicleno= '" + textBox1.Text + "'";
cmd.ExecuteNonQuery();

con.Close();
data_view();
MessageBox.Show("Upadted Successfully!");
}

99
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Delete values

Figure 43 Delete rent details

Code for delete

private void button5_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "delete from rentcalculation where vehicleno='" +textBox1.Text +
"'";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Deleted Successfully!");
}

100
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Day tour hire calculation

Insert values for hire calculation

Figure 44 Insert details for day tour hire calculation


Code for insert

private void button2_Click_1(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "insert into daytourhighercalculation values('" + textBox1.Text +
"','" + textBox2.Text + "','" + dateTimePicker1.Text + "','" + dateTimePicker2.Text + "','"
+ textBox3.Text + "','" + textBox4.Text + "','" + textBox5.Text
+ "','" + textBox6.Text + "','" + textBox7.Text + "','" + textBox8.Text
+ "','" + textBox9.Text + "','" + textBox10.Text + "')";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Inserted successfully!");
}

101
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Update values for day tour hire calculation

Figure 45 Update package type

Code for update

private void button3_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "update daytourhighercalculation set packagetype='" +
textBox2.Text + "',starttime= '" + dateTimePicker1.Text + "',endtime='" +
dateTimePicker2.Text + "'
,startkm='"+textBox3.Text+"',endkm='"+textBox4.Text+"',maximumkm='"+textBox5.Tex
t+"',p
riceperkm='"+textBox6.Text+"',waitingcharge='"+textBox7.Text+"',extrakmcharge='"+tex
tBox8.Text+"',basehirecharge='"+textBox9.Text+"',totalhirecharge='"+textBox10.Text+"'
where vehicleno= '" + textBox1.Text + "'";

102
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Upadted Successfully!");
}

103
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Delete value in day tour hire calculation

Figure 46 Delete detail from day tour hire calculation

Code for delete

private void button4_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "delete from daytourhighercalculation where Vehicleno='"
+ textBox1.Text + "'";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Deleted Successfully!");
}

104
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Long tour hire calculation

Insert detail for long tour hire calculation

Figure 47 Insert detail for long tour hire calculation

Code for insert

private void button2_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "insert into longtourhirecalculation values('" + textBox12.Text +
"','" + textBox13.Text +
"','"+textBox1.Text+"','"+comboBox1.Text+"','"+textBox9.Text+"','" +
dateTimePicker1.Text + "','" + dateTimePicker2.Text + "','" + textBox3.Text + "','" +
textBox8.Text + "','" + textBox10.Text + "','" + textBox11.Text + "','" + textBox7.Text +
"','" + textBox4.Text + "','" + textBox5.Text + "','" + textBox6.Text

105
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

+ "','"+textBox2.Text+"')";
cmd.ExecuteNonQuery();
con.Close(); data_view();
MessageBox.Show("Inserted successfully!");
}

106
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Update values for long tour hire calculation

Figure 48 Update vehicle type

Code for update

private void button5_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "update longtourhirecalculation set customercontactno='"
+textBox13.Text+ "',vehicleno= '" +textBox1.Text+ "',vehicletype='" + comboBox1.Text
+"',packagetype='" + textBox9.Text + "',startdate='" +dateTimePicker1.Text +
"',enddate= '" +dateTimePicker2.Text+
"',maximumkm='"+textBox3.Text+"',pricepercharge='"+textBox8.Text+"',startkm='"+tex
Box
10.Text+"',endkm='"+textBox11.Text+"',driverovernightcharge='"+textBox7.Text+"',total

107
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

charge='"+textBox4.Text+"',basehirecharge='"+textBox5.Text+"',overnightstaycharge='"
+textBox6.Text+"',extrakmcharge='"+textBox2.Text+"' where
customername='"+textBox12+"'";
cmd.ExecuteNonQuery(); con.Close(); data_view();
MessageBox.Show("Upadted Successfully!");
}

108
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Delete value for long tour hire calculation

Figure 49 Delete details in long tour hire calculation

Code for delete

private void button6_Click(object sender, EventArgs e)


{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "delete from longtourhirecalculation wherecustomername='" +
textBox12.Text + "'";
cmd.ExecuteNonQuery(); con.Close(); data_view();
MessageBox.Show("Deleted Successfully!");
}

109
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

4.2 What is debugging an application? Explain the features available in


Visual studioIDE for debugging your code more easily. Evaluate how you used the
debugging process to develop more secure, robust application with examples.

The debugging application is the routine the process of a locating and the removing
computer program bugs, errors and abnormalities. Which is methodically handled by the
software programmers through debugging tools and also debugging checks detects and
corrects errors or a bugs to the allow proper program operation according to the set of
specifications and alsothe debugging is also known as debug.
And also developing the software programs are undergo heavy testing ,updating
,troubleshooting and the maintenance and also usually the software include errors and the
bugs. Which are the routinely removed. In this debugging process complete software
programs are regularly compiled and the executed to the identify and rectify the issues. The
large software programs which contain millions of the source code lines are divided into
the small components. For an efficiency each component is the debugged separately at first
followed by the program as a whole (economictimes.indiatimes.com, 2018).
The features available in integrated development environment for debuggingDebugging
menu
The top level debug menu has the most common debug commands

Figure 50 The debugging menu

110
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Break point

The break point is an intentional stop marked in the code of the application where execution
pauses for the debugging. This is allows the programmer to inspect the internal state of the
application at that point.

Figure 51 Break point in code

Run to click

The run to click is a related to setting a temporary breakpoint and also run to click isa
near for getting the around quickly within a visible the region of app code.

Figure 52 Run to click in visual studio

111
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Examine an exception

The exception is an indication of an error state that is occurs to while a program is being
executed. We can be should provide the handlers that respond to the most important
exceptions.

Figure 53 Examine exceptions

Configuration manager have been used to choose the method of debugging of with ion the
various phases in the process. The active solution platform is not and the configuration
mode can be choose from debug and release.

112
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Evaluate how you used the debugging process to develop more secure, robust
applicationwith examples.

In my case I have used the debugging process broadly in developing my applications,


whichis fairly significant. It kind of has done a main role in identifying and spotting
many faultsand errors in my application code helping me to correct that faults and errors.
However, almost many of my applications developed literally are so huge in context of
code and complexity. The application is created in this valuation is an example of it in a
generally mainway.

Creating these types of applications confidently basically had generally lot of fault and
errors in it, but however the debugging features are in the Visual studio IDE usually has
done a absolutely great role in the resolving them one of the basically main waysI mostly
got very out of fault and errors was, when the Visual studio IDE identifies faults andpresent
the errors with its place.so it very easy and useful to solve problems. However particularly
many logical errors will be automatically identified by the visual studio IDE. But the
Breakpoints feature for all intents and purposes has actually helped me in identifying those
conceptual errors in my code. The figure shows the way I used the breakpoints feature to
debug my application, which specifically is quite significant. However, when debugging
the application it is possible to identify the errors and faults, which have been created in
the system. When these errors are identified beforehand, therefore it is possible for use to
make sol.

113
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Using the process of debugging it was able to identify the errors with in they stem easier to
identify the errors before hand. In case we have missed to declare a variable it will be shown
from the debug and will assist us in redirecting and understanding as what the error is.

Figure 54 Error list

The most common message that is possible to get from Visual studio id some sort of
exception which prevents the program from interruption in the end user.

Figure 55 Exception

114
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

4.3 Explain the coding standards you have used in your application development.
Critically evaluate why a coding standard is necessary for the team as well as forthe
individual.

Coding stands are can be accepted as a collection of procedure for a specific programming
language that determines the programming style, procedure methods for various aspects
of the program written in that language. There are some critical attributes of software
development (webguruz.in 2017).
Coding stands for ensure that all developments write the code in a particular meaningful
language write according to the guidelines specified. This makes the code easy to
understand and provides counting in the code.

One of most essential factors in software system is the consisting of the coding standard.
Thisis because of it positively affecting the quality of the system, during the time the use
of software system, we need to ensure that the guideline do not deny each other. The source
code that use the stand should be also be harmony with the standard. The completed source
code should introduce as if a single developer has written the code. .

There are some benefits of coding standard and they are

Increase efficiency
Reduce complicity
Minimize the risk of project failure
Maintains should be easy
Correction of bugs
A comprehensive view

Coding standard I have used in my application

In developing this application, I have used of several coding standards and I have used a
good file structure, use of comments, indentation patterns, and variable declaration.
However, these coding standards are very useful and important to my Ayubo drive
application.

115
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Use of comments

A comment is a programmer readable explanation in the source code of a computer


program. So they are added with the purpose of making the source code easier for humans
to understand and are generally ignored by compilers and interpreters. However, I have
used these using of comments to describe what calculations take place

Renaming of the tables

When making databases the renaming of the tables has been done according to the name
ofthe form.

Variable declaration

The variables are declared at the beginning in each if the code in order to specify the type
of the data type that can be entered I the particular field. All the varaibles are to be declared
were used with the full name as it would be very easy for me to understand.

116
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Indentation patterns

Indentation is one of the most important aspects in any programming domain. Indentation
is the placement of text farther to the right, or left, to separate it from surrounding text.
Indent style, in programming a convention governing the indentation of blocks of code to
convey theprogram structure.

Coding standrad for team

When developing application in a team, its highly important to have coding standards.For
example Coding guidelines also help software developing teams to write consistent code

117
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

which is easy to read and understand for all team members. Establishing such guidelines
can be problematic if it is done wrong but it will be very beneficial for the whole team if it
is donethe right way. The codeing standards in a team help to reduce the risk of project
falier and also the following codeing standets help to developer for the maintent of the
software .

The coding standers in a team help to minimize the risk of project failure and reduce
complicity. Another important benefit for a team is to identify the ongoing process of fellow
team members who may be developing a different part of the same process of the
application. If a proper coding standard were maintained within a team, it would be able to
switch between teams as anytime as everyone is familiar with the process of development.
When coding standards are followed it is to make changes to the code whenever needed.
Actually, coding standards are very important and useful for a team.Coding standard for
individual
Coding standard is very highly important when we work as individuals. It is not the way in
which a team develops a program, an individual would develop it. For a individual
following coding standards helps to get a clear idea of what is happening within the code
and also in case the developing of the code it’s be stop the completion of the program code
be given to a another individual it is also possible. However, another important benefit if
that it is possible to transfer the project to another programmer it can be done without a
mess, as it iseasy to understand the coding if a single pattern is followed throughout the
program. When developing as an individual if coding standards are followed it will help
the individual to adapt to changes where he can go with the modern methods. If proper
coding standards are it is possible to make changes to the system in a way that anyone
could understand. Finally,the coding standard are very important for individual.

118
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

List of references
www.whatis.techtarget.com. 2022. What is algorithm. [ONLINE] Available at:
https://whatis.techtarget.com/definition/algorithm. [Accessed 15 July 2022].

www.owlgen.com. 2022. Characteristic of good algorithm. [ONLINE] Available at:


https://www.owlgen.com/question/what-is-an-algorithm-explain-characteristics-of-
analgorithm-with-the-help-of-an-example. [Accessed 15 July 2022].

whatis.techtarget.com. 2022. What is flow chart [ONLINE] Available at:


https://whatis.techtarget.com/definition/flowchart. [Accessed 16 July 2022].

economictimes.indiatimes.com. 2020.pseudocode. [ONLINE] Available at:


https://economictimes.indiatimes.com/definition/pseudocode. [Accessed 16 July 2022].

www.studytonight.com. 2022. linear search. [ONLINE] Available at:


https://www.studytonight.com/data-structures/linear-search-algorithm. [Accessed 18
July2022].

www.geeksforgeeks.org. 2022. binary search. [ONLINE] Available at:


https://www.geeksforgeeks.org/binary-search/. [Accessed 18 July 2022].

www.computerhope.com. 2022. Dry run. [ONLINE] Available at:


https://www.computerhope.com/jargon/d/dryrun.htm. [Accessed 19 July 2022].

rob-bell.net. 2022. Big notions notation. [ONLINE] Available at: https://rob-


bell.net/2009/06/a-beginners-guide-to-big-o-notation/. [Accessed 19 July 2022].

prezi.com. 2022. Programming paradigm. [ONLINE] Available at:


https://prezi.com/xbpqj5wekzgf/procedural-object-oriented-and-event-driven-
programmingparadigms/. [Accessed 20 July 2022].

119
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

www.quora.com. 2022. what is paradigm. [ONLINE] Available at:


https://www.quora.com/What-is-the-meaning-of-a-programming-paradigm. [Accessed 20
July 2022].

www.quora.com. 2022. relationship for the paradigm. [ONLINE] Available at:


https://www.quora.com/What-are-the-relationships-between-programming-
proceduralobject-oriented-and-even-driven-paradigms. [Accessed 20 July 2022].

www.onlineclassnotes.com. 2022. characteristics of procedural paradigm. [ONLINE]


Available.at:https://www.onlineclassnotes.com/2013/08/what-are-main-
characteristicsof.html. [Accessed 25 July 2022].

www.careerride.com. 2022. characteristics of object oriented paradigm. [ONLINE]


Availableat: https://www.careerride.com/oops-characteristics.aspx. [Accessed 26 July
2022].

www.ukessays.com. 2022. characteristics of event driven paradigm. [ONLINE] Available


at:https://www.ukessays.com/essays/computer-science/eventdriven-programming-
features6167.php. [Accessed 27 July 2022].

www.veracode.com. 2022.Ide. [ONLINE] Available at:


https://www.veracode.com/security/integrated-development-environments. [Accessed 31
July 2022].

msdn.microsoft.com.2022.debugger. [ONLINE]Availableat
https://msdn.microsoft.com/en-us/library/sc65sadd.aspx. [Accessed 31 July 2022].

economictimes.indiatimes.com.2022. debugging.[ONLINE] Available at:


https://economictimes.indiatimes.com/definition/debugging. [Accessed 2 August 2022].

120
T.M..Sabrin/COL00143342 Unit-01 Programming Assignment No.01

0 0
lOMoA RcP S D| 16719580

Gantt chart

0 0

You might also like