Computer Programming C: UNIT I: Introduction to C

Algorithms

C Programming

It is defined as “a sequence of instructions designed in such a way that, if the instructions are executed in the specified sequence, the desired results will be obtained", thus the algorithm should be precise and unambiguous in practice and the results should be obtained after a finite number of steps.

ALGORITHMS

 

1. INTRODUCTION

After the preparation of a suitable plan for developing the program by its logic, i.e. the correct sequence and procedure of instructions required to carry out the task, the algorithm is often used to refer the logic of a program. It is one of the basic tools used to develop the problem solving.

• It is defined as “a sequence of instructions designed in such a way that, if the instructions are executed in the specified sequence, the desired results will be obtained", thus the algorithm should be precise and unambiguous in practice and the results should be obtained after a finite number of steps.

• It is also defined as "any problem whose solution can be expressed in a list of executable instruction". By executing, we mean an instruction which an independent executor can actually perform or carry out in a step‒by‒step manner.

 

2. CHARACTERISTICS OF ALGORITHMS

In order to qualify an algorithm in a sequence of instructions, it must possess the following characteristics.

• The algorithm should be written in sequence.

• It looks like normal English.

• In the algorithms, each and every instruction should be precise and unambiguous.

• The instructions in an algorithm should not be repeated infinitely. Ensure that the algorithm will ultimately terminate.

• The desired result should be obtained only after the algorithm terminates.

 

3. QUALITIES OF A GOOD ALGORITHM

There are so many methods or logics available to solve the problem individually. All of those methods and logics may not be good, for a given problem there may be so many algorithms not of all equality.

Identify Main Steps/Processes: Break down the problem‒solving process into its main steps or subtasks.

Utilize Decision Points: If decisions lead to different paths or outcomes, use decision symbols (like diamonds in flowcharts) to represent these points and their consequences.

Add Descriptions and Details: Use clear and concise labels and descriptive phrases to explain each step or decision point in the chart.

Relationship with other problem‒solving tools

Problem Analysis Charts often work in conjunction with other problem‒solving

Flowcharts: PACs can provide the structured analysis that is then visually represented in a flowchart, showing the sequence of steps and decisions in a problem's solution.

Algorithms: Algorithms, which are step‒by‒step procedures, are often derived from the analysis and structure provided by a PAC.

By using Problem Analysis Charts and integrating them with tools like flowcharts and algorithms, individuals and teams can approach problem‒solving in a structured and efficient manner, leading to more organized and understandable solutions.

Example: Problem Analysis Chart: Area of a Circle


The following are the primary factors that are often used to judge the quality of the algorithms.

Factors: Quality of good Algorithm

1. Time: To execute a program, the computer system takes some amount of time. The lesser is the time required, the better is the algorithm.

2. Memory: To execute a program, computer system takes some amount of memory storage. The lesser is the memory required, the better is the algorithm.

3. Accuracy: Multiple algorithms may provide suitable or correct solutions to a given problem, some of these may provide more accurate results than others, such algorithms may be suitable.

4. Sequence: The procedure of an algorithm must form in a sequence and some of the instructions of an algorithm may be repeated a number of times or until a particular condition is met.

5. Generality: The designed algorithm must solve a single isolated problem and more often algorithms are designed to handle a range of input data to meet these criteria, so the algorithms must be generalised.

 

Computer Programming C: UNIT I: Introduction to C : Tag: Computer Science : C Programming - Algorithms


Computer Programming C: UNIT I: Introduction to C



Under Subject


Computer Programming C

CS25C01 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation



Related Subjects


English Essentials I

EN25C01 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation


தமிழர் மரபு - Heritage of Tamils

UC25H01 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation


Applied Calculus

MA25C01 Maths 1 M1 - 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation


Applied Physics I

PH25C01 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation


Applied Chemistry I

CY25C01 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation


Makerspace

ME25C04 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation


Computer Programming C

CS25C01 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation


Computer Programming Python

CS25C02 1st Semester | 2025 Regulation | 1st Semester 2025 Regulation


Fundamentals of Electrical and Electronics Engineering

EE25C03 1st Semester EEE Depart | 2025 Regulation | 1st Semester 2025 Regulation


Introduction to Mechanical Engineering

ME25C03 1st Semester Mechanical Dept | 2025 Regulation | 1st Semester 2025 Regulation


Introduction to Civil Engineering

CE25C01 1st Semester Civil, Agri Departments | 2025 Regulation | 1st Semester 2025 Regulation


Essentials of Computing

CS25C03 1st Semester - AIDS, CSE, CSE(CY), IT Department | 2025 Regulation | 1st Semester 2025 Regulation


Applied Physics I Laboratory

PH25C01 1st Semester practical Laboratory Manual | 2025 Regulation | 1st Semester Laboratory 2025 Regulation


Applied Chemistry I Laboratory

CY25C01 1st Semester practical Laboratory Manual | 2025 Regulation | 1st Semester Laboratory 2025 Regulation


Computer Programming C Laboratory

CS25C01 1st Semester EEE, ECE, CSE, CSE(CY), AIDS, IT practical Laboratory Manual | 2025 Regulation | 1st Semester Laboratory 2025 Regulation


Computer Programming Python Laboratory

CS25C02 1st Semester practical Laboratory Manual | 2025 Regulation | 1st Semester Laboratory 2025 Regulation


Engineering Drawing

ME25C01 EEE, Mech, Agri, EEE Depts | 2025 Regulation | 2nd Semester 2025 Regulation


Basic Electronics and Electrical Engineering

EE25C04 1st Semester ECE Dept | 2025 Regulation | 1st Semester 2025 Regulation


Essentials of Computing - Laboratory

CS25C03 1st Semester AIDS, CSE, CSE(CY), IT Depts | practical Laboratory Manual | 2025 Regulation | 1st Semester 2025 Regulation