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

Đề tài: xin thuật toán thực hiện phép nhân như hồi tiểu học

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

    Mặc định xin thuật toán thực hiện phép nhân như hồi tiểu học

    mấy anh chị cho em hỏi cách thưc hiện phép nhân 2 số bất kì như hồi học tiểu học. VD nhập 2 số 14 và 15 thì nó sẽ ra phep nhan 14x15=210 theo kiểu:

    14
    x
    15
    ------
    -70
    14
    ----------
    210

    mà cái này mình nhập 2 số bất kì có bao nhiêu chữ số cũng được nhé. Anh chị nào biết thì gợi ý cho em cách làm. Em xin cảm ơn !
    Đã được chỉnh sửa lần cuối bởi kenjury : 11-01-2013 lúc 12:12 PM.

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

    up , anh chị nào biết giúp em với

  3. #3
    Ngày gia nhập
    12 2009
    Bài viết
    74

    Bài của bạn chắc là nhân số lớn đầu vào là xâu.
    Giả sử có 2 xâu s1: 123, s2: 456
    Nhân s1 với s2 thì ta phải nhân 123 x 6 + 123 x 5 ( thêm 1 số 0 vào kết quả) + 123 x 4 ( thêm 2 số 0 vào kết quả)
    Vậy điều cần phải làm 2 ý sau: thực hiện các phép cộng(2 xâu có độ dài bất kì) và phép nhân (một xâu có độ dài bất kì với 1 xâu có 1 kí tự)
    + Với cộng 2 xâu có độ dài bất kì => cái này cộng lần lượtt tường kí tự ( chắc bạn làm được chứ)
    + Với phép nhân 1 xâu có độ dài bất kì với 1 xâu có đúng 1 kí tự. VD: 123 x 4. Ta lại tách 3 x 4 + 2 x 4 ( thêm 1 số 0 vào kết quả) + 1 x 4 ( thêm 2 số 0 vào kết quả) rồi cộng với nhau.
    Qua trên ta thấy việc nhân 2 xâu s1 và s2 => quy về việc cộng 2 xâu.

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

    Trích dẫn Nguyên bản được gửi bởi Mr.Quit Xem bài viết
    Bài của bạn chắc là nhân số lớn đầu vào là xâu.
    Giả sử có 2 xâu s1: 123, s2: 456
    Nhân s1 với s2 thì ta phải nhân 123 x 6 + 123 x 5 ( thêm 1 số 0 vào kết quả) + 123 x 4 ( thêm 2 số 0 vào kết quả)
    Vậy điều cần phải làm 2 ý sau: thực hiện các phép cộng(2 xâu có độ dài bất kì) và phép nhân (một xâu có độ dài bất kì với 1 xâu có 1 kí tự)
    + Với cộng 2 xâu có độ dài bất kì => cái này cộng lần lượtt tường kí tự ( chắc bạn làm được chứ)
    + Với phép nhân 1 xâu có độ dài bất kì với 1 xâu có đúng 1 kí tự. VD: 123 x 4. Ta lại tách 3 x 4 + 2 x 4 ( thêm 1 số 0 vào kết quả) + 1 x 4 ( thêm 2 số 0 vào kết quả) rồi cộng với nhau.
    Qua trên ta thấy việc nhân 2 xâu s1 và s2 => quy về việc cộng 2 xâu.
    ý em là nó sẽ in ra màn hình. VD 14x15 nó sẽ in ra màn hình:
    14
    x
    15
    ------
    -70
    14
    ----------
    210

  5. #5
    Ngày gia nhập
    02 2012
    Nơi ở
    Đà Nẵng
    Bài viết
    2

    Code:
    #include<stdio.h>
    #include<conio.h>
    int main(void)
    {
    unsigned int a,b;
    char c;
    printf("Nhap so\n ");
    scanf("%d",&a);
    fflush(stdin);
    do
    c=getch();
    while(c!='x');
    printf("x\n ");
    scanf("%d",&b);
    printf(" ------\n %d",a*b);
    getch();
    return 0;
    }
    Em làm bài này không biết đúng không nữa, bác copy cho chuẩn nhé vì nó mang cả cách trình bày nữa.
    Bác chạy ct hen
    Chờ cho nó xuất ra dòng : "Nhap so" bác gõ số vào nhấn enter; sau dó nhấn phím "x" trên bàn phím không có nhấn enter đâu, vì nó tự nạp vào và rồi nhập số tiến theo và nhấn enter hihi
    Cũng hổng biết đúng không !! Em chạy được nhưng sợ bác hỏi cái cao siêu quá!!
    New Picture (1).bmp
    Đã được chỉnh sửa lần cuối bởi songhy : 15-01-2013 lúc 02:17 AM. Lý do: bổ sung vào bài

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

    Mặc định xin thuật toán thực hiện phép nhân như hồi tiểu học

    ý của bạn là như thế này:
    C Code:
    1. #include <conio.h>
    2. #include <stdio.h>
    3.  
    4. int main()
    5. {
    6.     int a,b;
    7.     printf("a=   ");
    8.     scanf("%d",&a);
    9.     printf("    x");
    10.     printf("\nb=   ");
    11.     scanf("%d",&b);
    12.     printf("    ----\n     %d",a*b);
    13. }

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



    ý em là sau khi nhập 2 số bất kì (bao nhiêu chữ số cũng được), ở đây em nhâp 123 và 15 nó sẽ in ra phép nhân như hình.

  8. #8
    Ngày gia nhập
    02 2012
    Nơi ở
    hà nội
    Bài viết
    58

    Cái này chắc chắn là phải nhập số đó vào một xâu, nếu bạn nhân được 2 kí tự của một số ra. thì mới giải quyết đc. VD a x b=? a,b là 2 kí tự số kiểu char.
    + Quách Việt Kiên
    + Yahoo: Kaka_8x_vn
    + skype: kiencuongno1
    + Gmail: kiencuongno1@gmail.com
    Ai có thể free cho mình 50k thẻ điện thoại ko.

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

  1. Dịch thuật, công ty dịch thuật, dịch vụ dịch thuật chuyên nghiệp
    Gửi bởi vecvn trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 4
    Bài viết cuối: 18-11-2012, 10:44 PM
  2. Dịch vụ kế toán: Báo cáo thuế, dịch vụ tư vấn thuế, báo cáo thuế tncn vnnp
    Gửi bởi ecomvnnp01 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 1
    Bài viết cuối: 16-02-2012, 11:07 AM
  3. Bài tập C++ Viết chương trình nhập số lượng hàng hóa, giá cả, thuế, xuất ra tổng giá, thuế, tổng cộng
    Gửi bởi seit 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: 04-03-2011, 09:04 AM
  4. Hướng dẫn kê khai thuế thu nhập cá nhân, thuế doanh nghiệp 0903034381
    Gửi bởi thngxanhcty trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 19-05-2010, 02:33 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