Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 13 kết quả

Đề tài: Vẽ tàu vũ trụ bay trên trời đầy sao?

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

    Mặc định Vẽ tàu vũ trụ bay trên trời đầy sao?

    mình có thử gõ đoạn code trong sách C++ & lập trình hướng đối tượng của GS PVA. gõ đúng nhưng khi chạy thì nó nháy 1 một cái rùi thoát luôn, ko hiện gì. ai từng làm qua chỉ giúp mình nha
    C++ Code:
    1. #include<conio.h>
    2. #include<dos.h>
    3. #include<stdio.h>
    4. #include<stdlib.h>
    5. #include<graphics.h>
    6. #include<alloc.h>
    7. #include<math.h>
    8. void tau_cd(void); /*tau chuyen dong*/
    9. void nhap_nhay_bt(void); /* sao nhap nhay */
    10. void main(void);
    11.     int a,b,x,y,x0,y0;
    12.     int mh=0,mode=0,n,i;
    13.     float goc,xt,yt;
    14.     char *p;
    15.     int xx[1001],yy[1001];
    16.  
    17. /* ham main */
    18. void main(void)
    19. {
    20.     initgraph(&mh,&mode,"");
    21.     if(graphresult()!=0)
    22.      exit(1);
    23.     /* ve tau vu tru */
    24.     setcolor(RED);
    25.     ellipse(100,50,0,360,20,8);
    26.     ellipse(100,46,190,357,20,6);
    27.     line(107,44,110,38);
    28.     circle(110,38,2);
    29.     line(93,44,90,38);
    30.     circle(90,38,2);
    31.     setfillstyle(SOLID_FILL,BLUE);
    32.     floodfill(101,45,RED);
    33.     setfillstyle(SOLID_FILL,MAGENTA);
    34.     floodfill(94,45,RED);
    35.  
    36.     /* LUU ANH CUA TAU CU TRU VAO BO NHO */
    37.     n=imagesize(79,36,121,59);
    38.     p=(char *)malloc(n);
    39.     getimage(79,36,121,59,p);
    40.  
    41.     /*
    42.         ve bau troi day sao va luu vi tri cua chung
    43.         vao cac mang xx,yy de phuc vu ham nhap_nhay_bt
    44.     */
    45.     cleardevice();
    46.     for(i=1;i<=1000;i++)
    47.     {
    48.         xx[i]=random(getmaxx());
    49.         yy[i]=random(getmaxy());
    50.         putpixel(xx[i],yy[i],random(getmaxcolor()));
    51.     }
    52.     /* xac dinh gia tri ban dau cho cac bien dung de dieu khien chuyen dong tau */
    53.     goc= 2*M_PI + M_PI/2;
    54.     x0=(getmaxx()-42)/2;
    55.     y0=(getmaxy()-25)/2;
    56.     a=x0;
    57.     b=y0;
    58.     /* chu trinh tau vu tru chuyen dong va cac ngoi sao nhap nhay */
    59.     do
    60.     {
    61.         tau_cd();
    62.         nhap_nhay_bt();
    63.     }
    64.     while (!kbhit()) ;
    65.     getch() ;  
    66.     closegraph();
    67.  
    68. }
    69. void tau_cd(void)
    70. {
    71.     xt=a*cos(goc)+x0;
    72.     yt=b*sin(goc)+y0 ;
    73.     x=(int)(xt+0.5);
    74.     y=(int)(yt+0.5);
    75.     /* dat tau vu tru len man hinh */
    76.     putimage(x,y,p,XOR_PUT);
    77.     delay(500);
    78.     /* xoa */
    79.     putimage(x,y,p,XOR_PUT);
    80.  
    81.     /* thay doi goc de lam cho tau chuyen dong */
    82.     goc -=M_PI/30;
    83.     if(goc<M_PI/2)
    84.         goc = 2*M_PI+M_PI/2;
    85. }
    86.  
    87. void nhap_nhay_bt(void)
    88. {
    89.     static i=1; /* lenh nay thuc hien 1 lan */
    90.     int j;
    91.         /* cho nhap nhay bang cach doi mau 50 ngoi sao */
    92.     for(j=1;j<=50;j++)
    93.     {
    94.         putpixel(xx[i],yy[i],random(getmaxcolor()));
    95.         i++;
    96.         if(i>1000)   i=1;
    97.     }
    98. }
    Đã được chỉnh sửa lần cuối bởi mrlamtb : 15-05-2011 lúc 09:44 PM.

  2. #2
    Ngày gia nhập
    12 2010
    Nơi ở
    Hanoi, Vietnam, Vietnam
    Bài viết
    687

    sao trong chương trình đó lại có 2 hàm main vậy bạn ! bạn xem lại xem sao , mình chưa biết về đồ họa nhưng mà nhìn thấy 1 chương trình có tận 2 hàm void main() thì hơi bị lạ đấy ! và dẫn đến sai đó !

  3. #3
    Ngày gia nhập
    03 2010
    Nơi ở
    Nơi nào đó trong vũ trụ
    Bài viết
    550

    Trích dẫn Nguyên bản được gửi bởi xuyenit55 Xem bài viết
    sao trong chương trình đó lại có 2 hàm main vậy bạn ! bạn xem lại xem sao , mình chưa biết về đồ họa nhưng mà nhìn thấy 1 chương trình có tận 2 hàm void main() thì hơi bị lạ đấy ! và dẫn đến sai đó !
    1 cái là main, cái còn lại là tiền khai báo (main cũng là hàm, chỉ khác là nó là điểm vào chương trình).
    Gió thu lạnh lẽo hắt hiu lòng!

  4. #4
    Ngày gia nhập
    12 2010
    Nơi ở
    Hanoi, Vietnam, Vietnam
    Bài viết
    687

    Trích dẫn Nguyên bản được gửi bởi birthis Xem bài viết
    1 cái là main, cái còn lại là tiền khai báo (main cũng là hàm, chỉ khác là nó là điểm vào chương trình).
    Ặc . em nhìn nhầm cứ tưởng cái đoạn này là bạn viết hàm main ! Sorry chủ topic nhé , hoa mắt nên nhìn nhầm !
    C++ Code:
    1. void main(void);
    2.     int a,b,x,y,x0,y0;
    3.     int mh=0,mode=0,n,i;
    4.     float goc,xt,yt;
    5.     char *p;
    6.     int xx[1001],yy[1001];

  5. #5
    Ngày gia nhập
    10 2010
    Bài viết
    10

    mình đã tìm ra lỗi rùi. mọi ng chạy thử nhé
    cái chỗ :
    initgraph(&mh,&mode,"C:\\TC\BGI")
    trong "" phải có C:\\TC\\BGI .
    chúc vui vẻ
    Đã được chỉnh sửa lần cuối bởi mrlamtb : 20-05-2011 lúc 12:37 PM.

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

    Mặc định Vẽ tàu vũ trụ bay trên trời đầy sao?

    sao mình chạy ở máy mình dc, cop sang máy khác ấn ALt F9 thì ko lỗi, nhưng ân F9 hay Run thì nó báo tới 17 lỗi.

  7. #7
    Ngày gia nhập
    12 2010
    Nơi ở
    Hanoi, Vietnam, Vietnam
    Bài viết
    687

    Trích dẫn Nguyên bản được gửi bởi mrlamtb Xem bài viết
    sao mình chạy ở máy mình dc, cop sang máy khác ấn ALt F9 thì ko lỗi, nhưng ân F9 hay Run thì nó báo tới 17 lỗi.
    có thể máy bên kia không cài hỗ trợ phần đồ họa nên nó bị lôi !

  8. #8
    Ngày gia nhập
    10 2010
    Bài viết
    10

    mình tìm ra lỗi rùi. bạn làm như sau: Options> Linker >Libraries> Garphics library> Ok
    ai bị như mình thì sửa lại và chạy thử nha chúc vui vẻ
    VÀ nếu ko nhầm thì chỉ có Win xp mới dùng dc T_T
    Đã được chỉnh sửa lần cuối bởi mrlamtb : 20-05-2011 lúc 12:54 AM.

  9. #9
    Ngày gia nhập
    11 2010
    Bài viết
    33

    em chạy đc rồi nhưng điều khiển đĩa bay thế nào đó anh,vào thấy cái đĩa bay đứng trên góc thôi

  10. #10
    Ngày gia nhập
    10 2010
    Bài viết
    10

    Trích dẫn Nguyên bản được gửi bởi voluong0thaicuc Xem bài viết
    em chạy đc rồi nhưng điều khiển đĩa bay thế nào đó anh,vào thấy cái đĩa bay đứng trên góc thôi
    cái này mình ko rõ. hình như chỉ là để nhìn thui chws ko điều khiển dc. nó chạy khắp màn hình mà

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

  1. Xây dựng ứng dụng vẽ Đa Giác trên C#
    Gửi bởi khangtvust trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 22-08-2011, 05:27 PM
  2. Vẽ đồ thị hàm số từ bậc 1 đến bậc 4 trên C++?
    Gửi bởi royalfamily trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 20-07-2010, 01:31 AM
  3. Bài tập C vẽ đồng hồ trên C
    Gửi bởi chenzy3230 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 10
    Bài viết cuối: 02-02-2010, 10:09 PM
  4. interval timer trên C# | Lấy mẫu vẽ đồ thị trên C#. Giúp mình với?
    Gửi bởi mrvui trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 09-05-2009, 10:16 PM
  5. Đồ họa C++ | Vẽ ngôi nhà trên C++?
    Gửi bởi hungbu trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 09-05-2009, 08:17 AM

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