Suggesting Error Corrections in Natural Number Addition – Computer Sir Ki Class

Login


Lost your password?

Don't have an account ?
Register (It's FREE) ×
  

Login
[lwa]



Solved Problem! #CPP#3221 siteicon   siteicon   siteicon  

Problem Statement - Suggesting Error Corrections in Natural Number Addition

A student has written this program to sum natural numbers from 1 to 10. His program is not giving correct results. Please help in correcting this program with right explanations as well.

TC++ #3221

 

Solution


int sum;  //ERROR
This is in error as the sum variable is used for successive summing, so it must begin with 0. The correct syntax would be
Corrected: int sum=0;

for(int n=1;n<10;n++)    //ERROR
Since the user wants to sum from 1 to 10, both inclusive, so this loop will run from 1 to 10 as following
Corrected:  for(int n=1;n<=10;n++)
{
sum=sum+n; //OK

n++;                  //ERROR
This line should be removed as incrementing is already being done in the for loop. This kind of line is required in while loop and usually not in for loop.

Corrected: This line should be deleted.

}
cout<<“Sum of natural numbers upto 10 = “<<sum<<endl; //OK

 

Notes

  • One must remember the initialisation thumb rule that all variables which are needed for counting summing etc. must be set to 0 as initialised as per program requirement.  Modern programmers suggest that initialisation of every variable should be done.
  • The loop range must be manually confirmed for number of times it will run.Based on this operator selection as < or <= is done. Commonly loops that begin with 0 have < operator. But one can not make this a general rule. Every problem has its own requirement, so trying to establish that how many times a loop will run is the best practice.


Share

sunmitra| Created: 31-Jan-2018 | Updated: 15-Sep-2018|






×
Introductory Sessions Beginning to Program Tokens Keyword and Identifiers Data Types Variables and Constants Operators Simple User Input Building Expressions and Formulas Simple Real World Problems Simple If and If Else Multiple-Nested-Ladder of If Else Switch case selection Simple Loops Tricks in Loops - break continue scope Loop Applications - Handling numerals Series printing loops Nested Loops Pattern printing loops Number Varieties and Crunches String Handling (Null Terminated) Strings - string class type Functions (Built-in) Functions - user defined Functions Reference Passing/Returning Arrays Concepts and 1-D Arrays Array Data Management Two dimensional arrays and Matrices Structures Basics Structures passing/returning Display Using IO Manipulation Display Using C Formatting Tricks User Defined Data Types Enumerated Types Preprocessor Directives And Macros Exception Handling Programming Paradigms and OOPs Advantages Abstraction and Encapsulation Polymorphism Inheritance Function Overloading Concepts Function Overloading Varieties Function Overloading Special Cases Defining Classes Creating and Using Class Objects Class Members Accessibility Class Function Types Inline Functions Constant Functions Nesting of Functions Class Members Scope Resolution Static Members in a Class Array of Objects Constructor Concepts Default Constructor Parameterized Constructor Copy Constructor Constructor Overloading Destructors Inheritance Fundamentals Public Derivations Private and Protected Derivations Multiple Inheritance Mult-Level Inheritance Class Nesting Data File Concepts Handling Text Files Handling Binary Files Pointer Concepts Pointer and Arrays Pointers and Functions Object Pointers This Pointer Linked Lists Stacks Queues


Back