Trang 1 / 2 12 LastLast
Hiển thị kết quả từ 1 đến 10 / 13
  1. #1
    Tham gia
    22-02-2011
    Location
    quận Ninh Kiều, TPCT
    Bài viết
    27
    Like
    0
    Thanked 0 Times in 0 Posts

    Thông tin Tại sao code này không chạy nhỉ

    #include<conio.h>
    #include<stdio.h>
    #include<string.h>
    #include<iostream.h>
    int n;
    int giaithua(int n){
    if(n==0) return 1;
    else
    return n*giaithua(n-1);
    }

    int main(){
    int n;
    cout<<"nhap vao so nguyen n = ";cin>>n;
    if(n>0){
    cout<<"so "<<n<<" vua nhap la so duong "<<endl<<"n! = "<<giaithua(n);

    }
    else
    cout<<"so "<<n<<" vua nhap khong phai la so duong";
    getch();
    return 0;
    }
    anh chị giúp dùm em!!!!!
    Quote Quote

  2. #2
    Tham gia
    01-01-2008
    Location
    Thiên đường hạnh phúc
    Bài viết
    1,299
    Like
    9
    Thanked 127 Times in 67 Posts
    Sao lại không chạy? Kết quả lỗi ra sao?
    Nhớ đừng nhập n quá lớn nhé (<=7 thôi)

  3. #3
    Tham gia
    15-03-2010
    Bài viết
    1,562
    Like
    84
    Thanked 1,571 Times in 860 Posts
    Không chạy có nghĩa là gì? trình dịch báo lỗi - lỗi gì? chạy bị bể ổ (crash) - nhập số ra sao thì bế? chạy chẳng thấy gì hết? chạy ra sai - sai như thế nào?

  4. #4
    Tham gia
    22-02-2011
    Location
    quận Ninh Kiều, TPCT
    Bài viết
    27
    Like
    0
    Thanked 0 Times in 0 Posts
    trình dịch chạy, nhưng không in ra màn hình kết quả cảu hàm giai thừa giúp ngừ thì giúp tới cùng, chạy thử dùm nha hjhjh

  5. #5
    Tham gia
    15-03-2010
    Bài viết
    1,562
    Like
    84
    Thanked 1,571 Times in 860 Posts
    Số nhập vào bao nhiêu và màn hình in ra cái gì?

  6. #6
    Tham gia
    03-04-2009
    Bài viết
    17
    Like
    0
    Thanked 0 Times in 0 Posts
    hàm ở trên đâu có phải là hàm viết giai thừa đúng của nó đâu ? Xem lại đoạn code đi !
    Khai báo biến "n" vô tội vạ .

  7. #7
    Tham gia
    01-01-2008
    Location
    Thiên đường hạnh phúc
    Bài viết
    1,299
    Like
    9
    Thanked 127 Times in 67 Posts
    Quote Được gửi bởi kimdan View Post
    hàm ở trên đâu có phải là hàm viết giai thừa đúng của nó đâu ? Xem lại đoạn code đi !
    Khai báo biến "n" vô tội vạ .
    Sao lại không đúng nhỉ? Chỉ cần n là số tự nhiên là OK.
    Còn khai báo thì hình như dư 1 biến n... Mà nó đâu ảnh hưởng gì đến kết quả?

  8. #8
    Tham gia
    05-03-2010
    Bài viết
    129
    Like
    2
    Thanked 16 Times in 16 Posts
    @chủ topic:
    Tớ code thử nhá:
    PHP Code:
    #include<iostream>
    using namespace std;
    int giaithua(int n){
    if(
    n==0)return 1;
    return 
    n*giaithua(n-1);
    }
    int main(){
    int n;
    cout<<"Nhap n=";
    cin>>n;
    while(
    n<0){
        
    cout<<"\nmoi nhap lai n=";
        
    cin>>n;
    }
    cout<<"\nKet qua la:"<<giaithua(n)<<"\n";
        return 
    0;

    công cụ:Visual C++ 2008.

    [=========> Bổ sung bài viết <=========]

    Kết quả khá ổn đấy,bạn so sánh lại đi nhé!

    [=========> Bổ sung bài viết <=========]

    Nhất là chú ý cái hàm đệ quy.Đừng cho else vào,hỏng đấy.Thân!
    Được sửa bởi khangphamngoc90 lúc 14:37 ngày 28-02-2011 Reason: Bổ sung bài viết

  9. #9
    Tham gia
    09-03-2003
    Bài viết
    76
    Like
    0
    Thanked 4 Times in 3 Posts
    Lỗi là do câu lệnh getch(); Bạn nhấn một phím bất kỳ thì kết quả của giai thừa sẽ hiển thị. Nếu bỏ câu lệnh getch(); thì không còn lỗi này nữa.

    [=========> Bổ sung bài viết <=========]

    Nếu muốn giữ lại câu lệnh getch(); bạn có thể thêm vào cout.flush(); sau câu lệnh xuất kết quả

    Code:
    if(n>0){
    cout<<"so "<<n<<" vua nhap la so duong "<<endl<<"n! = "<<giaithua(n);
    cout.flush();
    }
    Được sửa bởi dthoai lúc 10:46 ngày 01-03-2011 Reason: Bổ sung bài viết

  10. #10
    Tham gia
    22-02-2011
    Location
    quận Ninh Kiều, TPCT
    Bài viết
    27
    Like
    0
    Thanked 0 Times in 0 Posts
    cam on cac anh-chi, em biet minh sai o dau roi, hjhjjhjh

Trang 1 / 2 12 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • 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
  •