Trang 1 của 2 12 CuốiCuối
Kết quả 1 đến 10 của 12
  1. #1
    Ngày tham gia
    Nov 2015
    Bài viết
    3

    Trại hè - Tin học trẻ Bắc Ninh.

    Mã:
          File chương trình TRAIHE.PAS
    Một tệp văn bản tên TRAIHE.DAT thể hiện sơ đồ 
    bố trí các lều của một trại hè do các chi đoàn dựng trại 
    nhân dịp chào mừng ngày 26 - 3. 
    Mỗi lều có hình tam giác cân đỉnh hướng lên phía trên, 
    các dòng có lần lượt 1, 3, 5...dấu '*'. 
    Các lều không dính nhau.
    Ví dụ:
       *                    *
     ***                ***
    *****
    *******             *
                             ***
                           *****
    Có 3 lều
    Yêu cầu: Hãy đếm số lều có trong bản đồ và lưu vào tệp 
    TRAIHE.OUT
    File văn bản TRAIHE.DAT có số dòng không hạn chế,
    chiều dài tối đa của mỗi dòng không quá 128 kí tự.

  2. #2
    Ngày tham gia
    Dec 2015
    Bài viết
    6
    Mình không hiểu đề bài của bạn, bạn nên đưa ra một vài test ví dụ [IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG]

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    3
    Test như hình trên đó anh Trung, kết quả là 3 lều.
    Thuật toán: bạn duyệt từng dòng, kiểm tra nếu có 1 * đứng riêng, không có * nào ở bên trái hoặc bên phải nó thì tức là tìm được 1 lều, tăng biến đếm. Sau khi duyệt xong tệp thì kq cần tìm lưu ở biến đếm.

  4. #4
    Ngày tham gia
    Aug 2015
    Bài viết
    314
    Tieu long viết cả chương trình giúp mình đi.
    Nhưng mình không biết biến điều khiển vòng For chạy từ đâu đến đâu. Vì đang làm việc trên tệp mà số dòng không hạn chế!

  5. #5
    Ngày tham gia
    Dec 2015
    Bài viết
    6
    Trích dẫn Gửi bởi lehang_gb1
    Tieu long viết cả chương trình giúp mình đi.
    Nhưng mình không biết biến điều khiển vòng For chạy từ đâu đến đâu. Vì đang làm việc trên tệp mà số dòng không hạn chế!
    [IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG] Chắc làm nhiều quá nên bạn bị sao rồi! Kaka
    Dùng 2 lệnh này nhé bạn.
    1. Câu lệnh dưới có nghĩa là: "Trong khi chưa hết dòng (line) của file F thì làm ..."
    Mã:
    While Not EOLN(F) Do
    EOLN: Viết tắt của End Of Line

    2. Câu lệnh dưới có nghĩa là: "Trong khi chưa hết file F thì làm ..."
    Mã:
    While not EOF(F) Do
    EOF: Viết tắt của End Of File

  6. #6
    Ngày tham gia
    Aug 2015
    Bài viết
    4
    Bạn cứ viết chương trình đầy đủ giúp mình đi nhé! Còn đoạn đọc vào tệp thì sao nhỉ. Mình có phải viết để máy tự đọc hay là người sử dụng tự đọc?Có phải sử dụng mảng 2 chiều ko bạn hay là sử dụng mảng 1 chiều thôi.
    Còn hàm EOF(f) thì mình nhớ chứ, mình biết mà!

  7. #7
    Ngày tham gia
    Nov 2015
    Bài viết
    0
    Mã:
    const         fi='traihe.inp';
                    fo='traihe.dat';
    var            s: string;
                    f:text;
                    i,d:longint;
    begin
                   assign(f,fi);
                   reset(f);
                   i:=0;
                   while not(eof(f)) do
                   begin
                               while not(eoln(f)) do
                               begin
                                          readln(f,s);
                                          s:=s+' ';
                                          while pos(' * ',s) > 0 do
                                          begin
                                                     inc(d);
                                                     delete(s,pos(' * ',s),3);
                                          end;
                               end;
                               readln(f);
                  end;
                  close(f);
                  assign(f,fo);
                  rewrite(f);
                  write(f,d);
                  close(f);
    end.

  8. #8
    Ngày tham gia
    May 2016
    Bài viết
    0
    Cách như của sacklove thì chủ yếu là phải thạo về phần kiến thức tệp thôi nhỉ, bạn hoàn toàn sử dụng tệp và xâu mà không sử dụng kiểu dữ liệu mảng.Thế với bài toán này thì có thể viết theo kiểu mảng có được không vậy?

  9. #9
    Ngày tham gia
    Nov 2015
    Bài viết
    2
    Trích dẫn Gửi bởi lehang_gb1
    Cách như của sacklove thì chủ yếu là phải thạo về phần kiến thức tệp thôi nhỉ, bạn hoàn toàn sử dụng tệp và xâu mà không sử dụng kiểu dữ liệu mảng.Thế với bài toán này thì có thể viết theo kiểu mảng có được không vậy?
    Tệp tối ưu hơn bạn à! Mảng làm sao tối ưu được với lại thời gian nạp hoặc tìm kiếm cũng lâu hơn.

  10. #10
    Ngày tham gia
    Aug 2015
    Bài viết
    3
    Trích dẫn Gửi bởi lehang_gb1
    Cách như của sacklove thì chủ yếu là phải thạo về phần kiến thức tệp thôi nhỉ, bạn hoàn toàn sử dụng tệp và xâu mà không sử dụng kiểu dữ liệu mảng.Thế với bài toán này thì có thể viết theo kiểu mảng có được không vậy?
    Bạn có thể đọc vào 1 mảng rồi for 1 lượt tất cả các phần tử . Nhưng như vậy chẳng phải là tốn thời gian và bộ nhớ hơn sao ?

Trang 1 của 2 12 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • 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
  •