Trang 1 trên tổng số 4 123... Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 34 kết quả

Đề tài: Đếm số chữ số của 1 số nguyên cho trước

  1. #1
    No Avatar
    tanthang Khách

    Cool Đếm số chữ số của 1 số nguyên cho trước


    mấy bac giúp em bài này với
    Viết chương trình đếm số chữ số của 1 số nguyên cho trước
    (em đã nghĩ được thuật toán nhưng mò hoài vẫn chưa ra)

  2. #2
    Ngày gia nhập
    12 2006
    Bài viết
    28

    bài này bạn chỉ việc dùng hàm do{}while là xong thôi
    Trước hết bạn khai biến cho số bạn cần nhập
    trong phần thân chương trình bạn nên lập hàm if()_để kiểm tra số vừa nhập, nếu nó là số âm bạn nên đổi sang số dương cho hợp lệ nhé.
    công việc ở đây là bạn lấy số vừa nhập lần lượt đem chia cho 10, đồng thời đếm
    số lần bạn chia ,cho đến khi giá trị n>=1. Bạn cứ việc suy nghĩ và làm theo ý mình xem sao? Chúc bạn thành công nhé!
    bigdog

  3. #3
    Ngày gia nhập
    07 2006
    Bài viết
    9

    Thêm một cách khác cho vui!
    Bạn có thể dùng hàm _itoa sau đó dùng hàm strlen thế là OK.
    char s[12];
    _itoa(i,s,10);
    printf("So chu so %d \n",(i<0)?strlen(s)-1:strlen(s));

    Chuc vui!

  4. #4
    No Avatar
    tanthang Khách

    Mặc định bùn we'

    bác vui lòng viết code lại giúp em ;em cũng có ý tưởng như bác bigdog188 nhưng sao khi nhập số vào thì kết quả lại sai!
    mong bác mấy bác chỉ em bằng những biểu thức đơn giãn vì em học nhập môn mừ!cám ơn nhìu nhìu!

  5. #5
    Ngày gia nhập
    11 2006
    Bài viết
    633

    công việc ở đây là bạn lấy số vừa nhập lần lượt đem chia cho 10, đồng thời đếm số lần bạn chia ,cho đến khi giá trị n>=1.
    Sai, nếu đem chia thì đến khi thương = 0 là dừng. Giải thuật:
    Code:
    #include <iostream>
    using namespace std;
    int main(){
        cout <<"Nhap so: "; int n; cin >>n;
        int i;
        for (i = 0; n > 0; ++i) n /= 10;
        cout <<"So chu so: " <<i <<endl;
        system("pause");
        return 0;
    }

  6. #6
    Ngày gia nhập
    07 2006
    Bài viết
    166

    Mặc định Đếm số chữ số của 1 số nguyên cho trước

    Chẳng hiểu sao mọi người lại có suy nghĩ là đi chia cho 10 như vậy. Giả sử bây giờ đưa ra một số, hỏi xem số đó có bao nhiêu chữ số thì bạn làm thế nào? Đếm hay là chia? Mình nghĩ sử dụng cách chuyển sang xâu của imaging là hợp lí.

  7. #7
    Ngày gia nhập
    11 2006
    Bài viết
    633

    Chẳng hiểu sao mọi người lại có suy nghĩ là đi chia cho 10 như vậy. Giả sử bây giờ đưa ra một số, hỏi xem số đó có bao nhiêu chữ số thì bạn làm thế nào? Đếm hay là chia? Mình nghĩ sử dụng cách chuyển sang xâu của imaging là hợp lí.
    Chuyển sang string là cách làm tốt nhất, nhưng ở đây là bài tập về vòng lặp mà
    em cũng có ý tưởng như bác bigdog188 nhưng sao khi nhập số vào thì kết quả lại sai
    Người ta hỏi cách làm vòng lặp thì mình giải thích theo cách làm đó thôi.

  8. #8
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    Dùng string :
    Code:
    #include <stdio.h>
    #include <conio.h>
    #include <ctype.h>
    
    int main(void)
    {
    char So[254];
    printf("\n Nhap so : "); gets(So);
    fflush(stdin);
    printf("\n So chu số : %d ", strlen(So) );
    getch();
    return 0;
    None!

  9. #9
    No Avatar
    tanthang Khách

    Smile thanks a lot

    cám ơn anh huynguyen nhìu! em đã ra được kq nhưng sau khúc lặp em hok hỉu gì ah mấy anh pro có cách giải đơn giản cho người mới nhập môn về C ko ah? em rất cảm ơn mấy anh đã xem bài và trả lời giúp em!

  10. #10
    Ngày gia nhập
    12 2006
    Bài viết
    28

    code của bày này là :
    #include<stdio.h>
    #include>conio.h>
    void main()
    {
    int i;float n;
    printf("Hay nhap gia tri cua n:");
    scanf("%f",&n);
    if(n<0)n*=(-1);
    if(n==0) printf("So vua nhap co mot chu so \n");
    else {
    for(i=0;n>=1;i++)
    n=n/10;
    printf("chu so vua nhap co %d chu so",i);
    }
    }
    chương trình của mình chỉ có thế thôi
    bạn cứ viết y như vậy là ra thôi
    chúc bạn thành công


    }
    bigdog

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

  1. Bài tập C giải thuật nhập vào số nguyên n in ra n số nguyên tố đầu tiên?
    Gửi bởi LTC trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 48
    Bài viết cuối: 25-04-2013, 07:40 PM
  2. Viết chương trình nhập số nguyên dương n, liệt kê n số nguyên tố đầu tiên.
    Gửi bởi maiit trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 11
    Bài viết cuối: 19-06-2011, 01:05 PM
  3. Game Viết chương trình nhập số nguyên dương n, liệt kê n số nguyên tố đầu tiên trên C#?
    Gửi bởi maiit trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 18
    Bài viết cuối: 08-06-2011, 11:12 PM
  4. Bài tập C++ chương trình đổi 1 số nguyên trong hệ thập phân sang hệ fibo và cộng 2 số nguyên được
    Gửi bởi nghiapro512 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 23-01-2011, 02:14 PM
  5. Lập trình C xin code cài đặt thuật toán sàng nguyên tố để liệt kê các số nguyên tố 2->480000
    Gửi bởi ngocdung_088 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 23
    Bài viết cuối: 06-12-2010, 11:53 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