//
you're reading...
Chủ đề mảng (array), Dùng cho cấp THCS, Dùng cho cấp THPT

Bài tập về mảng (array) – Bài 01

Bài tập về mảng (array)

Trang này của Nguyễn Công Tác

Bấm vào các liên kết dưới đây để xem các trang liên quan:


Lý thuyết bài 09 – Kiểu mảng (array)
Đến trang sau – Bài 02
Dự phòng


Bài 01:

Nhập vào một mảng vuông bậc NxN. Lưu các phần tử của mảng 2 chiều đã cho thành mảng 1 chiều theo thứ tự tăng dần theo mẫu như dưới đây:
Ví dụ mảng 5×5

Xuất ra: 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25

1 3 4 10 11
2 5 9 12 19
6 8 13 18 20
7 14 17 21 24
15 16 22 23 25

Phần mã sẽ được trình bày trong vùng màu xám như dưới đây:


Mẫu chương trình


Uses crt;
Const max=10;
Type
    m1=array[1..max*max] of integer;
    m2=array[1..max,1..max] of integer;
Var
    b:m1;
    a:m2;
    i,j,k,t,n:byte;
    co:integer;
Begin
     Clrscr;
     write('Nhap n= ');
     readln(n);
     for i:=1 to n do
         for j:=1 to n do
             begin
                  write('a[',i,',',j,']= ');
                  readln(a[i,j]);
             end;
clrscr;
t:=1;
for k:=2 to n+1 do
    begin
         if k mod 2=1 then
            begin
                 j:=1;
                 while (k-j>=1) do
                       begin
                            i:= k-j;
                            gotoxy(j*4,i);
                            write(a[i,j]);
                            b[t]:=a[i,j]; t:=t+1;
                            j:=j+1;
                       end;
            end
        else
            begin
                 i:=1;
                 while (k-i>=1) do
                       begin
                            j:=k-i;
                            gotoxy(j*4,i);
                            write(a[i,j]);
                            b[t]:=a[i,j]; t:=t+1;
                            i:=i+1;
                       end;
            end;
    end;


for k:=n+2 to 2*n do
    begin
         if k mod 2=0 then
            begin
                 i:=k-n;
                 while (i<=n) do
                       begin
                            j:=k-i;
                            gotoxy(j*4,i);
                            write(a[i,j]);
                            b[t]:= a[i,j]; t:= t+1;
                            i:=i+1;
                       end;
            end
         else
             begin
                  j:=k-n;
                  while (j<=n) do
                        begin
                             i:=k-j;
                             gotoxy(j*4,i);
                             write(a[i,j]);
                             b[t]:=a[i,j]; t:=t+1;
                             j:=j+1;
                        end;
             end;
   end;

  t:=1;
  writeln;
  for t:=1 to n*n do
   write(b[t]:4);
 Readln;
 end.



Kết quả in ra
Nhap n= 5
a[1,1]= 1
a[1,2]= 3
a[1,3]= 4
a[1,4]= 10
a[1,5]= 11
a[2,1]= 2
a[2,2]= 5
a[2,3]= 9
a[2,4]= 12
a[2,5]= 19
a[3,1]= 6
a[3,2]= 8
a[3,3]= 13
a[3,4]= 18
a[3,5]= 20
a[4,1]= 7
a[4,2]= 14
a[4,3]= 17
a[4,4]= 21
a[4,5]= 24
a[5,1]= 15
a[5,2]= 16
a[5,3]= 22
a[5,4]= 23
a[5,5]= 25
1 3 4 10 11
2 5 9 12 19
6 8 13 18 20
7 14 17 21 24
15 16 22 23 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25


Nguồn tài liệu

Tham khảo từ Internet.


Giải thuật và lập trình – Lê Minh Hoàng
Trang bài học Pascal cơ bản
Dự phòng
Dự phòng

Advertisements

About pascalteacher

Trang thông tin Toán học và Tin học

Thảo luận

Không có bình luận

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

Các tác giả

Chuyên mục

Tháng Mười Hai 2014
H B T N S B C
« Th11   Th1 »
1234567
891011121314
15161718192021
22232425262728
293031  

NCT Computer

Flickr Photos

lost

Cimitero San Michele

Stump Lake Star Trail

More Photos

Thống kê

  • 115,481 lượt xem

pascalteacher.nct@gmail.com


Trang huấn luyện học sinh giỏi Tin học

%d bloggers like this: