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

Đề tài: tìm vị trí từ dài nhất trong xâu???

  1. #1
    Ngày gia nhập
    01 2009
    Nơi ở
    PTIT
    Bài viết
    5

    Mặc định tìm vị trí từ dài nhất trong xâu???

    cho t hỏi cách tìm vị trí từ dài nhất trong xâu.
    Ai đó nhanh chóng trả lời giúp đc ko.Thanks trước
    Chỉ cần nói thuật toán thôi,còn code m sẽ tự viết
    Thanks this 4room

  2. #2
    Ngày gia nhập
    01 2009
    Bài viết
    14

    Bạn khai báo một biến nMaxLengh để lưu độ dài của chuỗi dài nhất.
    nMaxIndex để lưu vị trí của từ đó trong mảng. Khi chạy đếm số kí tự trong từ, rồi so sánh, cập nhật nMaxLengh và nMaxIndex nếu cần thiết.

  3. #3
    Ngày gia nhập
    11 2008
    Nơi ở
    vngameday.com
    Bài viết
    62

    mình ko hiểu ý bạn lắm, từ dài nhất là sao vậy bạn ? có phải là tách ra trong sâu thành các từ sau đó so sánh độ dài của chúng với nhau ko ??
    vngameday.com - khi niềm đam mê luôn rực cháy. Rất mong nhận được sự đóng góp từ các bạn...

  4. #4
    Ngày gia nhập
    11 2008
    Nơi ở
    Hà Nội
    Bài viết
    70

    Bạn xem thử cái code này nhé:

    C Code:
    1. #include <stdio.h>
    2. #include <conio.h>
    3. #include <string.h>
    4. void main(){
    5.      //clrscr();
    6.      char s[1000];
    7.      int i,j,n,m,dem,max=0;//a[100],b[100],t=0,tg,x;
    8.      printf("\nNhap xau: ");
    9.      gets(s);
    10.      for(i=0;i<strlen(s);i++)
    11.       if(s[i] != ' '){
    12.     j=i+1;
    13.     dem=1;
    14.     while(s[j] != ' ' && j<strlen(s)){
    15.       dem++;
    16.       if(dem>max){
    17.           max=dem;
    18.           n=i;
    19.           m=j;
    20.        }/* else if(dem==max){
    21.             tg=dem;
    22.             x=t;
    23.             a[t]=i;
    24.             b[t]=j;
    25.             t++;
    26.          }*/
    27.      j++;
    28.     }
    29.        }//else printf("\nkhong co tu nao");
    30.      printf("\nTu dai nhat la: ");
    31.      for(i=n;i<=m;i++)  printf("%c",s[i]);
    32.      printf("\nVi tri cua tu do la tu %d den %d\n",n,m);
    33.      /*if(tg==max)
    34.        for(t=0;t<=x;t++){
    35.      for(j=a[t];j<=b[t];j++)
    36.          printf("%c",s[j]);
    37.          printf("   Vi tri cua tu do la tu %d den %d\n",a[t],b[t]);
    38.      }*/
    39.      getch();
    40. }
    Dân thường sống đẹp đè bẹp dân chơi.
    Hi [you]

  5. #5
    Ngày gia nhập
    01 2009
    Nơi ở
    PTIT
    Bài viết
    5

    uh.thanks tất cả.
    m ko nghĩ ra cái chỗ n=i;m=j;
    hiểu thuật toán rùi...nhưng bài zodiac bị chạy lặp phần i với j quá.nếu xâu dài 100 kí tự chắc lặp hơi nhiều
    mấy hôm nữa thi chắc ok
    Thanks this 4room

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

    Mặc định tìm vị trí từ dài nhất trong xâu???

    uhm.đúng đấy.hj.thank nhiều nhá.

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

  1. Trả lời: 6
    Bài viết cuối: 01-05-2013, 11:10 AM
  2. Socket trong phần mềm chat video, làm thế nào để tín hiệu nhận được nhanh nhất.
    Gửi bởi toctai trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 13-06-2012, 09:19 AM
  3. Tim từ ngắn nhất và dài nhất trong chuổi lỗi has stopped working?
    Gửi bởi satthuprao trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 3
    Bài viết cuối: 27-05-2012, 11:51 AM
  4. Code cho ẩn kí tự khi nhập password vào textbox trong form đăng nhập
    Gửi bởi mrkiemhiep trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 6
    Bài viết cuối: 16-03-2011, 11:10 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