Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
435 views5 pages

BE01000121

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

BE01000121

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

GUJARAT TECHNOLOGICAL UNIVERSITY

Program Name: Engineering


Level: Degree
Branch: ALL
Course / Subject Code: BE01000121
Course / Subject Name: Programming for Problem Solving

w. e. f. Academic Year: 2024-25


Semester: 1st Year
Category of the Course: ESC

 Basic Computer Skills


Prerequisite:  Logical Thinking and Problem-Solving Abilities
 Understanding of mathematical logic and problem-solving strategies
The "Programming for Problem Solving" course is a foundational skill that
significantly enhances an engineer’s problem-solving abilities, career prospects, and
Rationale: capacity for innovation. Integrating programming into the curriculum ensures that
engineering programs prepare students to meet the challenges of the modern
technological landscape and contribute effectively to their respective fields.

Course Outcome:
After Completion of the Course, Student will able to:

No Course RBT
Outcomes Level
01 Identify fundamental programming constructs such as variables, data Remember
types, operators, expressions, control structures, functions and basic data
structures
02 Explain the principles of programming and software development, Understan
including the structure and operation of algorithms, flowcharts, and d
pseudocode.
03 Develop simple programs using appropriate data structures and Apply
standard libraries.
04 Apply programming constructs such as loops, conditional statements, Apply
and functions to solve basic engineering problems.
05 Debug and troubleshoot programming errors by systematically testing Analyze
and refining code.

w.e.f. 2024-25 http://syllabus.gtu.ac.in/ Page 1|5


GUJARAT TECHNOLOGICAL UNIVERSITY
Program Name: Engineering
Level: Degree
Branch: ALL
Course / Subject Code: BE01000121
Course / Subject Name: Programming for Problem Solving
Teaching and Examination Scheme:
Total
Teaching
Credit Assessment Pattern and Marks
Scheme(in
s
Hours) Total
L+T+
(PR/2) Mark
Theor Tutorial / Practical s
y
L T PR C
ESE PA / CA PA/CA ESE
(E) (M) (I) (V)
02 00 04 04 70 30 20 30 150

Course Content:
Unit No. of % of
Content
No. Hours Weightage
1. Introduction to Programming 03 10
 Basics of Computers: Overview of computer systems,
hardware, and software.
 Introduction to Programming Languages: Types of
programming languages, language translators (compilers,
interpreters).
 Flowcharts and Algorithms: Basics of creating flowcharts
and writing algorithms for problem-solving.
2. Basics of C Programming 03 10
 Structure of a Program: Basic syntax, semantics, and structure of
C programs.
 Data Types and Variables: Primitive data types, variables, and
constants.
 Operators: Arithmetic, relational, logical, bitwise, and assignment
operators.
3. Control Structures 03 10
 Conditional Statements: if, if-else, nested if-else, switch-case.
 Loops: for, while, do-while loops.
 Break and Continue Statements: Usage in loop control.
4. Functions and Modular Programming 03 10
 Defining Functions: Syntax, return types, and parameter passing.
 Library Functions: Standard library functions and header files (for C).
 Recursion: Basic concepts and examples.
5. Arrays and Strings 03 10
 Arrays: One-dimensional and multi-dimensional arrays, array
operations.
w.e.f. 2024-25 http://syllabus.gtu.ac.in/ Page 2|5
GUJARAT TECHNOLOGICAL UNIVERSITY
Program Name: Engineering
Level: Degree
Branch: ALL
Course / Subject Code: BE01000121
Course / Subject Name: Programming for Problem Solving
 Strings: String handling functions, basic string operations.

6. Pointers 03 10
 Pointers: Basics of pointers, pointer arithmetic, pointers and arrays,
pointers to functions (for C).
7. Structures and Unions 03 10
 Structures: Defining and using structures, array of structures,
pointer tostructures.
 Unions: Basics and usage.
8. File Handling 03 10
 File Operations: Opening, closing, reading, writing files.
 File Pointers: File pointers and basic file operations (for C).
9. Dynamic Memory Allocation 03 10
 Memory Allocation: malloc, calloc, realloc, and free functions. Usage
and
examples.
10. Debugging and Testing 03 10
 Debugging Techniques: Common debugging practices, use of
debugging tools.
 Testing: Writing test cases, unit testing.
Total 30 100

Suggested Specification Table with Marks (Theory):


Distribution of Theory Marks (in
%)
R U A N E C
Level Level Level Level Level Level
20 20 40 20 00 00
Where R: Remember; U: Understanding; A: Application, N: Analyze and E: Evaluate C: Create (as
perRevised Bloom’s Taxonomy)

References/Suggested Learning Resources:


(a) Books:
1. C Programming Language by Brian W. Kernighan and Dennis M. Ritchie, Latest Edition (for C
programming)
2. Let Us C by Yashavant Kanetkar, Latest Edition (for C programming)
3. Problem Solving and Program Design in C by Jeri R. Hanly and Elliot B. Koffman, Latest
Edition (for C programming)

w.e.f. 2024-25 http://syllabus.gtu.ac.in/ Page 3|5


GUJARAT TECHNOLOGICAL UNIVERSITY
Program Name: Engineering
Level: Degree
Branch: ALL
Course / Subject Code: BE01000121
Course / Subject Name: Programming for Problem Solving
(b) Open-source software and website:
1. OnlineGDB : GDB online Debugger | Compiler - Code, Compile, Run, Debug online C, C++
(onlinegdb.com)
2. Compiler Explorer (Godbolt): Compiler Explorer (godbolt.org)
3. JDoodle: JDoodle - Free online cloud coding platform IDE to practice, teach and learn programming

Suggested Course Practical List:

1. Write a program that performs basic arithmetic operations (addition, subtraction, multiplication, and
division) and demonstrates the use of different data types.

2. Create a program that uses if, else, and switch statements to implement a simple menu-driven
application. Useloops (for, while, and do-while) to repeat tasks.

3. Develop a program that calculates the factorial of a number using both iterative and recursive functions.

4. Write a program to perform various operations on arrays (e.g., sorting, searching) and
strings (e.g., concatenation, comparison).

5. Implement a program that uses pointers to create and manipulate dynamic arrays, demonstrating the use
of malloc, calloc, realloc, and free.

6. Design a student record system using structures that store and display information such as name, roll
number,and grades.

7. Write a program to read from and write to files, such as creating a simple text editor that performs
basic fileoperations.

8. Implement a singly linked list with operations like insertion, deletion, and traversal.

9. Develop programs to simulate stack operations (push, pop, peek) and queue operations (enqueue,
dequeue)using arrays and linked lists.

10. Provide students with a program containing intentional errors and inefficiencies. Have them use
debugging tools (like gdb) to find and fix the errors and optimize the code for better performance.

List of Laboratory/Learning Resources Required:


1. Computer System/Laptop with latest configurations.
2. Internet Connectivity

w.e.f. 2024-25 http://syllabus.gtu.ac.in/ Page 4|5


GUJARAT TECHNOLOGICAL UNIVERSITY
Program Name: Engineering
Level: Degree
Branch: ALL
Course / Subject Code: BE01000121
Course / Subject Name: Programming for Problem Solving
Suggested Project List:
1. Library Management System with the Objectives of
 Practice basic C syntax and operations,
 Use control structures effectively,
 Implement functions and modular programming,
 Manipulate arrays and strings,
 Handle file operations for data storage and retrieval

2. Institute Hall Management System, Project Objectives:


 To manage the allocation of halls for different events.
 To maintain records of bookings, cancellations, and availability of halls.
 To provide an interactive user interface for managing hall reservations.

Suggested Activities for Students:


 To enhance the programming skills of students in a C Programming and Problem-Solving
course, the instructor can assign various activities that progressively build their understanding
and ability to applyconcepts.

*********

w.e.f. 2024-25 http://syllabus.gtu.ac.in/ Page 5|5

You might also like