Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 12 kết quả

Đề tài: Tính tổng các số tự nhiên chẵn <=N bằng C#

  1. #1
    Ngày gia nhập
    12 2010
    Bài viết
    32

    Post Tính tổng các số tự nhiên chẵn <=N bằng C#

    Đề bài: tính tổng các số tự nhiên chẵn <= N.
    Các bạn xem lại dùm mình bài này xem còn cách code nào khác nữa không?
    Làm sao cho bớt được 1 vòng for ... Cám ơn các bạn ...

    Code:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace BT1_7
    {
        class Program
        {
            static void Main(string[] args)
            {
                System.Console.Write("Nhap n = ");
                int n = Int16.Parse(Console.ReadLine());
                float tong = 0;
                for (int i = 0; i <= n; i++)
                    if (i % 2 == 0)
                        System.Console.Write("{0} ", i);
                for (int i = 0; i <= n; i++)
                    if(i % 2 == 0)
                        tong = tong + i;
                        System.Console.Write("\nTong cac so tren la {0} ", tong);
                        System.Console.Read();
                    
            }
        }
    }

  2. #2
    Ngày gia nhập
    09 2011
    Nơi ở
    TP Hồ Chí Minh
    Bài viết
    37

    Code:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace BT1_7
    {
        class Program
        {
            static void Main(string[] args)
            {
                System.Console.Write("Nhap n = ");
                int n = Int16.Parse(Console.ReadLine());
                float tong = 0;
                for (int i = 0; i <= n; i++)
                {
                    if (i % 2 == 0)
                    {
                        tong = tong + i;
                        System.Console.Write("{0} ", i);
                    }
                }
                System.Console.Write("\nTong cac so tren la {0} ", tong);
                System.Console.Read();    
            }
        }
    }
    Nếu bạn mới học thì nên viết đầy đủ các dấu {} nhé, rút gọn đi không có lợi gì đâu, code đọc khó lắm
    p/s: ta là gấu

  3. #3
    Ngày gia nhập
    12 2010
    Bài viết
    683

    Tính tổng các số tự nhiên chẵn mà! nên bạn đặt int hay long gì đó chứ sao đặt float(là số thực mà). Output luôn là số nguyên

    Console trong VS thì mình chưa sài bao giờ nên cú pháp mình ko biết nữa!!!

    Nên viết hàm riêng cho sáng sủa trả về kiểu int như bạn muốn!

    int tong = 0;
    for (int i = 0; i <= n; i++)
    {
    if (i % 2 == 0)
    tong = tong + i;
    }
    return tong;

    C++ không biết đúng ko!!!

    Lâu quá ko ôn lại C++
    Đã được chỉnh sửa lần cuối bởi cchangkhongayngo : 17-09-2011 lúc 04:00 PM.

  4. #4
    Ngày gia nhập
    12 2010
    Bài viết
    32

    @ haiduong87: Mình cám ơn bạn nhiều
    @cchangkhongayngo: Cách của bạn đúng với C++ thôi chứ C# nó có báo lỗi đó
    Vì mới học môn này nên mình code còn xấu lắm ..:d

  5. #5
    Ngày gia nhập
    12 2010
    Bài viết
    1

    Mặc định Nen dung vong while cho no nhanh cung duoc

    vong for co ve cham hon chut

  6. #6
    Ngày gia nhập
    09 2010
    Nơi ở
    Cầu Giấy-HN
    Bài viết
    0

    Mặc định Tính tổng các số tự nhiên chẵn <=N bằng C#

    Bạn gộp 2 vòng for này lại
    Visual C# Code:
    1. for (int i = 0; i <= n; i++)
    2.                 if (i % 2 == 0)
    3.                     System.Console.Write("{0} ", i);
    4.  
    5. for (int i = 0; i <= n; i++)
    6.                 if(i % 2 == 0)
    7.                     tong = tong + i;
    8.                     System.Console.Write("\nTong cac so tren la {0} ", tong);
    9.                     System.Console.Read();


    ak, còn điều này này nữa, bạn không nên bê hết code vào trong hàm main, nên tạo một hàm ở ngoài rồi trong hàm main gọi lại hàm đó là đc. bạn có thể xem qua e.g của mềnh.

    Visual C# Code:
    1. using System;
    2. using System.Collections.Generic;
    3. using System.Text;
    4.  
    5. namespace tes1_1
    6. {
    7.     class Program
    8.     {
    9.         static void tinhtong()
    10.         {
    11.             Console.Write("Nhap N= ");
    12.             int n=int.Parse(Console.ReadLine());
    13.  
    14.             Console.Write("Cac so chan: ");
    15.  
    16.             int tong = 0;
    17.             for (int i = 2; i <= n;i++ )
    18.             {
    19.                 if (i%2==0)
    20.                 {
    21.                     Console.Write("{0,-5}",i); //Console.Write("{0,5}",i);tuong dung voi Console.Write("{0}     ",i);
    22.                     tong=tong+i;
    23.                 }
    24.  
    25.             }
    26.             Console.WriteLine();
    27.             Console.WriteLine("Tong cac so chan: {0}", tong);
    28.         }
    29.         static void Main(string[] args)
    30.         {
    31.             tinhtong();
    32.             Console.ReadKey();
    33.         }
    34.     }
    35. }
    Đã được chỉnh sửa lần cuối bởi langtusaubi : 20-09-2011 lúc 04:37 PM.

  7. #7
    Ngày gia nhập
    09 2011
    Nơi ở
    TP Hồ Chí Minh
    Bài viết
    37

    sao không thử cách này nhỉ?
    Code:
           private void TongCacSoChan(int n)
           {
                  int tong = 0;
                  for(int i = 0; i < n; i += 2)
                  {
                        tong += i;
                  }
           }
    code này chạy lẹ hơn, nhưng nếu in ra thì sẽ thừa số 0. Nếu viết thêm vài câu điều kiện nữa ở trên chắc sẽ giải quyết được
    p/s: ta là gấu

  8. #8
    Ngày gia nhập
    12 2010
    Bài viết
    683

    Trích dẫn Nguyên bản được gửi bởi haiduong87 Xem bài viết
    sao không thử cách này nhỉ?
    Code:
           private void TongCacSoChan(int n)
           {
                  int tong = 0;
                  for(int i = 0; i < n; i += 2)
                  {
                        tong += i;
                  }
           }
    code này chạy lẹ hơn, nhưng nếu in ra thì sẽ thừa số 0. Nếu viết thêm vài câu điều kiện nữa ở trên chắc sẽ giải quyết được
    Nếu không có mấy cái Console. thì cũng có khác gì đâu...

    Nhưng viết kiểu như bạn rõ ràng hơn....


    nên tách Main() riêng và các hàm or void xử lý riêng cho sáng sủa...

  9. #9
    Ngày gia nhập
    04 2010
    Bài viết
    1,534

    Muốn tránh 0 thì bắt đầu bằng 2.
    Để ý đề cũng bắt in ra từng con số. Nếu không cần phải in ra con sô i thì dùng công thức tổng số chẵn tính luôn, khỏi vòng lặp làm quái gì.

  10. #10
    Ngày gia nhập
    09 2011
    Nơi ở
    TP Hồ Chí Minh
    Bài viết
    37

    Trích dẫn Nguyên bản được gửi bởi VoTichSu Xem bài viết
    Muốn tránh 0 thì bắt đầu bằng 2.
    Để ý đề cũng bắt in ra từng con số. Nếu không cần phải in ra con sô i thì dùng công thức tổng số chẵn tính luôn, khỏi vòng lặp làm quái gì.
    @VoTichSu: Thường khi đi học người ta sẽ muốn bạn làm quen với mấy cái vòng for đó. Chứ công thức thì có ý nghĩa gì đâu bạn. Chắc đi làm lâu quá rồi quên

    @cchangkhongayngo: bạn đọc kỹ lại tí nhé.
    p/s: ta là gấu

Các đề tài tương tự

  1. Sản phẩm từ tự nhiên - đồ gỗ tự nhiên
    Gửi bởi luuthily90 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 05-03-2013, 02:23 PM
  2. Sản phẩm từ tự nhiên - đồ gỗ tự nhiên
    Gửi bởi baobinh trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 01-03-2013, 03:38 PM
  3. Bài tập C số chẵn số lẻ
    Gửi bởi trungthienckc trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 28-10-2011, 12:10 AM
  4. Bài tập C Tạo ngẫu nhiên mảng 2 chiều vuông 4X4 với các phần tử tạo ngẫu nhiên trong đoạn[0,50]
    Gửi bởi truongtrungviet trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 16
    Bài viết cuối: 16-04-2011, 08:06 AM
  5. Bài tập C++ cách sử dụng hàm in ra các số tự nhiên chẵn trong n số tự nhiên đầu tiên
    Gửi bởi tictic trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 17-04-2010, 01:17 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn