Skip to main content

An Introduction To Programming Through C++ || NPTEL Week-3 Programming Assignment 3.2

 Write a program to find the sum of the digits of a given integer N.


Solving this problem is easy manually if the number is given to you on paper: you simply see the digits written down and you can add them up.  A computer program does not “see” the digits.  However, you can get the least significant digit by taking the remainder modulo 10, using the % operator.  You can determine the number resulting from erasing the least significant digit of an integer x by dividing x by 10.  As you know x/10 will equal the quotient, which is exactly what remains if you erase the last digit of x.  If you now take the remainder of this modulo 10 you will get the second least significant digit.  Thus by alternately taking the remainder modulo 10 and dividing by 10 you will be able to obtain the different digits.  So then you can add them up.  All that remains is to put this into a nice loop.


INPUT:


N (1<=N<=1000000000).  The upper bound for N is set at 109 so that the numbers will fit in standard int.


OUTPUT:


Sum of digits of N.





SOLUTION:


int main() { int N, s = 0; cin >> N; if (N <= 0 || N >= 1000000000) { exit(0); } else { while (N != 0) { s = s + N % 10; N = N / 10; } cout << s << endl; } return 0; }





Comments

Popular posts from this blog

Can Chat GPT Predict About Stock Market

Can ChatGPT predict the stock market? To answer this question, it's crucial to understand how ChatGPT operates. Developed by OpenAI, ChatGPT is an advanced artificial intelligence language model capable of comprehending and responding to natural language input. It engages in human-like conversations with users, having been trained on extensive text data using a deep neural network. Primarily used for applications like chatbots, virtual assistants, and customer service interactions, ChatGPT's versatility allows it to understand and respond to a wide array of topics. The model employs a deep learning architecture known as a transformer model, trained on a substantial corpus of text data. This training enables the model to grasp natural language intricacies and the connections between words and phrases. When a user inputs text, ChatGPT processes it through the transformer model, generating a response based on its understanding of the input text. Techniques such as attention mechan...

Web Based Technologies and Multimedia Applications || NPTEL WEEK 1 ASSIGNMENT SOLUTIONS

1.) The following are different ways of sharing information through Internet   Posting to Social Network   Uploading to cloud storage such as Google Drive   Sending through a mailing list   All of the above Answer: All of the above  2.) The following is a website where entries are written as commentary or news on a particular subject such as food, politics, or local news   Blog   Twitter   Instagram   None of the above Answer: Blog 3.) FTP stands for   Food Transfer Programme   File Transfer Protocol   File Transfer Programming   Facebook To Python Answer: File Transfer Protocol 4.) The following enables access to computing resources remotely   FTP   VPN   Blog   Twitter Answer: VPN 5.) The following allows an Internet host Computer to become a terminal of another host on the Internet   TELNET   Google Groups   Microsoft OneDrive   None of the above Answer: TELNET 6.) To which protoc...

An Introduction To Programming Through C++ || NPTEL Week-3 Programming Assignment 3.1

  You are currently at the origin (0, 0) and will be given commands to either go Right (R), Left (L), Up (U) or Down (D) by a certain number of steps. At the end of all these commands, you will be signaled to stop by reading the character ‘E’, after which you need to output your position in the x-y plane. The four kinds of movements are the following (direction followed by number of steps in that direction): R number_of_steps : You need to increase your x-coordinate by “number_of_steps”. L number_of_steps : You need to decrease your x-coordinate by “number_of_steps”. U number_of_steps : You need to increase your y-coordinate by “number_of_steps”. D number_of_steps : You need to decrease your y-coordinate by “number_of_steps”. INPUT: Direction number_of_steps (a character and integer separated by a space) . . .  E (command to stop) OUTPUT: x y SOLUTION: int main() { char U, D, R, L, E; int x = 0, y = 0; int steps; char direction; while (1) { c...