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

ICT SC Module

This document provides an introduction to computer programming concepts. It defines computer programming as a sequence of instructions written in a programming language to perform tasks on a computer. It explains that a computer program, also called software, allows a computer to perform useful tasks by processing inputs, storing data in memory, performing calculations, and displaying outputs. The document then discusses basic programming concepts like algorithms, programming languages, variables, data types, and flow control structures that are used to write computer programs.

Uploaded by

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

ICT SC Module

This document provides an introduction to computer programming concepts. It defines computer programming as a sequence of instructions written in a programming language to perform tasks on a computer. It explains that a computer program, also called software, allows a computer to perform useful tasks by processing inputs, storing data in memory, performing calculations, and displaying outputs. The document then discusses basic programming concepts like algorithms, programming languages, variables, data types, and flow control structures that are used to write computer programs.

Uploaded by

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

What I Know

Directions: Read each item carefully. Write only the letter of the correct
answer. Use a separate sheet for your answers.
1. Computer programming is the act of writing computer programs,
which are a ___________________________ written using a Human
Language to perform a specified task by the computer.
a. sequence of instructions
b. sequence of numbers
c. scientific method
d. series of menu
2. A computer program is also called a ___________________________, which
can range from two lines to millions of lines of instructions.
a. computer software
b. computer hardware
c. computer techniques
d. computer system
3. Below are examples of computer programming language EXCEPT:
a. C++
b. Python
c. HTML
d. Microsoft Word
4. Which of the statements below are correct?
a. Computer programs are being used to develop graphics and special
effects in movie making.
b. Computer programs are being used to perform Ultrasounds, X-Rays,
and other medical examinations.
c. Computer programs are being used in our mobile phones for SMS,
Chat, and voice communication.
d. All of the above
5. Computer program instructions are also called _______________________.
a. Program Source Code
b. Program Reference
c. Source Information
d. Computer Data

7
What’s In

Lesson INTRODUCTION TO COMPUTER


1 PROGRAMMING

WORD SEARCH
Search for the words related to the history and generation of
computer hidden in the puzzle. The words have been placed
horizontally, vertically, or diagonally – frontwards or backwards.
When you locate a word, write it on another sheet of paper.

8
What’s New

the programmer
Sandesh Uprety Aug 2015
she said, our life is a journey of accomplishments,
that we were programmed, we were trained
For what it has to come the other day
And at sudden something went fortunately wrong
and now we are nothing but some strayed unfixable bugs
That no one seems to care about
Did we fail to compile?
or did we not impress?
or did our programmer want us this way
for us to suffocate enough to
define the pain of failure
so, we would learn to re-generate the code to the happiness
that we’ll know how to feel our self
when every sentiment on us floats away
and all we can imagine to do is dream
what would we be, if it never happened

What is It

Get ready to dive deep into the world of Computer Programming and know
all about the Basics of Programming in detail.

What Is Computer Programming?


A computer program is a sequence of instructions written using a
Computer Programming Language to perform a specified task by the
computer.
The two important terms that we have used in the above definition are

• Sequence of instructions
• Computer Programming Language

9
To understand these terms, consider a situation when someone
asks you about how to go to a nearby Jollibee store. What exactly
do you do to tell him the way to go to Jollibee?
You will use Human Language to tell the way to go to Jollibee,
something as follows
– First go straight, after one kilometer, take left and then drive
around five kilometers and you will find Jollibee at the left side.
Here, you have used English Language to give several steps to be
taken to reach Jollibee. If they are followed in the following
sequence, then you will reach Jollibee

1. Go straight
2. Drive one kilometer
3. Take left
4. Drive around five kilometers
5. Search for Jollibee at your left side
Now, try to map the situation with a computer program. The above
sequence of instructions is actually a Human Program written in
English Language, which instructs on how to reach Jollibee from
a given starting point. This same sequence could have been given
in Spanish, Hindi, Arabic, or any other human language, provided
the person seeking direction knows any of these languages.
Now, let us go back and try to understand a computer program,
which is a sequence of instructions written in a Computer
Language to perform a specified task by the computer. Following is
a simple program written in Python programming Language

print "Hello, World!"

The above computer program instructs the computer to print "Hello,


World!" on the computer screen.
• A computer program is also called a computer software,
which can range from two lines to millions of lines of
instructions.
• Computer program instructions are also called program
source code and computer programming is also called
program coding.
• A computer without a computer program is just a dump
box; it is programs that make computers active.

Given below is a Mathematical Expression


Z = X + Y, where X, Y, and Z are the variables in a programming language.
If X = 550 and Y = 450, the value of X and Y are the input values that are
called literals.
10
We ask the computer to calculate the value of X+Y, which results in Z, i.e., the
expected output.

How Do Computers Work?

A computer is a machine that processes information, and this information can


be any data that is provided by the user through devices such as keyboards,
mouse, scanners, digital cameras, joysticks, and microphones. These devices are
called Input Devices and the information provided is called input.
The computer requires storage to store this information and the storage is called
Memory.

Computer Storage or Memory is of Two Types.


• Primary Memory or RAM (Random Access Memory): This is the internal
storage that is used in the computers and is located on the motherboard.
RAM can be accessed or modified quickly in any order or randomly. The
information that is stored in RAM is lost when the computer is turned off.
• Secondary Memory or ROM (Read-Only Memory): Information (data) stored
in ROM is read-only and is stored permanently. The ROM stored instruction
is required to start a computer.

Processing: Operations done on this information (input data) is called


Processing. The Processing of input is done in the Central Processing Unit which
is popularly known as CPU.

Output Devices: These are the computer hardware devices that help in
converting information into human-readable form. Some of the output devices
include Visual Display Units (VDU) such as a Monitor, Printer, Graphics Output
devices, Plotters, Speakers, etc.

A developer can analyze the problem and come up with simple steps to achieve a
solution to this problem, for which he/she uses a programming algorithm. This
can be compared to a recipe for a food item, where ingredients are inputs and
finished delicacy is the output required by the client.

11
The Recipe contains ingredients (inputs) and directions (steps) to prepare a food item.

In the development environment, the products,


software, and solutions can be designed as
scenarios, use cases, and data flow diagrams.

Simple flow chart describing the steps and flow of the solution.

Based on the client’s requirements, the solution required could be desktop,


web or mobile-based.

Basic Programming Concepts


Developers should have essential knowledge on the following concepts to become
skilled in Computer Programming.

I assume you are well aware of English Language, which is a well-


known Human Interface Language. English has a predefined
grammar, which needs to be followed to write English statements in a
correct way. Likewise, most of the Human Interface Languages (Hindi,
English, Spanish, French, etc.) are made of several elements like
verbs, nouns, adjectives, adverbs, propositions, and conjunctions,
etc.
Similar to Human Interface Languages, Computer Programming
Languages are also made of several elements. We will take you through
the basics of those elements and make you comfortable to use them
in various programming languages. These basic elements include −

• Programming Environment
• Basic Syntax
12
• Data Types
• Variables
• Keywords
• Basic Operators
• Decision Making
• Loops
• Numbers
• Characters
• Arrays
• Strings
• Functions
• File I/O

#1) Algorithm: It is a set of steps or instruction statements to be followed to


accomplish specific tasks. A developer can design his algorithm to achieve the
desired output.

For Example, a recipe to cook a dessert. The algorithm describes the steps to
be followed for completing a specific task, but it does not say how to achieve
any of the steps.

From programming point of view, an algorithm is a step-by-step


procedure to resolve any problem. An algorithm is an effective
method expressed as a finite set of well-defined instructions.
Thus, a computer programmer lists down all the steps required to
resolve a problem before writing the actual code. Following is a simple
example of an algorithm to find out the largest number from a given
list of numbers −
2. Get a list of numbers L1, L2, L3 ............ LN
3. Assume L1 is the largest, Largest = L1
4. Take next number Li from the list and do the following
5. If Largest is less than Li
6. Largest = Li
7. If Li is last number from the list, then
8. Print value stored in Largest and come out
9. Else repeat same process starting from step 3

The above algorithm has been written in a crude way to help


beginners understand the concept. You will come across more
standardized ways of writing computer algorithms as you move on
to advanced levels of computer programming.
#2) Source code: Source code is the actual text that is used to construct the
program using the language of choice.

13
For Example, it is mandatory to have the main method in Java and the text
used is as shown below.
public static void main(String arg[]) {
//Steps to be performed
}
#3) Compiler: Compiler is a software program that helps in converting the
source code into binary code or byte code, also called machine language, that is
easy for a computer to understand, and can be further executed using an
interpreter to run the program.

#4) Data Type: Data used in the applications can be of a different type, it can
be a whole number (integer), floating-point (decimal point numbers), characters
or objects.

For Example, double currency = 45.86, where double is a data type used for
storing numbers with decimal points.

#5) Variable: Variable is a space holder for the value stored in the memory and
this value can be used in the application.

For Example, int age = 25, where age is a variable.

#6) Conditionals: Knowledge of how to use a certain condition, such that a set
of code should execute only if a certain condition is true. In case of a false
condition, the program should exit and should not continue the code further.

#7) Array: Array is the variable that stores elements of a similar data type.
Knowledge of using an array in coding/programming will be a great benefit.

#8) Loop: Loop is used to execute the series of code until the condition is true.

For Example, in Java, loops can be used as for loop, do-while, while loop or
enhanced for loop.
The code for loop is as shown below:
for (int I =0; i<10; i++) {System.out.println(i); }

#9) Function: Functions or methods are used to accomplish a task in


programming, a function can take parameters and process them to get the
desired output. Functions are used to reuse them whenever required at any
place repeatedly.

#10) Class: Class is like a template that contains state and behavior, which
corresponding to programming is field and method. In Object-Oriented
languages like Java, everything revolves around Class and Object.

Essentials Of a Programming Language


As we have developed so many languages to communicate among
ourselves, computer scientists have developed several computer-
14
programming languages to provide instructions to the computer (i.e., to
write computer programs).
Just like any other language we use to communicate with others, a programming
language is a special language or a set of instructions to communicate with
computers.
Each programming language has a set of rules (like English has grammar) to
follow, and it is used to implement the algorithm to produce the desired output.

If you understood what a computer program is, then we will say: the
act of writing computer programs is called computer programming.

Top Computer Programming Languages


As we mentioned earlier, there are hundreds of programming languages,
which can be used to write computer programs.
The below table enlists the top Computer Programming Languages and their
applications in real life.
Programming
Popularity Practical Applications of Languages
Language

Desktop GUI application (AWT or Swing api), Applets,


online shopping sites, internet banking, jar files for
Java 1
secured file handling, enterprise applications, mobile
applications, gaming software.

Operating Systems, Embedded systems, Database


C 2 management systems, Compiler, gaming, and
animation.

Machine learning, Artificial Intelligence, Data


Python 3 analysis, face detection and image recognition
Software.

Banking and trading enterprise software, virtual


C++ 4
machines, and compilers.

Visual Basic Windows services, controls, control libraries, Web


5
.NET applications, Web services.

Desktop applications like a file explorer, Microsoft


C# 6 office applications like Word, Excel , Web browsers,
Adobe Photoshop.

Client side and server-side validations, DOM


JavaScript 7 handling, developing web elements using jQuery (JS
library).

Static and dynamic websites and applications,


PHP 8
Server-side scripting.

15
Programming
Popularity Practical Applications of Languages
Language

Querying database, CRUD operations in database


SQL 9 programming, creating a stored procedure, triggers,
database management.

Apple’s OS X, iOS operating system and APIs, Cocoa


Objective – C 10
and Cocoa Touch.

Let’s see how to select a programming language.


The selection of particular programming languages depends on many factors
such as:
• Targeted Platform and Project/Solution Requirement: Whenever a
software solution provider comes across the requirement, there are many
options to choose an appropriate programming language. For Example, if
a user wants the solution to be on mobile, then Java should be the
preferred programming language for Android.
• Influence of Technical Partners with the Organization: If Oracle is a
tech partner with the company, then it is agreed to implement software
marketed by Oracle in the solution for every project and product
developed. If Microsoft is a tech partner with the company, then ASP can
be used as a development framework for building web pages.
• Competency of available Resources & Learning Curve: The developers
(resources) should be available and competent to quickly learn the
selected programming language so that they can be productive for the
project.
• Performance: The selected language should be scalable, robust,
platform-independent, secure and should be efficient in displaying results
within the acceptable time limit.
• Support from the Community: In the case of open-source programming
language, the acceptance, and popularity for the language as well as
online support from the growing support group should be available.

Types Of Computer Programming Languages


Computer Programming language can be divided into two types i.e., Low-level
Language, and High-level Language.
#1) Low-level Language
• Hardware dependent
• Difficult to understand
Low-level Language can be further divided into two categories,
• Machine Language: Machine dependent, difficult to modify or program,
For Example, every CPU has its machine language. The code written in
machine language is the instructions that the processors use.
• Assembly Language: Each computer’s microprocessor that is responsible
for arithmetic, logical and control activities need instructions for
accomplishing such tasks and these instructions are in assembly

16
language. The use of assembly language is in device drivers, low-level
embedded systems, and real-time systems.
#2) High-level Language
• Independent of hardware
• Their codes are very simple, and developers can read, write, and debug as
they are similar to English like statements.
High-level Language can be further divided into three categories.
• Procedural Language: Code in the procedural language is a sequential
step by step procedure, that gives information like what to do and how to
do. Languages such as Fortran, Cobol, Basic, C, and Pascal are a few
examples of procedural language.
• Non-procedural Language: Code in non-procedural language specify what
to do but does not specify how to do. SQL, Prolog, LISP are a few examples
of non-procedural language.
• Object-oriented Language: Use of objects in the programming language,
where the code is used to manipulate the data. C++, Java, Ruby, and
Python are a few examples of Object-oriented language.
Basic Operations of a Programming Environment
Five basic elements or operations of programming are listed below:
• Input: Data can be input using the keyboard, touch screen, text editor,
etc. For Example, to book a flight, the user can enter his login credentials
and then select a departure date and return date, the number of seats,
starting place and destination place, Name of Airlines, etc., from desktop,
laptop, or mobile device.
• Output: Once authenticated, and upon receiving the request to book the
tickets with the mandatory inputs, a confirmation of booking for the
selected date and destination will be displayed on the screen, and a copy
of the tickets and invoice information is sent to the user’s registered email
id and mobile number.
• Arithmetic: In case of flight booking, update of the number of seats booked
and those seats need some mathematical calculations, further name of
the passenger, no. of seats reserved, date of journey, journey start date,
and starting place, destination place, etc. should be filled into the airlines
server database system.
• Conditional: It is required to test if a condition is satisfied or not, based
on the condition, the program may execute the function with parameters
else it will not get executed.
• Looping: It is required to repeat /perform the task until the condition
holds. Types of loops can be While loop, Do-while loop, For loop.

Example
for (int i = 0; i < 10; i++)
{
System.out.println(i);
}

Necessary Prerequisites/Skills Required for Programming

17
#1) Self Reliance: To succeed in coding, you should develop a confidence
in yourself, control your impatience, frustration and should refrain from being
dependent on someone else to help you in solving your technical problems, rather
you should be self-reliant and keep faith on your capabilities, monitor your efforts
and remain optimistic and perseverant in learning.
#2) Language: It is an individual’s choice to decide which programming
languages he/she should learn. A programming language should be selected
based on its acceptance in the various domains in software industries. Object-
oriented languages like Python and Java, which are free & open source are widely
accepted and used by Google, Yahoo, and NASA.
Java script is another scripting language, a client-side scripting language, but
knowing JavaScript will highly benefit web-based application developers. Non-
procedural language like SQL is mandatory as it is acceptable by all the back-
end databases.
#3) Logic: As a developer or tester, to excel in the programming language,
one must always have conditional and logical thinking. It can be improved as we
improve our muscles, there are a few sites where one can prepare and improve
logical thinking and prepare for programming language.
• Fresherslive
• The Online Test Centre
• Indiabix
#4) Attention to Detail: A conscientious and alert person with an eye for
details will check his/her work for minute details and this will prevent any syntax
error, verify if any steps like unit testing or including API /classes, miss
associated jar or class files. For some people, meditation might help to improve
focus and concentration while for others taking a walk or playing some mind
games might help. You need to find out what works for you.
#5) Abstract Thinking: During sprint meeting in an agile environment, the
ability to think out of the box, or see things from different angles/perspectives,
help to uncover scenarios for requirements and design considerations. This can
be improved by a discussion with others.
#6) Patience: At times, it happens as you write a code, for which you are
confident about, verified it a couple of types, it works in your machine, but after
integration the code snippet does not work, all the effort to identify the fault go
in vain, you feel stressed out, frustrated and feel like good for nothing.
During such times, your ability to overcome the situation, try again from
scratch and develop patience will prove the developer to be more mature and
he/she gets appreciated for the ability to work under pressure environments like
releases and acceptance testing or during client demos.
#7) Strong Memory: Being able to understand and visualize the high-level
design, data flow, algorithm, data structure, how they interact with each other
will separate you from an average coder. Meditation techniques and memory
exercises can help with this as well.

How To Start Learning Computer Programming?

18
As a human, you should have the habit to introspect daily and identify what you
have done today, how can you improve yourself, what steps or precautions you
will take to avoid difficult situations.

Similarly, consider the below points before learning computer programming.


• Be honest and think about why you want to learn computer programming.
• What is your goal, what will you accomplish in your dream of learning
programming?
• Choose the right programming language. E.g., Front end programming like
JavaScript, PHP, Back-end programming like SQL, Java, Python for web-
based development.
• Check out some interactive tutorials to get familiar with a programming
language. w3schools is good to start understanding many programming
languages, and w3resource is good to learn SQL queries interactively.
• Get a book on selected programming language i.e., SQL for Dummies,
JavaScript for Dummies.
• Try out some online courses i.e., give a try to Udemy
• Learn Data Structures and Algorithms.
• Make a project using a selected programming language.
• Attempt some certification, and this will make you more confident,
knowledgeable, and competent.

Where Can We Apply the Skills of Programming?


• Ability to Communicate: Communication is an extremely essential quality
wherein, you can explain your plan, discuss your doubts, improve your
thoughts, and exchange information from your superior and your team
member. A good communicator can understand and explain the tasks
performed in daily reporting, find out how can you improve your thoughts
and clear your doubts. During the agile standup meeting & sprint meets,
you can communicate the plan of action and can lead the team.
• Problem-solving: Accepting challenges and accomplishing difficult tasks
will build problem-solving skills and this is a prerequisite for a good
developer. During development, you may encounter various issues of
understanding the business logic and implementing them into your code,
integration of the code with application, compatibility issues and many more
challenges. Your problem-solving skills will help you to sail through the most
critical situations.
• Collaboration/Teamwork: Collaboration skills enable you to work with the
team members to accomplish some tasks effectively and thereby improve
productivity.
Working in a team at times can result in conflict, due to attitude issues. Hence,
by understanding the goal to get better products or improve productivity, anyone
can play the role of an excellent team player role.

Uses of Computer Programs


Today computer programs are being used in almost every field,
household, agriculture, medical, entertainment, defense,
communication, etc. Listed below are a few applications of computer
programs −
• MS Word, MS Excel, Adobe Photoshop, Internet Explorer,
19
Chrome, etc., are examples of computer programs.
• Computer programs are being used to develop graphics and special
effects in movie making.
• Computer programs are being used to perform Ultrasounds, X-
Rays, and other medical examinations.
• Computer programs are being used in our mobile phones for SMS,
Chat, and voice communication.

Career Options for Programmers


The career options as a programmer or software developer are many.
The areas or positions for computer programmer are as follows:
• Web Developer
• UI Developer
• User Experience Designer
• SQL Developer
• Quality Assurance
• Automation Test Engineer
• Software Engineer at Test

In the Software Development department his/her responsibilities include


the following duties:
• Designing and developing custom and complex solutions using various
programming languages wherein he/she should be competent, For
Example, Java, Python, JavaScript, SQL, oracle.
• Manage project software delivery lifecycle, that includes planning, design,
building, testing, and deployment within the company’s planned delivery
framework.
• Basic knowledge in Networking, ability to work on Integrated Developer Tools
such as Eclipse, NetBeans, Atom, etc.
• Should have hands-on working experience with at least one of the CI tools
such as Jenkins, Gitlab, Bamboo, etc.
• Should be able to use Linux / Unix scripts and shell scripting.
• Excellent communication and people skills.
• Should be a good Team player as well as an Independent Contributor.
• Understanding of agile development environment.

Through this module, we learned about the internals of computers, how


computers work, programming concepts, essentials of programming languages,
and basic operations of the programming environment.

We also discussed pre-requisites for programming, the necessary skills required


for becoming a programmer, how to start learning and the prospects and career
options available in the computer programming field.

Are you ready to become a Computer Programmer?

20
What’s More

Directions:
1. Use English Language to give several steps to be taken to
reach Ocaña National High School.
2. Use short bond paper
3. Observe 1-inch margin on all sides (left, right, up, bottom)

What I Have Learned

Directions: Fill in the table below with the needed data.


Use short bond paper.
A.
Uses of Computer Programs:
1 4
2 5
3

B.
Examples of Computer Programming Languages:
1 6
2 7
3 8
4 9
5 10

C.
Elements of Computer Programming:
1 6 11
2 7 12
3 8 13
4 9 14
5 10 15

21
What I Can Do

Directions:
1. Make one example of an algorithm.
2. Write your output on a short bond paper.

Assessment

Directions:

Test I - Read each item carefully. Write only the letter of the
correct answer. Use a separate sheet for your answers.
1. Computer program instructions are also called _______________________.
a. Program Source Code
b. Program Reference
c. Source Information
d. Computer Data
2. Which of the statements below are correct?
a. Computer programs are being used to develop graphics and
special effects in movie making.
b. Computer programs are being used to perform Ultrasounds, X-
Rays, and other medical examinations.
c. Computer programs are being used in our mobile phones for
SMS, Chat, and voice communication.
d. All of the above
3. Computer programming is the act of writing computer
programs, which are a ___________________________ written
using a Human Language to perform a specified task by the
computer.
a. sequence of instructions
b. sequence of numbers
c. scientific method
d. series of menu
4. A computer program is also called a ___________________________,
which can range from two lines to millions of lines of
instructions.
a. computer software c. computer hardware
b. computer techniques d. computer system

22
5. Below are examples of computer programming language
EXCEPT:
a. C++ c. Python
b. HTML d. Microsoft Word

Test II
Enumerate the Elements of Computer Programming Languages.

Additional Activities

A. Reflection Journal

Name of Student:

Grade Level & Section:

Topic/s:

Insights or Realizations (Insights or realizations gained from the module


regarding new concepts learned and known concepts that were more
understood.)

A. A totally new concept

B. A familiar concept but learned something new


Lessons Learned:

A. What is your reflection on the impact of computer programs in our


daily life? (At least 100 words)

B. Jingle Making

1. Compose a jingle related to computer program or computer


programming.
2. Write your output on a short bond paper.
3. Strictly no duplication of outputs.
4. Record your performance and post to our fb page.

23

You might also like