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ố 13 kết quả

Đề tài: Kiểm tra tính chẵn lẻ của một số

  1. #1
    Ngày gia nhập
    07 2007
    Nơi ở
    Sơn La
    Bài viết
    133

    Mặc định Kiểm tra tính chẵn lẻ của một số

    Cho các bạn một bài làm cho vui nhé.
    Nhập vào một chuỗi chỉ gồm các ký tự 0 và 1.
    Không đếm ( tức là không có dùng các biến đếm và không được dùng các biến để so sánh số các ký tự 0 với số các ký tự 1).
    Yêu cầu xuất ra màn hình :
    nếu các ký tự 0 và 1 chẵn thì output:
    (1)
    Chuoi gồm chẵn các ký tự 0 và chẵn các ký tự 1.
    Ngược lại:
    (2)
    Chuoi gồm lẻ các ký tự 0 và lẻ các ký tự 1 .
    ex: chuỗi 01010110 thì input là trường hợp (1)
    Chuỗi 1100011 thì input là trường hợp (2)
    Một bài đơn giản làm cho vui ấy mờ .
    Đã được chỉnh sửa lần cuối bởi NT_OnlyLove : 21-01-2008 lúc 12:05 AM. Lý do: In nhầm ( đã đính chính lại )
    Trao đổi kiến thức sẽ giúp ta tiếp cận nhanh với kiến thức.

  2. #2
    Ngày gia nhập
    11 2007
    Bài viết
    153

    Mình không hiểu ý đề bài cho lắm :-?
    Nếu chuỗi 0 và 1 chẵn thì output ra trường hợp 1:
    010101111
    Ở đây xét kiểu gì với 0 và 1 chẵn vậy :-?Nếu 0 ở vị trí là 0,2,4 tức là chẵn còn với 1 thì sao? 6 số 1 tính là chẵn à?
    Còn chuỗi 0 và 1 lẻ thì thế nào:
    11000101
    Ở đây là cái nào là lẻ vậy?

  3. #3
    Ngày gia nhập
    11 2007
    Bài viết
    47

    Đề bài chả rõ ràng gì cả?
    Thế trường hợp chẵn chữ số 0, lẻ chữ số 1 hoặc lẻ chữ số 0, chẵn chữ số 1 thì in ra cái gì?

    ex: chuỗi 010101111 thì input là trường hợp (1)

    chuỗi trên có 3 chữ số 0, 6 chữ số 1 mà lại là trường hợp 1 à?

  4. #4
    Ngày gia nhập
    07 2007
    Nơi ở
    Sơn La
    Bài viết
    133

    Trời.
    Thế nào là chẵn các ký tự vậy hai bạn?
    Có nghĩa là:
    Trong chuỗi đó mà tổng các ký tự 1 và tổng các ký tự 0 là một số chẵn thì (1)
    Ngược lại nếu một trong hai cái đó lẻ hoặc cả hai thì (2)

    chuỗi trên có 3 chữ số 0, 6 chữ số 1 mà lại là trường hợp 1 à?
    Sorry bạn, mình đã đính chính lại rồi.
    Đã được chỉnh sửa lần cuối bởi NT_OnlyLove : 21-01-2008 lúc 12:06 AM.
    Trao đổi kiến thức sẽ giúp ta tiếp cận nhanh với kiến thức.

  5. #5
    Ngày gia nhập
    08 2006
    Bài viết
    59

    Tui nghĩ có thể xài XOR:
    A xor 0 -> A
    A xor A -> 0

    (hiểu biết nông cạn; có gì sai sót mong được góp ý; xin cám ơn)

    -thân

  6. #6
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,006

    Mặc định Kiểm tra tính chẵn lẻ của một số

    đọc đề bài này mà hiểu chết liền ?

    110 thì rơi vào trường hợp (1) hay (2)

  7. #7
    Ngày gia nhập
    10 2007
    Nơi ở
    HCM
    Bài viết
    46

    Trích dẫn Nguyên bản được gửi bởi langman
    110 thì rơi vào trường hợp (1) hay (2)
    cau tra loi day ne ban
    Trích dẫn Nguyên bản được gửi bởi NT_OnlyLove
    Trong chuỗi đó mà tổng các ký tự 1 và tổng các ký tự 0 là một số chẵn thì (1)
    Ngược lại nếu một trong hai cái đó lẻ hoặc cả hai thì (2)

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

    Code:
    đọc đề bài này mà hiểu chết liền ?
    
    110 thì rơi vào trường hợp (1) hay (2)
    110 là trường hợp 2 đó bạn . Do trường hợp 1 là số phần tử 1 chẵn số phần tử 0 chẵn . Ta suy ra ngược lại chính là số phần tử 1 lẻ hay số phần tử 0 lẻ .

    Về cách giải em nghĩ như sau . Nhập dãy 0 và 1 ấy vào 1 mảng có 1 số lượng phần tử xác định . Tức là nhập n trước ấy ( chiều dài trước ấy ) .Sau đó xét n .
    Code:
    1.Nếu n lẻ --->TH2
    2.Nếu n chẵn ---> tính tổng các phần tử trong mảng  
     2.1 Nếu tổng chẵn ---> TH1
     2.2 Nếu tổng lẻ ---> TH2
    Đã được chỉnh sửa lần cuối bởi sieuphuong : 22-01-2008 lúc 09:19 AM.

  9. #9
    Ngày gia nhập
    07 2007
    Nơi ở
    Sơn La
    Bài viết
    133

    Trích dẫn Nguyên bản được gửi bởi bete Xem bài viết
    Tui nghĩ có thể xài XOR:
    A xor 0 -> A
    A xor A -> 0

    (hiểu biết nông cạn; có gì sai sót mong được góp ý; xin cám ơn)

    -thân
    Cách này không ra được, bạn có thể post lên code xem có được không?

    Trích dẫn Nguyên bản được gửi bởi sieuphuong
    Về cách giải em nghĩ như sau . Nhập dãy 0 và 1 ấy vào 1 mảng có 1 số lượng phần tử xác định . Tức là nhập n trước ấy ( chiều dài trước ấy ) .Sau đó xét n .


    Code:
    1.Nếu n lẻ --->TH2
    2.Nếu n chẵn ---> tính tổng các phần tử trong mảng  
     2.1 Nếu tổng chẵn ---> TH1
     2.2 Nếu tổng lẻ ---> TH2
    1.n không giới hạn
    2.Bạn thử nghĩ trường hợp 2.1 nếu tổng chẵn thì vẫn là đếm rồi. Với lại nếu số phần tử 1 lẻ và số phần tử 0 lẻ thì tổng sẽ thế nào? -> tổng vẫn chẵn.
    Còn trường hợp 2.2 thì do không giới hạn ký tự nhập vào nên không xác định như vậy được.

    Nói chung các bạn post code lên , rồi mọi người cùng coi.
    Thân!
    Trao đổi kiến thức sẽ giúp ta tiếp cận nhanh với kiến thức.

  10. #10
    Ngày gia nhập
    11 2006
    Bài viết
    633

    Mọi người đang bị cuốn vào việc xử lý số nhị phân rồi, thay vì suy nghĩ cách để ko phải đếm mà vẫn ra kết quả chính xác sao ta ko nghĩ nó ko phải là string mà là 1 con số và máy có thể nhận biết được nó. Gợi mở thế thôi, còn lại bà con nghiên cứu tiếp nhé, chuyện vui còn nằm phía sau ^^

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

  1. Lập trình C Bài tập in ra những số chẵn
    Gửi bởi trantaneri1993 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 5
    Bài viết cuối: 24-09-2013, 08:02 PM
  2. Cách tạo ma phương chẵn?
    Gửi bởi dehin trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 7
    Bài viết cuối: 22-12-2012, 02:32 PM
  3. Kỹ thuật C sắp xếp chẵn lẻ xen kẻ
    Gửi bởi hoclap trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 0
    Bài viết cuối: 10-07-2012, 09:45 PM
  4. 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
  5. Mảng trên C++ tìm tổng chẵn, lẻ của mảng
    Gửi bởi jimhawkins trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 3
    Bài viết cuối: 13-10-2011, 08:42 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