Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 2 của 2
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Đánh vần một số tiếng Việt trong lập trình C

    1) Đề bài: Nhập số vào textbox (tối đa 4 chữ số), hiển thị kết quả ra label ngay lập tức, xóa đi 1 từ nó vẫn hiện đúng.
    Ví dụ:
    15 -> Mười lăm
    131 -> Một trăm ba mươi mốt
    105 -> Một trăm lẻ năm
    1025 -> Một ngàn không trăm hai mươi lăm

    2) Bài này em nghĩ là làm sự kiện textchange của textbox.

    3) Em đã làm theo if else, switch(chữ số) rồi case, nhưng thấy nó phụ thuộc nhau nhiều quá và khá rườm rà, thậm chí là ko làm ra T.T
    Em nghĩ là phải khử sự phụ thuộc lẫn nhau giữa những chữ số rồi mới "hàm hóa" bài tập này được.
    Vd:
    11 -> số một đầu phụ thuộc vào số một đầu, nó mới được đọc là "mười".
    121 -> số một cuối phụ thuộc vào số chữ số và số 2 đứng trước nó, nó được đọc là "mốt".
    15 -> số 5 lại được đọc là "lăm".
    1025 -> số 0 được đọc là "không trăm", khác với trường hợp 1000, số "không" hoàn toàn không được đọc.

    Chỉ giúp em cách làm nào ngắn gọn dễ hiểu ấy [IMG]images/smilies/21.gif[/IMG] .

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    hix mấy bài nì nên viết ra giấy toàn bộ các trường hợp ...
    với 4 chữ số thì
    nếu số 5 ở hàng đơn vị và trước nó ko có số nào thì đọc là "năm"
    nếu số 5 ở hàng đơn vị , trước nó là 0 thì là "lẻ năm"
    nếu số 5 ở hàng đơn vị , trước nó là một số khác 0 thì là "lăm" ...
    ... x_x
    bài này hình như hồi trước có bạn Math-Info làm rồi với rất nhiều chữ số, cậu search lại trong forum đi, good luck !

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •