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

Computer Science - Introduction to Problem Solving

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

Computer Science - Introduction to Problem Solving

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

Class XI

Computational Thinking
Graphic Novel
Acknowledgement

It takes a good team and commitment to create


an interesting piece of literary work. This
graphic novel is the collective effort of a team
of educators with varied subject backgrounds.

TRAINING AND IDEATION


Sandeep Sethi
Director Education M.S.M.S.II.Museum Trust

ADVISORY BOARD
Ms. Deepti Malhotra Ms. R. Umamaheswari
Mr. Surender Pal Sachdeva
(Vice Principal) (In-charge Senior
(Principal)
Secondary)

Ms. Meenakumari Damre Ms. Avni Shah


Illustrations & (Department Coordinator Art & Craft, PRT -
Creative inputs PGT - Fine Arts) Art and Craft

Ms. Tulika Saha


Content & Language Editor (TGT - English )

Script, Dialogue
Technical support Ms. Niharika Hariramani
& (TGT - Computer Science)
Project Coordinator

2
PREFACE

This Graphic Novel explains different problem

solving techniques related to computers using

imaginary characters, interesting pictures and

exciting dialogues. The main purpose of

creating this graphic novel is to provide

students with content in the form of text and

images to draw inferences and amalgamate

information. Teachers can use this novel as an

effective teaching tool.

3
INDEX
Topic Page No.
1. Learning Outcomes 5
2. Story Board 6
3. Characters 7
4. Story – Part 1 – Flowcharts and Algorithm 8
(Sequential)
5. Assignment 1 22
6. Assignment 2 23
7. Story – Part 2 – Selection and iteration construct 24
8. Assignment 3 31
9. Story – Part 3 – Pseudocode 32
10. Assignment 4 34
11. Assignment 5 35
12. Bibliography 36
13. Acknowledgement 37
14. Disclaimer 38

To access the comic book and additional


interactive digital content, download the DIKSHA
app from Google Play Store on your Android
smartphone or tablet and scan the QR code using
DIKSHA app.

4
Learning Outcomes

After reading this chapter students will be able to:

• write algorithms for solving daily life problems as well as


for problems based on various academic subjects being
taught to them in the school.
• make flow charts based on the algorithms framed.
• use suitable programming language to code the
algorithm.
• demonstrate debugging skills.
• solve problems by using Algorithms and Flowcharts.
• apply problem solving cycle to varied problems.
• practice developing sequential, branching and looping
programming.
• appreciate the significance of Algorithms and Flowcharts
in learning processes.

5
Story Board

6
Characters

Mohit is a 16 year old boy studying in


class 11 who has a good understanding
of the subject ‘computer science’

Aisha is a 16 year old girl studying in


class 11 and she wants to understand
computer science

Mrs. Nisha is Aisha’s mother.

Ms. Sakshi is a teacher in the school

7
PART 1 – FLOWCHARTS AND ALGORITHM
(SEQUENTIAL)
One morning, in school, Mohit notices Aisha looking glum and worried. They were
about to take a Computer Science exam.

Hi Aisha! You look


worried. What is the
matter?

Hi Mohit! Actually I have been


trying to memorize computer
algorithms, but I am unable to
do so.

Understand the logic? What


Seriously? You don’t do you mean?
memorize a computer
program, buddy. You
should understand the
logic and apply it.

8
Bell rings and the students
disperse for their examination.

Students please be seated,


we will begin the exam
shortly.

During the exam, Aisha is perplexed by several questions. Mohit, on the other
hand, is relaxed.
9
Mohit catches up with Aisha as they leave the room…..

Not so good. I couldn’t


recollect a few steps and lost
Hey Aisha, how was
the whole connection. I guess
your exam ?
what you were saying earlier
was right. Memorizing
algorithms is not the right way
to learn programming.

What are friends for? I will come to


your place tomorrow and will help
6 PM is good
you build up your logic. I can also
for me. See
enjoy my favorite sandwiches made
you then.
by your mother.

Ha Ha ! Sure, that
would be great!
Tomorrow 6 PM ?

10
The next day, Mohit meets Aisha at her place.

Hi Mohit! How are Hi Aisha!


you? Good.

Yes, with respect


Mohit, you to Computer
were saying Science. They can
something be solved
about logically and not
approaching memorized.
problems
differently,
weren’t
you?

Can you Let’s go to


show me your desk.
how?

11
Really? What is
Aisha, you can the problem
actually mediate solving cycle?
a problem using
the problem
solving cycle.

Basically, it is a four step


process which includes
analysis, development,
coding and testing.

First, we identify a major problem area and


Okay
look for the possible solution.

12
For instance maintaining
a library register in a
school can be quite Interesting!
tedious. So,
maintaining the
school library
register, is an example
of identification of a
problem.

The next phase is to


develop a step by step
process to solve the Okay
problem. This is called
the algorithm or the
flow of the program.

Really? This
Let’s consider the same
must be the
example of maintaining
most crucial
the library register. Who
step.
can issue books? What
is the date of issue and
date of return? All these
questions are resolved
in this step via an
algorithm

13
Exactly! Once the
algorithm is finalized,
we use a suitable
programming
language to code it.
This is the third phase.
The Programming
So, programming
language can be
languages come into the
anything. In the Library
picture here!
Maintenance program,
we could use Visual
Basic or Python.

Yes. Now, the


final phase is to
execute or run
the program and
find the bugs and
remove them
Bugs? Oh! I hate those
creepy crawly things! But
how did they get into your
program?

Ha, ha! Let us take the


same example of the Right!
Library system. A book
which has already been
issued, should not be
displayed in the available
book list. Correct?

If the issued book is being


displayed in the available Now I get
list, then, that is the bug in it.
the program. The debugging
of the program is included in
this stage.

14
1. Debugging is a cyclic
process. Removal of
bugs continues till all
the bugs are eliminated.
That sounds
2. After removal of all simple – almost
the bugs , we install our as if we could
program for live usage. apply it to our
That ends our cycle. daily life!

Absolutely! Actually,
Algorithms are nothing
but a set of simple
instructions
represented in an
orderly manner.

I don’t quite
understand.

15
Let me give you an example Programming in our
from our lives. day to day life!? Are
you sure?

Yes. The concept of


programming has been
created from step by step
processes in everyday
activities. Suppose you were
to make a cup of coffee, what
steps would you follow?

16
Oh my, what a difficult
question! (laughing)
Let me see
-Boil water in a kettle.
-Add coffee to a cup.
-Add boiling water,
-Add milk and then Add
sugar.
And your coffee is ready!

17
And that my friend, Really!? You are
is an algorithm! joking, right?

That is very easy. But how


Yes, that is an algorithm to do I use it in computer
make a cup of coffee. programs?

…..
1) Start
2) Get two numbers N1
and N2
For computers, we need to add a 3) S  N1 +N2
‘Start’ and ‘Stop’ step to each
algorithm. 4) Print the result
Let’s take a simple mathematical 5) Stop.
program to add two numbers. The
steps in the algorithm will be …
18
That is Now, lets
great! take the
It all coffee
makes example
sense and apply
now! it to
flowcharts.
…which are a graphical
representation of the
logic!

FLOWCHARTS
START

BOIL WATER IN A KETTLE

ADD COFFEE TO A CUP

ADD BOILING WATER

ADD MILK

ADD SUGAR

END

19
There are several other
symbols for different purposes.
Let’s take a look at them…

Process Indicates any type of internal


operation inside the Processor
or Memory

Input / Output Used for any Input/Output


operation. Indicates that the
computer is to obtain data or
output results

Decision Used to ask a question that can


be answered in a binary format
(Yes/NO, True/False)

Connector Allows the flowchart to be


drawn without intersecting
lines or without a reverse flow.

Flow Lines Shows direction of flow

Annotation For comments

You are right!


Pictures are
always easier to
comprehend.
Let me try to
make the
flowchart for
Sure. You
the addition
must
algorithm.

20
Flowchart for
Two Number
addition Aisha solves the problem and shows it to Mohit

How’s that,
Perfect!
Mohit?

Now, let us take it a step further by


dividing the programs under three
categories - Sequential, Branching
and Looping.

Mohit explains about the three types of programming statements

Selection statements Loops repeat a


A set of logical steps allow the flow of sequence of
instructions until a
carried out in order. execution to jump to a
different part of the specific condition
program is met.

21
Assignment 1

Across
1. I am a rectangle in a flowchart. What do I represent?
2. In this box conditions can be given
4. You can use me to communicate ideas, graphically represent
a problem solving.
5. I connect two geometrical boxes in a flowchart
Down
1. In the flowchart, I represent data or information that is
available.
3. All flowcharts begin with me. I am elliptical in shape
22
Assignment 2
The flow chart on the right
hand side shows the steps
to close all the applications
on your computer and shut
down.

Some instructions are given


below. Place them in the
flowchart.

23
PART 2 - SELECTION AND ITERATION CONSTRUCT

Let me guess. The coffee You are absolutely right! So


example comes under does the example of two
sequential programming! numbers.

Now, lets discuss


selection. Consider
voting in India. So, you are
eligible to vote at 18.
There is a condition which
could have two possible
results – Are you 18 or
older? If yes, you are
eligible to vote. If not,
you’re not eligible to vote.
Am I right?

Yes, you
are.

The algorithm will be


1) Start
2) Enter the Age
3) If the Age is greater than or equal to 18
4) Print “Eligible to vote”
5) Else Print “Not eligible to vote”
6) Stop
24
Yes, let’s make a
This is really flowchart for this
interesting! algorithm!

START

Enter your age

Yes If No
Age>=18
?

Not Eligible to
Eligible to vote
vote

STOP

25
Aisha’s mother enters the room

Come kids, have some


Wow! I feel I can do
snacks first and then you
this now!
can continue

Mohit, let’s go! Don’t


you want to have your
favourite sandwiches? Sandwiches?
I told mom to make Wow!! Let’s eat!
them for you.

Mohit and Aisha enjoy snack time.

You are
welcome, dear!

These are really


delicious! Thank
you, aunty!

26
Later, Aisha and Mohit continue with their studies.

Aisha, there is What are


another programming
useful concept loops, Mohit?
in
programming
– loops.

Oh, okay! So
a loop is also a
A loop is a sequence of condition driven
instructions that is executed statement.
several times as long as a
predefined condition is True.

27
Right! Consider any sequence of events in your life that
are repeated and you'll see an example of a loop. Let us
consider buses in transit systems of circular route. They
are good examples of loops. The bus goes round the
decided route till it is time for it to stop.

Time here plays


the role of loop Oh Yes…
breaker. If time is
not given, the loop
becomes an
infinite one, i.e.,
the bus will go on
forever. 28
Now it makes
Let’s understand
sense.
the algorithm of
printing a table of
any number easily
using loops.

1) Start
2) Input N, the number for which
multiplication table is to be printed.
3) For T = 1 to 10
4) Print M = N * T
5) End For
6) Stop

In this example, the number 10 given in the loop is working as a loop breaker, which terminates
the loop when the value of ‘T’ reaches to 10.

Like algorithms, loops


can be shown using
flowcharts as well.
Okay
Let’s take a look at the
flowchart of this
program.

29
START

Enter Num

Set count = 1

Count<=10 False
?

True

Result= STOP
count * Num

Print Num

Count = count + 1

30
Assignment 3
Write the algorithm to find the sum of 5 numbers,

Algorithm

1.Initialize sum = 0 and count = 0 (PROCESS)


2._________________________
3._________________________
4._________________________
5._________________________
6._________________________
7._________________________

Given below is a flow chart to print “Hello World”


10 times. Use the correct statements to fill the
blocks.

31
PART 3 - PSEUDOCODE

By the way,
what is exactly
the difference
between
algorithms and
pseudocodes?

Pseudocodes are actually one of the methods that can be


used to represent algorithms. A pseudocode is a notation
resembling a simplified programming language. Let’s
consider pseudocodes of the same examples which we
made algorithms for.

Pseudocode for adding two numbers

X= INPUT “enter number 1”


Y= INPUT “enter number 1”
Z = X +Y
PRINT Z

Pseudocode for checking voting eligibility


Age = INPUT “Enter Age”
If age is greater than or equal to 18
display “Eligible to vote”
else
display “Not Eligible to vote”

Pseudocode for displaying the multiples of given number

Num=INPUT “Enter Number”


WHILE the count<=10
result=count * num
PRINT result

32
This captures the essence of the
program and can now be written in
any programming language.

What are
friends for?
Aisha, I am glad
Thank you Mohit for
that I could help
making me realize
you.
that programming is
not just about rote
learning. It is concept
driven subject.

33
Assignment -4
Find the words given below in the word search puzzle. The words
can be placed vertically, horizontally or diagonally.

34
Assignment -5

1) INPUT Number
IF (0<= Number) AND (Number <= 100)
ACCEPT
Else
REJECT
a) On what values will this algorithm fail?
b) Can you improve the algorithm?

2) Write a pseudocode that will perform the following tasks:


a) Read the marks of three subjects: Computer Science,
Mathematics and Physics, out of 100

b) Calculate the aggregate marks


c) Calculate the percentage of marks

35
BIBLIOGRAPHY
- Computer Science – CBSE Textbook
- Python with Computer Science by
Dhanpat Rai & Co.

36
Principal’s Message

Art integration approach in education helps learners construct and


demonstrate understanding through an art form. It is engaging and
augments creativity in students. Besides acquiring knowledge,
integrating art further develops psychomotor, language, social, and
decision-making skills and leads them to invest in scientific enquiry. This
approach receives an enthusiastic welcome in the learning process as it
improves self-confidence and entrusts a better understanding of culture
and values in students.
Graphic novels are a perfect blend of expressing creative impulse and
defining knowledge.
In an innovative initiative, graphic novels have become an integral part
of the prescribed CBSE curriculum. Incorporating graphic novels in the
regular teaching-learning process, we take a giant leap to progressive
education and help students manage the VUCA world.

Surender Pal Sachdeva


Principal
Delhi Public School – Bopal, Ahmedabad

37
This story is an original creation by the author. All the
characters in this novel are fictional. All the images used
are hand-made illustrations made by Art department.
The concepts of this novel has been explained through
fictional characters. All the technical terms are verified
and are as per the curriculum.

DELHI PUBLIC SCHOOL-BOPAL, AHMEDABAD


(Affiliated to CBSE)

38

You might also like