kết quả từ 1 tới 2 trên 2

Bài code C về chuyển Thập phân sang nhị phân

  1. #1
    Ðến Từ
    Bình Phước
    Thành Viên Thứ: 315074
    Giới tính: Nam
    Bài gửi
    23

    Post Bài code C về chuyển Thập phân sang nhị phân

    Mình code thì ko biết sao đoạn chuyển số âm bị sai, các pro có thể sữa lại được ko?
    Mình biết dân coder rất khó chịu khi đọc code của người khác nhưng mongcác bạn chịu khó giúp mình nha
    Thanks nhiều
    #include <stdio.h>
    #include <math.h>
    #include <conio.h>


    int a[17];
    int n;
    int coSo = 2;


    void nhap(); //Ham nhap so n
    void nhap()
    {
    printf("Nhap so nguyen n can chuyen sang dang nhi phan: ");
    scanf("%d", &n);
    }


    void chuyendoi(int x); // Ham chuyen so duong x sang dang nhi phan
    void chuyendoi(int x)
    {
    int i, dem = 16;
    while (x > 0)
    {
    a[dem] = x % coSo;
    x = x / coSo;
    dem--;
    };
    }


    void bu2(); // Ham chuyen sang dang bu 2, de bieu dien so am
    void bu2()
    {
    int j, nho = 1;
    for (j = 16; j >= 1; j--)
    {
    a[j] = ~ a[j];
    a[j] = a[j] + nho;
    nho = a[j] / 2;
    a[j] = a[j] % 2;
    };
    }


    int main()
    {
    int i;
    nhap();
    for (i = 1; i <= 16; i++)
    a[i] = 0;


    if (n < 0)
    {
    chuyendoi(-n);
    bu2();
    }
    else
    chuyendoi(n);

    printf("Bieu dien cua so %d o dang nhi phan la: \n", n);
    for (i = 1; i <= 16; i++)
    printf("%d", a[i]);

    getch();
    return 0;
    }
    Quick reply to this message Trả lời       

  2. #2
    Ðến Từ
    Hà Nội
    Thành Viên Thứ: 247344
    Giới tính: Nữ
    Bài gửi
    10.192

    Reply: Bài code C về chuyển Thập phân sang nhị phân

    Mã:
    void bu2()
    {
    int j, nho = 1;
    for (j = 16; j >= 1; j--)
    {
    a[j] = ~ a[j];
    a[j] = a[j] + nho;
    nho = a[j] / 2;
    a[j] = a[j] % 2;
    };
    }
    Mảng truyền vào chưa có a[] đâu ra mà xử lý bạn. Void thì bạn return về gì
    Thực sự thì mình chưa thấy ai lại hiền lành, dễ thương và tốt bụng như bạn Khách vậy