Announcement

Collapse
No announcement yet.

Giúp em bài C này với (chuyển cơ số 10 sang cơ số 2)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Giúp em bài C này với (chuyển cơ số 10 sang cơ số 2)

    Đề bài:Viết chưong trình chuyển từ hệ 10 sang hệ 2.
    Thank trước nha.
    Last edited by BiThuDoan; 04-12-2011, 20:55.

  • #2
    Originally posted by 11520572 View Post
    Đề bài:Viết trường trình chuyển từ hệ 10 sang hệ 2.
    Thank trước nha.
    Em gặp khó khăn gì mới giúp được chứ?

    Comment


    • #3
      Quy tắc chuyển từ hệ 10 sang hệ thập phân là lấy số số đó chia cho 2 cho đến khi không chia được (thương <2)và lấy nghịc đảo phần dư.
      Ví dụ: đổi 4(hệ 10) sang hệ nhị phân: 4/2 =2 (dư 0), 2/2 =1 (dư 0), 1 /2 = 0 (dư 1) (lưu ý là dấu / nà là chia trong môn toán, còn trong lập trình thì đổi sang %). Sau đó, ta chỉ việc viết ngược lại các số dư : 100 thì được kết quả.
      Vậy trong lập trình em dùng một mảng lưu các số dư của mỗi lần thực hiện phép chia. Khi nào không chia được nữa thì kết quả chính là mảng lưu kết quả của em từ cuối đền đầu (hoặc có thể lưu lại kết quả vào mảng khác bằng cách gán ngược)

      Comment


      • #4
        em không biết làm sao để lấy ngược lại.
        mà em chưa học phần mảng nữa chứ.

        Comment


        • #5
          Cái yêu cầu mà cũng viết sai lỗi chính tả nữa, bó tay. Bài này cơ bản mà bạn. Nếu bạn hiểu việc chuyển đổi hệ số từ thập phân sang nhị phân bằng việc chia đôi dần và lấy phần dư của phép chia cho 2 thì bạn làm việc này đơn giản thôi. Có nhiều biện pháp: dùng vòng lặp for, while hay đệ qui...
          Mình sẽ mô tả cho bạn về vòng lặp như sau:
          Có mảng a[] để lưu kết quả
          int i=0;
          while(n==1)
          {
          a[i]=n%2;
          n/=2;
          i++;
          }
          Kết quả sẽ lưu ra mảng a[] cho bạn.

          Comment


          • #6
            Originally posted by 11520572 View Post
            em không biết làm sao để lấy ngược lại.
            mà em chưa học phần mảng nữa chứ.
            vậy thì bây giờ bạn học đi, nhanh mà
            Hãy là chính mình!

            Comment


            • #7
              PHP Code:
              #include <stdio.h>
              int convert(int i)
              {
                  if (
              0)
                  {
                      
              convert (i/2);
                      
              printf("%d",i%2);
                  }
              }
              void main()
              {
                  
              int i;
                  
              printf("Input: ");
                  
              scanf("%d",&i);
                  
              convert(i);

              https://sites.google.com/view/tri-hai-nguyen

              Comment


              • #8
                Originally posted by 11520572 View Post
                em không biết làm sao để lấy ngược lại.
                mà em chưa học phần mảng nữa chứ.
                Phần mảng trong các sách lập trình cơ bản (ở trường mình dạy bằng C), bạn tự tìm hiểu .
                Còn việc lấy ngược lại thì bạn chạy từ phần tử lưu cuối cùng đến phần tử đầu tiên trong mảng.
                Về tài liệu tham khảo thì bạn có thể lên thư viện để mượn học tìm cuốn ebook.

                Comment


                • #9
                  Originally posted by 11520094 View Post
                  PHP Code:
                  #include <stdio.h>
                  int convert(int i)
                  {
                      if (
                  0)
                      {
                          
                  convert (i/2);
                          
                  printf("%d",i%2);
                      }
                  }
                  void main()
                  {
                      
                  int i;
                      
                  printf("Input: ");
                      
                  scanf("%d",&i);
                      
                  convert(i);

                  Mình cũng thích dùng đệ quy. Đơn giản mà nhanh chóng

                  Comment


                  • #10
                    Originally posted by 11520132 View Post
                    Mình cũng thích dùng đệ quy. Đơn giản mà nhanh chóng
                    trời! Đệ quy à. không cần thiết thì không nên sử dụng!
                    -----------------------------
                    Mai Văn Khải
                    Software Engineering, University Information of Technology
                    a07d26eb5cbc98f77b36a461eb629456

                    Comment


                    • #11
                      Originally posted by 11520132 View Post
                      Mình cũng thích dùng đệ quy. Đơn giản mà nhanh chóng
                      Nhanh chóng cho người code nhưng là nỗi đau cho cái máy chạy chương trình và nỗi hận khôn nguôi cho người phải đọc hoặc sửa cái code.

                      Comment


                      • #12
                        Originally posted by 11520572 View Post
                        Đề bài:Viết chưong trình chuyển từ hệ 10 sang hệ 2.
                        Thank trước nha.
                        Bài này cũng dễ mà. học Mảng và Con trỏ đi bạn
                        -----------------------------
                        Mai Văn Khải
                        Software Engineering, University Information of Technology
                        a07d26eb5cbc98f77b36a461eb629456

                        Comment


                        • #13
                          Originally posted by 07520004 View Post
                          Nhanh chóng cho người code nhưng là nỗi đau cho cái máy chạy chương trình và nỗi hận khôn nguôi cho người phải đọc hoặc sửa cái code.
                          ác mộng lúc debug, ko biết đang ở stack nào
                          Bùm, Maria Ozawa Bin Laden, chuyên gia cưa bom hàng đầu Việt Nam
                          Bùm, Maria Ozawa Bin Laden, chuyên gia cưa bom hàng đầu Việt Nam
                          Bùm, Maria Ozawa Bin Laden, chuyên gia cưa bom hàng đầu Việt Nam
                          Bùm, Maria Ozawa Bin Laden, chuyên gia cưa bom hàng đầu Việt Nam
                          ...

                          Comment


                          • #14
                            Originally posted by 11520132 View Post
                            Mình cũng thích dùng đệ quy. Đơn giản mà nhanh chóng
                            Ừ "nhanh chóng" lắm, "quy" (rùa) mà!

                            Comment


                            • #15
                              Có một cách làm bài này mình nghĩ cũng khá thú vị. Như chúng ta đã biết thì chuỗi nhị phân của 1 số hệ 10 chính là hệ 2 mà mình cần tìm. Vậy mình chỉ cần thực hiện thao tác xem thử bit thứ i của n là 0 hay 1 mà thôi.

                              int GetBit(int n, int i)
                              {
                              if((n>>i)&1)==1)
                              return 1;
                              else
                              return 0;
                              }
                              Phạm Minh Tâm
                              Phone: 01643-652-922
                              Skype ID: tampham47@live.com

                              Comment

                              LHQC

                              Collapse
                              Working...
                              X