kết quả từ 1 tới 2 trên 2

Ðề tài: Lập trình bài toán về hình xoắn ốc

  1. #1
    Join Date
    May 2011
    Bài gởi
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Thumbs up Lập trình bài toán về hình xoắn ốc

    ai có thể nêu ý tưởng viết chương trình cho pài này hộ mình với: lập trình điền vào các số tư 1 đến N theo hình xoắn ốc vào mảng hai chiều có kích thước NxN. mình đang phải lảm pài tập hè giúp mình với nha. à còn nữa ma trận chuyển vị là ntn? Nguồn: http://diendankienthuc.net.

  2. #2
    Join Date
    May 2011
    Bài gởi
    1
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Học tập suôt đời!

    [CENTER][CENTER][CENTER]Đây là cách làm của mình, bạn thử xem sao.
    Mặc định là nó vẽ theo chiều kim đồng hồ. Nếu muốn tổng quát hơn thì sửa lạ 1 tí thôi!
    Còn về ma trận chuyển vị thì có khi cậu phải hỏi anh Google thui !!
    Nhớ chạy bằng Free Pascal nhá, chạy bằng TURBO là Die lun :)))
    Program goesaround;
    Uses Crt;
    var
    a:array[0..1000,0..1000] of integer;
    i,j,size,max:integer;

    n:integer;
    Procedure intial( i1,j1:shortint ;time:integer);
    begin
    While time<max do
    Begin
    if a[i,j]+1=n then break;
    inc(time);
    i:=i+i1;
    j:=j+j1;
    a[i,j]:=a[i-i1,j-j1]+1;
    End;
    end;
    Procedure findsize;
    var
    r:real;
    begin r:=sqrt(n);
    If r=trunc(r) then
    size:=trunc(r)
    else
    size:=trunc(r)+1;
    if size mod 2=0 then
    inc(size);
    i:= size div 2 +1;
    j:= i;
    a[i,j]:=1;
    End;
    Procedure Print;
    Var
    i,j:integer;
    Begin
    for i:=1 to size do
    Begin
    for j:=1 to size do
    if a[i,j]=0 then
    write(' ':4)
    else
    write(a[i,j]:4);
    writeln;
    writeln;
    end;
    End;
    begin
    clrscr;
    write(' Insert Number please ');
    Readln( n );
    findsize;
    max:=0;
    while max+1<>size do
    Begin
    inc(j);
    inc(max,2);
    a[i,j]:=a[i,j-1]+1;
    intial(1,0,1);
    intial(0,-1,0);
    intial(-1,0,0);
    intial(0,1,0);
    end;
    print;
    readln;
    End.
    Nguồn: http://diendankienthuc.net.
    thay đổi nội dung bởi: lamfmhn95, 05-29-2011 lúc 11:06 AM

Bookmarks

Quuyền Hạn Của Bạn

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •