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

C Program To Find Sum of Two Numbers

The document provides code examples and explanations of algorithms to find the sum of two numbers in C, C++, and pseudocode. It also discusses key concepts related to algorithms including characteristics, analysis, complexity analysis, and the algorithm development process.

Uploaded by

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

C Program To Find Sum of Two Numbers

The document provides code examples and explanations of algorithms to find the sum of two numbers in C, C++, and pseudocode. It also discusses key concepts related to algorithms including characteristics, analysis, complexity analysis, and the algorithm development process.

Uploaded by

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

C Program to find sum of two numbers

#include<stdio.h>

int main() {
int a, b, sum;

printf("\nEnter two no: ");


scanf("%d %d", &a, &b);

sum = a + b;

printf("Sum : %d", sum);

return(0);
}
C++ Program to find sum of two
numbers
#include <iostream>
using namespace std;
int main()
{
//Declaring two integer variables
int num1, num2;
/* cout displays the string provided in the
*double quotes as it is on the screen
*/
cout<<"Enter first integer number: ";
/* cin is used to capture the user input
and assign it to the variable.
*/
cin>>num1;
cout<<"Enter second integer number: ";
cin>>num2;
cout<<"Sum of entered numbers is: "<<(num1+num2);
return 0;
}
Algorithm of the sum of two numbers

• Step 1: Start
• Step 2: Declare variables
num1, num2 and sum.
• Step 3: Read values for
num1, num2.
• Step 4: Add num1 and
num2 and assign the
result to a variable sum.
• Step 5: Display sum
• Step 6: Stop
Algorithms
Algorithm is a step-by-step procedure,
which defines a set of instructions to be
executed in a certain order to get the
desired output. Algorithms are generally
created independent of underlying
languages, i.e. an algorithm can be
implemented in more than one
programming language.
From the data structure point of view, following are
some important categories of algorithms :

• Search − Algorithm to search an item in a data


structure.
• Sort − Algorithm to sort items in a certain order.
• Insert − Algorithm to insert item in a data
structure.
• Update − Algorithm to update an existing item in
a data structure.
• Delete − Algorithm to delete an existing item
from a data structure.
Characteristics of an Algorithm
Not all procedures can be called an algorithm. An algorithm
should have the following characteristics :

• Unambiguous − Algorithm should be clear and unambiguous.


Each of its steps (or phases), and their inputs/outputs should
be clear and must lead to only one meaning.
• Input − An algorithm should have 0 or more well-defined
inputs.
• Output − An algorithm should have 1 or more well-defined
outputs, and should match the desired output.
• Finiteness − Algorithms must terminate after a finite number
of steps.
• Independent − An algorithm should have step-by-step
directions, which should be independent of any programming
code.
Problem Development Steps
The following steps are involved in solving
computational problems:

• Problem definition
• Development of a model
• Specification of an Algorithm
• Designing an Algorithm
• Checking the correctness of an Algorithm
• Analysis of an Algorithm
• Implementation of an Algorithm
• Program testing
• Documentation
An Algorithm Development
Process
Step 1: Obtain a description of the problem.
Step 2: Analyze the problem.
Step 3: Develop a high-level algorithm.
Step 4: Refine the algorithm by adding
more detail.
Step 5: Review the algorithm.
Algorithm Analysis
Efficiency of an algorithm can be analyzed at two different stages, before
implementation and after implementation. They are the following −

• A Priori Analysis − This is a theoretical analysis of an algorithm. Efficiency


of an algorithm is measured by assuming that all other factors, for
example, processor speed, are constant and have no effect on the
implementation.

• A Posterior Analysis − This is an empirical analysis of an algorithm. The


selected algorithm is implemented using programming language. This is
then executed on target computer machine. In this analysis, actual
statistics like running time and space required, are collected.

Algorithm analysis deals with the execution or running time of various


operations involved. The running time of an operation can be defined as
the number of computer instructions executed per operation.
Algorithm Complexity
Suppose X is an algorithm and n is the size of input
data, the time and space used by the algorithm X are
the two main factors, which decide the efficiency of X.

• Time Factor − Time is measured by counting the


number of key operations such as comparisons in the
sorting algorithm.
• Space Factor − Space is measured by counting the
maximum memory space required by the algorithm.

The complexity of an algorithm f(n) gives the running


time and/or the storage space required by the
algorithm in terms of n as the size of input data.
Space Complexity
Space complexity of an algorithm represents the amount of memory space
required by the algorithm in its life cycle. The space required by an
algorithm is equal to the sum of the following two components :

• A fixed part that is a space required to store certain data and variables, that
are independent of the size of the problem. For example, simple variables
and constants used, program size, etc.

• A variable part is a space required by variables, whose size depends on


the size of the problem. For example, dynamic memory allocation,
recursion stack space, etc.
Space complexity S(P) of any algorithm P is S(P) = C +
SP(I), where C is the fixed part and S(I) is the variable
part of the algorithm, which depends on instance
characteristic I. Following is a simple example that tries
to explain the concept −

Algorithm: SUM(A, B)
Step 1 - START
Step 2 - C ← A + B + 10
Step 3 - Stop

Here we have three variables A, B, and C and one


constant. Hence S(P) = 1 + 3. Now, space depends on
data types of given variables and constant types and it
will be multiplied accordingly.
Time Complexity
• Time complexity of an algorithm represents the
amount of time required by the algorithm to run to
completion. Time requirements can be defined as a
numerical function T(n), where T(n) can be measured
as the number of steps, provided each step consumes
constant time.
• For example, addition of two n-bit integers
takes n steps. Consequently, the total computational
time is T(n) = c ∗ n, where c is the time taken for the
addition of two bits. Here, we observe that T(n) grows
linearly as the input size increases.

You might also like