﻿ C++ - Print an integer with commas as thousands separators

# C++ String Exercises: Print an integer with commas as thousands separators

## C++ String: Exercise-29 with Solution

Write a C++ program to print a given integer with commas separating the thousands.

Sample Data:
(1000) -> "1,000"
(10000) -> "10,000"
(23423432) -> " 23,423,432"

Sample Solution-1:

C++ Code:

``````#include <bits/stdc++.h> // Include all standard libraries

using namespace std; // Using the standard namespace

// Function to format an integer with commas as thousands separators
string test(int n) {
string result = to_string(n); // Convert integer 'n' to a string and store it in 'result'

// Loop to insert commas for thousands separators in the string
for (int i = result.size() - 3; i > 0; i -= 3) {
result.insert(i, ","); // Insert a comma after every three digits from the end
}

return result; // Return the formatted string
}

int main() {
int n; // Declare an integer variable to store user input

cout << "Input a number: ";
cin >> n; // Input an integer from the user

cout << "\nPrint the said integer with commas as thousands separators:\n";
cout << test(n) << endl; // Output the formatted integer with commas
}
``````

Sample Output:

```Input a number:
Print the said integer with commas as thousands separators:
5,000
```

Flowchart:

Sample Solution-2:

C++ Code:

``````#include <bits/stdc++.h> // Include all standard libraries

using namespace std; // Using the standard namespace

// Function to format an integer with commas as thousands separators
string test(int n) {
string result_str = to_string(n); // Convert the integer 'n' to a string and store it in 'result_str'

// Check if the length of the string is greater than 3 (to insert commas for thousands separators)
if (result_str.length() > 3) {
// Loop to insert commas for thousands separators in the string
for (int i = result_str.length() - 3; i > 0; i -= 3) {
result_str.insert(i, ","); // Insert a comma after every three digits from the end
}
}

return result_str; // Return the formatted string
}

int main() {
int n; // Declare an integer variable to store user input

cout << "Input a number: ";
cin >> n; // Input an integer from the user

cout << "\nPrint the said integer with commas as thousands separators:\n";
cout << test(n) << endl; // Output the formatted integer with commas
}
``````

Sample Output:

```Input a number:
Print the said integer with commas as thousands separators:
5,000
```

Flowchart:

C++ Code Editor: