Bài tập viết chương trình tính tổng các chữ số chẵn của số nguyên dương n bằng C / C++. Để hiểu được chương trình các bạn cần có kiến thức cơ bản về C và C++
Bạn đang xem: tính tổng các chữ số của n trong c
Tóm Tắt
Tính tổng các chữ số chẵn của số nguyên dương n bằng C / C++
Trong bài viết này chúng ta sẽ thực hiện chương trình tính tổng các chữ số chẵn của số nguyên dương n bằng C / C++. Để hiểu được chương trình các bạn cần có kiến thức cơ bản về C và C++.
Bài viết này được đăng tại
freetuts.net
, không được copy dưới mọi hình thức.
Mình sẽ thực hiện hai chương trình để tính tổng các chữ số chẵn bằng hai ngôn ngữ khác nhau là C và C++.
Tính tổng các chữ số chẵn của số nguyên dương n bằng C
Ta cần khai báo hai biến n là số cần tính tổng các chữ số lẻ và temp là biến thay thế cho n để tính tổng. Một biến S = 0 để lưu tổng các chữ số lẻ.
Sử dụng vòng lặp do..while để yêu cầu người dùng nhập vào số nguyên dương n, nếu n <= 0 thì yêu cầu nhập lại.
do { printf("nNhập vào số nguyên n lớn hơn 0: "); scanf("%ld", &n); if(n <= 0) { printf("n Số n phải lớn hơn 0, vui lòng nhập lại !"); } }while(n <= 0);
Tiếp đến gán temp = n, ta sẽ sử dụng biến temp để thay thế cho n tính tích các chữ số.
Sử dụng một vòng lặp while với điều kiện n != 0, bên trong vòng while ta tính tổng các chữ số chẵn của n.
temp = n; while(temp != 0) { if(temp % 2 == 0) { S = S + temp % 10; } temp = temp / 10; }
Sau khi kết thúc vòng lặp while ta được tổng các chữ số lẻ là S, khi đó chỉ cần hiển thị S ra màn hình bằng printf().
Code:
#include<stdio.h> #include<math.h> int main() { //khai báo biến long temp, n; int S = 0; //sử dụng dowhile để yêu cầu người dùng nhập vào só lớn hơn 0 //nếu n < 0 thì yêu cầu nhập lại do { printf("nNhập vào số nguyên n lớn hơn 0: "); scanf("%ld", &n); if(n <= 0) { printf("n Số n phải lớn hơn 0, vui lòng nhập lại !"); } }while(n <= 0); //gán biến n cho temp, ta sẽ sử dụng temp để đếm các chữ số temp = n; while(temp != 0) { if(temp % 2 == 0) { S = S + temp % 10; } temp = temp / 10; } printf("nTổng các chữ số chẵn của %ld là: %d",n,S); printf("n--------------------------------------n"); printf("Chương trình này được đăng tại Freetuts.net"); }
Kết quả:
Tính tổng các chữ số chẵn của số nguyên dương n bằng C++
Việc tính tổng các chữ số lẻ của số nguyên dương n bằng C++ cũng tương tự như ngôn ngữ C, vì về cơ bản thì hai ngôn ngữ này khá tương đồng nhau.
Ta chỉ cần thay thế printf() và scanf() trong C bằng cout và cin trong C++. Nhớ khai báo thư viện trước khi sử dụng nó nhé.
#include<iostream> #include<math.h> using namespace std; int main() { //khai báo biến long temp, n; int S = 0; //sử dụng dowhile để yêu cầu người dùng nhập vào só lớn hơn 0 //nếu n < 0 thì yêu cầu nhập lại do { cout<<"nNhập vào số nguyên n lớn hơn 0: "; cin>>n; if(n <= 0) { cout<<"n Số n phải lớn hơn 0, vui lòng nhập lại !"; } }while(n <= 0); //gán biến n cho temp, ta sẽ sử dụng temp để đếm các chữ số temp = n; while(temp != 0) { if(temp % 2 == 0){ S = S + temp % 10; } temp = temp / 10; } cout<<"nTổng các chữ số chẵn của "<<n<<" là: "<< S; cout<<"n--------------------------------------n"; cout<<"Chương trình này được đăng tại Freetuts.net"; }
Kết quả:
Như vậy là chúng ta đã thực hiện xong chương trình tính tổng các chữ số chẵn của số nguyên dương n bằng C / C++. Các bạn có thể tham khảo các bài tập khác tại Tổng hợp 1000 bài tập C / C++ nhé, chúc các bạn thành công !!!
Câu hỏi thường gặp liên quan: