Tin học bài tập pascal lớp 9

Thảo luận trong 'Tin học văn phòng' bắt đầu bởi bùi thị xuân mai, 28 Tháng bảy 2019.

Lượt xem: 197

  1. bùi thị xuân mai

    bùi thị xuân mai Học sinh mới Thành viên

    Bài viết:
    38
    Điểm thành tích:
    16
    Nơi ở:
    Quảng Nam
    Trường học/Cơ quan:
    thcs võ thị sáu
    Sở hữu bí kíp ĐỖ ĐẠI HỌC ít nhất 24đ - Đặt chỗ ngay!

    Đọc sách & cùng chia sẻ cảm nhận về sách số 2


    Chào bạn mới. Bạn hãy đăng nhập và hỗ trợ thành viên môn học bạn học tốt. Cộng đồng sẽ hỗ trợ bạn CHÂN THÀNH khi bạn cần trợ giúp. Đừng chỉ nghĩ cho riêng mình. Hãy cho đi để cuộc sống này ý nghĩa hơn bạn nhé. Yêu thương!

    Ngày sinh của mỗi học sinh được ghi bằng một số có 8 chữ số. Trong đó hai số đầu ghi ngày, hai số tiếp theo ghi tháng và bốn số cuối ghi năm. Viết chương trình cho phép nhập ngày sinh của N học sinh. Rồi thực hiện:
    a. Trong N học sinh vừa nhập có bạn nào sinh nhật vào ngày 22 tháng 01 không?
    b. Lớp chỉ tổ chức sinh nhật chung khi có hai người trở lên có cùng ngày sinh nhật. Cho biết những ngày lớp tổ chức sinh nhật?
    c. Cho biết người trẻ nhất có ngày sinh là bao nhiêu?
    d. Cho biết người (được nhập) thứ k lớn thứ mấy trong lớp?
     
  2. Trâm Nguyễn Thị Ngọc

    Trâm Nguyễn Thị Ngọc Học sinh tiến bộ Thành viên HV CLB Lịch sử

    Bài viết:
    1,387
    Điểm thành tích:
    176
    Nơi ở:
    Quảng Trị
    Trường học/Cơ quan:
    Trường TH&THCS Hải Ba

    Bài này là thuộc dạng mảng xâu, mình chỉ viết code chính của từng câu thôi bạn. Bạn làm luôn các phần còn lại nha bạn.
    a.
    Mã:
    kt:=false;
         For i:=1 to n do
             Begin
                  st:=copy(a[i],1,4);
                  If st='2201' then begin kt:=true;break;end;
             End;
         If kt=true then writeln('trong so',n,'hoc sinh co ban sinh ngay 22 thang 1');
         Else writeln('khong co ban nao sinh ngay 22 thang 01);
    b.
    Mã:
    {Dùng hàm Fillchar để gán giá trị 1 cho mảng D)
    For i:=1 to n-1 do
             For j:=i+1 to n do
                 Begin
                      If a[i]=a[j] then
                         begin
                               d[i]:=d[i]+1;
                               For m:=j to n-1 do a[m]:=a[m+1];
                               n:=n-1;
                               write('ngay',copy(a[i],1,2),'thang',copy(a[i],3,2,'  ');
                         end;
    c.
    Mã:
    For i:=1 to n-1 do
             Begin
                  s:=copy(a[i],5,4);st:=copy(a[i+1],5,4);
                  Val(s,n,code);Val(st,min,code);
                  If n>min then min:=n
                  Else If n=min then
                       begin
                             s:=copy(a[i],3,2);st:=copy(a[i+1],3,2);
                             Val(s,n,code);Val(st,min,code);
                             If n>min then min:=n
                             Else If n=min then
                                  begin
                                       s:=copy(a[i],1,2);st:=copy(a[i+1],1,2);
                                       Val(s,n,code);Val(st,min,code);
                                       If n>min then min:=n;
                                  end;
                       end;
             end;
    d. Nếu người thứ k cùng ngày/tháng/năm sinh thì so sánh bằng cách nào bạn nhỉ? Nếu không có trường hợp này thì đơn giản hơn. Bạn lưu lại giá trị a[k] rồi sắp xếp mảng cũng được :)
     
    dangtiendung120102-07-2019. thích bài này.
  3. Đắng!

    Đắng! Học sinh tiến bộ Thành viên HV CLB Hóa học vui

    Bài viết:
    754
    Điểm thành tích:
    181
    Nơi ở:
    Bà Rịa - Vũng Tàu
    Trường học/Cơ quan:
    Minh Dạm

    Nếu là tớ, tớ sẽ dùng record cho vui :D
    Mã:
    type T_HS = record
    Ngay, Thang, Nam: integer;
                      end;
    var HS : T_HS;
    
    Sau đó xử lý nó sẽ vui hơn.....chứ dùng bình thường thì đơn giản, nhưng nếu có nhiều thứ khác liên quan thì làm vậy nó không thể kiểm soát được.
    Pascal mình cũng nên hướng đối tượng đi chứ để nó mãi là "Pascal" thì chán lắm.
     
    Trâm Nguyễn Thị Ngọc thích bài này.
  4. trà nguyễn hữu nghĩa

    trà nguyễn hữu nghĩa Cựu Phó Nhóm Vật Lí |Cây bút Thơ|Thần tượng VH Thành viên

    Bài viết:
    3,028
    Điểm thành tích:
    629
    Nơi ở:
    Phú Yên
    Trường học/Cơ quan:
    Trường THPT Lương Văn Chánh

    Hoặc là dùng object để thể hiện sự pro trước giáo viên
    Mã:
    type THS = object
    Ngay, Thang, Nam: integer;
    Procedure LayThongTin;
                        end;
    var HS: array[1..100] of THS;
    Rồi khi cần thông tin thì mình khai lại:
    Mã:
    for i := 1 to N do
    HS[i].LayThongTin;
    Giống như hướng đối tượng trong C# vậy đó :D
     
    dangtiendung1201Takudo thích bài này.
Chú ý: Trả lời bài viết tuân thủ NỘI QUY. Xin cảm ơn!

Draft saved Draft deleted

CHIA SẺ TRANG NÀY

-->