Cách tính tổng các số lẻ từ 1 đến N trong C#
Trong bài viết này mình sẽ hướng dẫn các bạn cách tính tổng các lẻ chẵn từ 1 đến N trong C#. Đây là bài tập áp dụng kiến thức về vòng lặp while, for và điều kiện if trong C#.
Trước khi đi vào viết chương trình, chúng ta cùng tìm hiểu qua số lẻ là gì và cách để kiểm tra một số có phải số lẻ hay không.
Số lẻ là số chia cho 2 và dư 1, ví dụ: 1, 3, 5, 7, ... .
Vậy làm thế nào để kiểm tra được số nào là số lẻ, đơn giản ta chỉ cần sử dụng câu lệnh if, else để kiểm tra. Nếu number % 2 == 1 (nghĩa là chia cho 2 dư 1) thì number là số lẻ, ngược lại thì không phải là số lẻ.
Bài viết này được đăng tại [free tuts .net]
if(number % 2 == 1){ //đây là số lẻ } else{ //đây không phải là số lẻ }
Để tính tổng được các số lẻ, ta sẽ sử dụng thêm vòng lặp for, hoặc vòng lặp while để lặp và tính tổng.
for(int i = 1; i <= number; i += 2){ sum += i; }
Hoặc:
while(i <= number){ sum += i; i += 2; }
1. Thuật toán tìm tổng các số lẻ
Bước 1: Khai báo một biến number và lưu giá trị giới hạn để tính tổng các số lẻ.
Bước 2: Khai bao biến sum để lưu kết quả của phép tính.
Bước 3: Thực hiện một vòng lặp for lặp từ i = 1 (số lẻ đầu tiên) đến i < number với bước nhảy là i += 2.
for(int i = 1; i <= number; i += 2){ sum += i; }
2. Tính tổng các số lẻ từ 1 đến n sử dụng vòng lặp for
Trong chương trình dưới đây mình sử dụng vòng lặp for để thực hiện lặp và tính tổng các số lẻ từ 1 đến n được nhập từ bàn phím.
using System; using System.Linq; using System.Text; using System.Collections.Generic; namespace ConsoleApp5 { class Program { static void Main(string[] args) { //khai báo biến sum = 0 để lưu kết quả phép tính int sum = 0; //lấy đầu vào từ người dùng Console.Write("Nhap vao so number: "); int Number = Convert.ToInt32(Console.ReadLine()); //sử dụng vòng lặp for để lặp và tính tổng các số lẻ từ i = 1 đến number Console.Write($"Cac so le tu 1 den {Number} la :"); for(int i = 1; i <= Number; i += 2) { Console.Write(i + " "); sum += i; } //hiển thị sum ra màn hình Console.Write($"\nTong cac so le tu 1 den {Number} la : {sum}"); Console.WriteLine("\n----Chuong trinh nay duoc dang tai Freetuts.net----\n"); Console.ReadLine(); } } }
Kết quả:
3. Tính tổng các số lẻ từ 1 đến n sử dụng vòng lặp while
Trong chương trình này mình sẽ sử dụng vòng lặp while để tính tổng các số lẻ từ 1 đến n. Việc này cũng tương tự như vòng lặp for, vì về cơ bản thì cả hai đều sử dụng để lặp và tính tổng.
using System; using System.Linq; using System.Text; using System.Collections.Generic; namespace ConsoleApp5 { class Program { static void Main(string[] args) { //khai báo biến sum = 0 để lưu kết quả phép tính int sum = 0, i = 1; //lấy đầu vào từ người dùng Console.Write("Nhap vao so number: "); int Number = Convert.ToInt32(Console.ReadLine()); //sử dụng vòng lặp while để lặp và tính tổng các số lẻ từ i = 1 đến number Console.Write($"Cac so le tu 1 den {Number} la :"); while(i <= Number) { Console.Write(i + " "); sum += i; i += 2; } //hiển thị sum ra màn hình Console.Write($"\nTong cac so le tu 1 den {Number} la : {sum}"); Console.WriteLine("\n----Chuong trinh nay duoc dang tai Freetuts.net----\n"); Console.ReadLine(); } } }
Kết quả:
Trên đây là hai chương trình tính tổng các số lẻ từ 1 đến n trong C#. Các bạn hãy luyện tập thật nhiều để rèn luyện nhé, chúc các bạn thành công !!!