Từ 1 tới 2 trên tổng số 2 kết quả

Đề tài: xây dựng lớp số nguyên dương rồi đọc số đó, xem giúp mình đã chuẩn chưa?

  1. #1
    Ngày gia nhập
    09 2011
    Bài viết
    6

    Red face xây dựng lớp số nguyên dương rồi đọc số đó, xem giúp mình đã chuẩn chưa?

    Đề bài là xây dựng lớp số nguyên dương(unsigned long) trong đó có phương thức hiển thị xâu ký tự mô tả giá trị của số.VD 10035 đọc là mười nghìn không trăm ba mươi lăm.
    em làm như sau mà không biết có đúng không( cái này là em sưu tầm được rồi sửa lại nên cũng khó hiểu.mọi người xem giúp e nhé! thanks all!
    Code:
    #include<iostream.h>
    #include<conio.h>
    class nguyenduong
    {
    	private:
    	  int n;
        public:
          void nhap();
          void doc();
    };
    void nguyenduong::nhap()
    {
    	do
    	{
    		cout<<"Nhap so vao:";
    		cin>>n;
    	}while(n<=0);
    }
    void nguyenduong::doc()
    {
    	char s[50] = "";
    	char *bachuso(unsigned int n);
    		{
                char kyso[10][5]= {"", "mot", "hai", "ba", "bon", "nam", "sau",
                        "bay", "tam", "chin"};
                int donvi, chuc, tram;
    			s[0] = 0;
                donvi = n % 10;
                n /= 10;
                chuc = n % 10;
                tram = n / 10;
                if (tram > 0) 
    				{
                        cout<<" tram ";
                    }
      if (chuc > 0)
      {
        if (chuc== 1)
           cout<< "muoi ";
        else
        {
            cout<<kyso[chuc];
           cout<< " muoi ";
        }
      }
      if (donvi > 0)
      {
         if (chuc == 0 && tram != 0)
           cout<<"le ";
         if (donvi == 1)
           cout<< "mot";
         else if (donvi == 5 && (chuc != 0 || tram != 0))
           cout<< "lam";
         else if (donvi == 5 && (chuc = 0 || tram != 0))
           cout<< "nam";
         else
           cout<<kyso[donvi];
      }
    }
    }
    void main()
    {
    	int n,tram,chuc,donvi;
    	unsigned ngan, trieu, ty;
    	cout<<"Nhap so can doc:";
    	cin>>n;
    	cout<<"\nSo duoc doc thanh chu la:\n";
    	  if (n == 0)
        cout<<"khong";
      else
      {
         donvi = n % 1000;
         n /= 1000;
         ngan = n % 1000;
         n /= 1000;
         trieu = n % 1000;
         ty = n / 1000;
         if (ty > 0)
           cout<<bachuso(ty)<<" ty ";
         if (trieu > 0)
           cout<<" trieu "<<bachuso(trieu);
         if (ngan > 0)
           cout<<" ngan "<< bachuso(ngan);
         if (donvi > 0)
          cout<<""<< bachuso(donvi);
      }
    }

  2. #2
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Cách vọc code sưu tầm (small projects)
    1. Down về compile
    2. Đọc hiểu vấn đề mà nó đang giải quyết.
    3. Chạy vài trường hợp xem kết quả nó có đúng chưa.
    4. Xóa bớt một vài hàm, bắt đầu từ main() và chạy lại.
    5. Xóa tiếp, rồi viết lại từng hàm.

    Code đó là rất tồi, ví dụ:
    C++ Code:
    1.    char kyso[10][5]= {"", "mot", "hai", "ba", "bon", "nam", "sau",
    2.                     "bay", "tam", "chin"};
    Dùng constant trong hàm thì nó bắt buộc phải là static!
    Ví vậy, cách tốt nhất là viết lại từng hàm nhỏ trong bài này, dựa vào cái sườn đã có của nó. Viết sai chỗ nào, không hiểu chỗ nào thì bạn cứ hỏi.

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

  1. Mã nguồn C Lỗi Tìm giúp lỗi code C chuẩn hóa văn bản
    Gửi bởi minhtri01 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 03-05-2013, 08:35 PM
  2. TP HCM Chuẩn bị đi test Công Ty Fujinet, mong được giúp đỡ?
    Gửi bởi tungtrum17 trong diễn đàn Tuyển dụng - Việc làm CNTT
    Trả lời: 4
    Bài viết cuối: 24-05-2012, 12:16 PM
  3. Bài tập C cần giúp phần nhỏ trong bài chuẩn hoá chuỗi!
    Gửi bởi mr.cuong_tq trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 26-11-2011, 01:32 AM
  4. code chuẩn hóa xâu trong lập trình C#. Giúp em?
    Gửi bởi thangcun trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 7
    Bài viết cuối: 30-12-2010, 01:51 PM
  5. Lập trình C++ Số thực sang dạng nhi phân 32bit chuẩn IEEE754 - giúp e tìm lỗi
    Gửi bởi alonedtk trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 11-11-2010, 05:00 AM

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