[go: up one dir, main page]

0% found this document useful (0 votes)
44 views7 pages

14ec320 Syllabus

This document outlines a course on problem solving using computers. The course introduces students to basic programming concepts and algorithm development skills. It covers topics like flow control, looping, recursion, arrays, pointers, and file handling. Students will learn techniques for solving problems through modular programming and designing step-by-step solutions. By completing the course, students will be able to understand computing concepts, develop algorithms for tasks like sorting and searching, analyze problems, and design program solutions to engineering problems. The course assessments evaluate students' abilities in these learning outcomes.

Uploaded by

S Ponmalar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
44 views7 pages

14ec320 Syllabus

This document outlines a course on problem solving using computers. The course introduces students to basic programming concepts and algorithm development skills. It covers topics like flow control, looping, recursion, arrays, pointers, and file handling. Students will learn techniques for solving problems through modular programming and designing step-by-step solutions. By completing the course, students will be able to understand computing concepts, develop algorithms for tasks like sorting and searching, analyze problems, and design program solutions to engineering problems. The course assessments evaluate students' abilities in these learning outcomes.

Uploaded by

S Ponmalar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

P L T P Credit

R
O
B
L
E
M
S
O
L
VI
N
G
U
SI
N
G
C
O
M
P
U
T
E
R
S
Categor
y
ES 3 0 0 3

Preamble
This course is designed to introduce basic problem solving and program design skills that are
used to create computer programs. It gives engineering students an introduction to
programming and developing analytical skills to use in their subsequent course work and
professional development. This course focuses on problem solving, algorithm development, top-
down design, modular programming, debugging and testing using the programming constructs
like flow-control, looping, iteration and recursion. It presents several techniques using
computers to solve problems, including the use of program design strategies and tools, common
algorithms used in computer program and elementary programming techniques.
Prerequisite
NIL
Course Outcomes
On the successful completion of the course, students will be able to

CO1 Comprehend the role of computing and use of programming concepts Understand
in developing engineering solutions.
CO2 Develop algorithms to solve fundamental mathematical problems, Apply
merging, sorting and searching.
CO3 Develop algorithms for text processing and pattern searching Apply
CO4 Analyze a problem, identify the data in the problem, divide a problem Analyze
into parts, solve individual parts using proper control structures and
compose into an overall solution
CO5 Design algorithmic solutions to problems drawn from engineering Apply
contexts and implement using any structured programming language

Mapping with Programme Outcomes


COs PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1 S - - - - - - - - - - -
CO2 S M S - - - - - S - - -
CO3 - - S - - - - - S - - -
CO4 - S S S - - - - S - - -
CO5 S - S - - - - - S - - -
S- Strong; M-Medium; L-Low

Assessment Pattern
Continuous Assessment Tests End Semester
Bloom’s category Examinations
1 2 3
1 Remember 20 20 0 0
2 Understand 20 20 20 20
3 Apply 60 60 60 60
4 Analyze 0 0 20 20
5 Evaluate 0 0 0 0
6 Create 0 0 0 0
Course Level Assessment Questions
Course Outcome 1 (CO1):
1. List the steps involved in problem solving.
2. State a reason why each of the six problem-solving steps is important in developing
best solution for a problem.
3. What is an algorithmic solution to a problem?
4. What is a heuristic solution to a problem?

Course Outcome 2 (CO2):


1. Develop an algorithm and draw the flowchart for finding the factorial of a number.
2. Develop an algorithm that reads a list of numbers and makes a count of positive and
negative numbers and count of zeros.
3. Design an algorithm to compute sum of the squares of the list of numbers.
4. Design an algorithm that arranges the given list of numbers using selection sorting.

Course Outcome 3 (CO3):


1. Design an algorithm that removes multiples blank spaces in a line of text.
2. Design an algorithm that that left justifies a given paragraph.
3. Design and implement an algorithm to print all words in a given lines of text that starts
with a search prefix.
4. Design and implement an algorithm that removes a particular pattern from a given text.

Course Outcome 4 (CO4):


1. Describe the problem inputs and outputs and write the algorithm for a program that
computes an employee’s gross salary given the hours worked and the hourly rate.
2. Write a recursive function to find the factorial of a number.
3. Write a function for finding the power of a number using recursion and without using
recursion. Analyze its performance
4. An instructor calculates the grade percentage based on the highest score on a test.
Given the highest score and one student’s score, write a solution to calculate and print
that student’s test percentage.

Course Outcome 5 (CO5):


1. Write a program that takes the length and width of a rectangular yard and the length and
width of a rectangular house situated in the yard. Your program should compute the time
required to cut the grass at the rate of two square feet a second.
2. The Pythagorean theorem states that the sum of the squares of the sides of a right
triangle is equal to the square of the hypotenuse. Given two positive integers, m and n,
where m > n, display the values of the Pythagorean triple generated. a Pythagorean
triple can be generated by the following formulas: side1 = m2 - n2 , side2 = 2mn,
hypotenuse = m + n
2 2

3. Write a program to take a depth (in kilometers) inside the earth as input data; compute
and display the temperature at this depth in degrees Celsius and degrees Fahrenheit.
The relevant formulas are Celsius = 10 (depth) + 20 (Celsius temperature at depth in
km) Fahrenheit = 1.8 (Celsius) + 32. Include two functions in your program. Function
celsius_at_depth() should compute and return the Celsius temperature at a depth
measured in kilometers. Function Fahrenheit() should convert a Celsius temperature to
Fahrenheit.
4. A manufacturer would like to have a device for a car that will turn on a light when the
temperature is between 34 and 40 degrees Fahrenheit (F) and sound a warning signal
when the outside temperature is 34 degrees F or below. The light and the sound are
never going simultaneously. Write a solution to this problem.
Concept Map

Syllabus
Introduction to problem solving with computers - Computing Systems: Hardware and
Software – Engineering Problem Solving Methodology: problem specification and analysis,
algorithm design, flowchart, implementation, program testing and verification

Algorithm Design: Fundamental algorithms: Swapping of two variables – counting –


summation of set of numbers – factorial – Fibonacci sequence – base conversion Factoring
Techniques: smallest divisor of an integer – greatest common divisor – generating prime
number – generating prime factor Merging, Sorting and searching Techniques: Two way
merge – sorting by selection sort – sorting by exchange – sorting by insertion – linear search –
binary search Array techniques: Array order reversal – Statistical measurement - array
counting - array Partitioning Text Processing and Pattern Searching: Key word search – text
line editing –linear pattern search

Programming Concepts : Basics of programming -Constant, variable, keywords, data types


- Operators, operator precedence, expressions - Control Structures: Selection structure-
Repetition Structure Modular Programming and Functions: User defined functions- Recursive
functions Array Handling: 1-D, 2-D: declaration – initialization, Using arrays as function
arguments- Strings Pointers: Basics of Pointers - Arrays and Pointers - Pointers and
Functions   - Structures and Union - File Handling.
Text Book:
1. R G Dromey, “How To Solve It By Computer”, Pearson Education India, 2008.

Reference Books:
1. Maureen Sprankle, Jim Hubbard, “Problem Solving & Programming Concepts”, Prentice
Hall, 2012
2. Jeri R. Hanly - Elliot B. Koffman, “Problem Solving and Program Design in C”, 7th
Edition, Pearson, 2013
3. Delores M. Etter, “Engineering Problem Solving with C”, Pearson, 4th Edition, 2013.
4. Donald E. Knuth, “Art of Computer Programming”, Pearson Education, 2012.
5. Yashavant Kanetkar, “Let us C”, 8th Edition, BPB Publications, 2007
Course Contents and Lecture Schedule

Module Topics No. of Lectures


No
1 Introduction to problem solving with computers
1.1 Computing Systems: Hardware and Software 1
Engineering Problem Solving Methodology: problem 2
1.2 specification and analysis, algorithm design, flowchart,
implementation, program testing and verification
2 Algorithm Design
Fundamental algorithms: Swapping of two variables – 2
2.1 counting – summation of set of numbers – factorial –
Fibonacci sequence – base conversion
Factoring Techniques: smallest divisor of an integer – 3
2.2 greatest common divisor – generating prime number –
generating prime factor
Merging, Sorting and searching Techniques: Two way 3
2.3 merge – sorting by selection sort – sorting by exchange –
sorting by insertion – linear search – binary search
2.4 Array techniques: Array order reversal – Statistical 3
measurement - array counting - array Partitioning
2.5 Text Processing and Pattern Searching: Key word search – 3
text line editing –linear pattern search
3 Programming Concepts :
3.1 Basics of programming
3.1.1 Constant, variable, keywords, data types 1
3.1.2 Standard and console I/O statement 1
3.1.3 Operators, operator precedence, expressions 1
3.2 Control Structures
3.2.1 Selection structure 2
3.2.2 Repetition Structure 1
3.3 Modular Programming and Functions
3.3.1 User defined functions 1
3.3.2 Library functions 1
3.3.3 Recursive functions 1
3.4 Array Handling
3.4.1 1-D, 2-D arrays: declaration – initialization 1
3.4.2 Using arrays as function arguments 1
3.4.3 Strings 1
3.5 Pointers
3.5.1 Basics of Pointers 1
3.5.2 Arrays and Pointers  1
3.5.3 Pointers and Functions     1
3.6 Structures and Union 2
3.7 File Handling 2
Total 36

Course Designers:

1. Dr. R. A. Alaguraja alaguraja@tce.edu


2. Dr. S. Ponmalar spmece@tce.edu

You might also like