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ố 11 kết quả

Đề tài: Cần code chương trình vẽ đồ thị hình sin!

  1. #1
    Ngày gia nhập
    05 2008
    Nơi ở
    Vĩnh Phúc
    Bài viết
    6

    Mặc định Cần code chương trình vẽ đồ thị hình sin!

    Mình sắp thi cần vẽ đồ thị hình sin ai biết cách vẽ đồ thị này cho minh code với!
    C là gì? C là cố. Mà cố quá = quá cố ->

  2. #2
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    2,991

    Không code hộ ==>> quy tắc.

    phân tích :
    cong là thẳng
    thẳng là cong

    hướng đi :
    +khởi tạo đồ họa
    +thiết lập 1 hàm tính y qua x ( trong đầu hoặc ra nháp )
    +chọn các mốc ( trong đầu hoặc ra nháp )
    + Cho x chạy từ đầu mốc -> cuối mốc :
    {
    - tính y => điểm tọa độ (x,y)
    - nối điểm này với điểm trước đó ( vẽ đoạn thẳng )
    }
    + getch();
    + kết thúc đồ họa
    ^_,^
    Mình là 1 con gà trong công nghệ.
    Nếu mình có nói gì làm bạn không vui thì mong bạn bỏ qua cho, vì cá nhân mình còn gà lắm, và mình có ý tốt thôi.

    Bùi Tấn Quang

  3. #3
    Ngày gia nhập
    05 2008
    Nơi ở
    Vĩnh Phúc
    Bài viết
    6

    Trời ạ. Nói vậy thi ai cung nói được. Cái tui cần là phần tạo các điểm (x,y) như thế nào cơ! ko ai giúp tui được à????
    C là gì? C là cố. Mà cố quá = quá cố ->

  4. #4
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    2,991

    Trích dẫn Nguyên bản được gửi bởi manhcuongbx Xem bài viết
    Trời ạ. Nói vậy thi ai cung nói được. Cái tui cần là phần tạo các điểm (x,y) như thế nào cơ! ko ai giúp tui được à????


    Bạn đã nghĩ được như thế còn ko làm được sao ????

    cách tính các tọa độ x y :

    + bạn đã học phần chuyển dịch hệ trục tọa độ chưa ?
    + với hệ trục gốc thì y=sinx;
    + do với bài này hệ trục tọa độ được dịch xuống nên tọa độ của y được thay đổi đi :y = sinx - k
    với k là 1 hằng sổ biểu thị độ lệch

    Bài toàn đến đây cực kì rõ ràng rồi bạn còn ? gì nữa ko ?


    @ Bài tập của bạn. Không biết cách làm mình chỉ cho cách làm con ăn nói thiếu lịch sự vậy là sao ? Mong chờ tôi code hộ bạn nữa à? Rõ ràng như vậy bạn còn ko làm được thì tôi có code cho bạn thì bạn cũng chả hiểu.
    Nội quy ko cho phép giải hộ bài tập. Chỉ được đưa ra phương pháp , ý tưởng hoặc sửa code của bạn thôi.
    ^_,^
    Mình là 1 con gà trong công nghệ.
    Nếu mình có nói gì làm bạn không vui thì mong bạn bỏ qua cho, vì cá nhân mình còn gà lắm, và mình có ý tốt thôi.

    Bùi Tấn Quang

  5. #5
    Ngày gia nhập
    05 2008
    Nơi ở
    Vĩnh Phúc
    Bài viết
    6

    Mình ko có ý vậy. Mình chỉ là nghĩ mãi ko ra cái y=sin(x) ra sao thôi!
    C là gì? C là cố. Mà cố quá = quá cố ->

  6. #6
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    2,991

    Mặc định Cần code chương trình vẽ đồ thị hình sin!

    để mình nói cụ thể hơn:


    + với hệ trục tọa độ gốc y=sinx.

    với gốc thì ta có

    (0,0)...........Chiều ngang màn hình
    -------------------------------------> Ox
    |
    |
    |
    |
    |
    |
    |
    V
    Oy

    như bạn thấy đó màn hình chính là 1 gốc phần tư của hệ trục tọa độ đề các

    với đồ thị gốc đề các Oxy để vẽ đồ thị sin trong khoảng x từ g1 đến g2 ta làm thế này :

    cho x chạy từ g1 đến g2
    {
    y=sinx;
    vẽ các bước như trên.
    }

    Nhưng bạn muốn vẽ 1 hệ trục tọa độ nằm giữa màn hình nên tọa độ bị thay đổi đi:

    O-------------------------------------> Ox
    |
    | .M
    |
    |...............................O'---------------------------->x'
    |............................... |
    |............................... | .M'
    |............................... |
    |............................... |
    V............................... V y'
    Oy


    hệ tọa độ mới nằm giữa màn hình như hình trên.
    Tọa độ gốc của hệ trục mới O'(kx,ky).

    Việc ánh xạ đồ thị y = sin x sang hệ trục tọa độ mới :

    Giả sử điểm M ( xm,ym) nằm trên hệ đồ thị y=sinx ứng với hệ trục tọa độ gốc.
    Ánh xạ M sang hệ trục tọa độ mới -> M'
    vậy M' sẽ có tọa độ là (xm + kx,ym+ky)

    .............

    Vậy : Bạn hãy tính các tọa độ của các điểm M' rồi nối nó lại với nhau.
    Nối 2 M' liên tiếp lại.
    sẽ cho ra 1 đường cong. cong là thẳng
    thằng là cong

    .........

    Bạn chưa hiểu có thể hỏi tiếp
    Đã được chỉnh sửa lần cuối bởi langman : 29-05-2008 lúc 01:30 AM.
    ^_,^
    Mình là 1 con gà trong công nghệ.
    Nếu mình có nói gì làm bạn không vui thì mong bạn bỏ qua cho, vì cá nhân mình còn gà lắm, và mình có ý tốt thôi.

    Bùi Tấn Quang

  7. #7
    Ngày gia nhập
    05 2008
    Nơi ở
    Tp.Hcm
    Bài viết
    2

    Trích dẫn Nguyên bản được gửi bởi langman Xem bài viết
    cong là thẳng
    thẳng là cong
    langman có vẻ khoái câu này nhầy

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

    Nó đây

    #include "stdlib.h"
    #include "conio.h"
    #include "stdio.h"
    #include "iostream"
    #include "graphics.h"
    #include "math.h"

    #define RADS 0.017453293
    #define K 150

    void sinfunction()
    {
    double xmax, yc, x = 0.0, y;

    xmax = getmaxx();
    yc = getmaxy() / 2;
    while (x<xmax)
    {
    y = K * sin(x * RADS);
    putpixel(x, yc + y, YELLOW);
    x += 0.1;
    }
    }

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

    C++ Code:
    1. C++
    2.  
    3.  
    4. #include<dos.h>
    5. #include <stdio.h>
    6. #include <conio.h>
    7. #include <process.h>
    8. #include<graphics.h>
    9. #include<time.h>
    10. #include<math.h>
    11. #define t 100
    12.  
    13. union REGS i,o;
    14.  
    15. initmouse()
    16.     {
    17.         i.x.ax=0;
    18.         int86(0x33,&i,&o);
    19.         return(o.x.ax);
    20.     }
    21.  
    22. showmouseptr()
    23.     {
    24.         i.x.ax=1;
    25.         int86(0x33,&i,&o);
    26.         return(0);
    27.     }
    28.  
    29. hidemouseptr()
    30.     {
    31.         i.x.ax=2;
    32.         int86(0x33,&i,&o);
    33.         return(0);
    34.     }
    35.  
    36. restrictmouseptr(int x1,int y1, int x2, int y2)
    37.     {
    38.         i.x.ax=7;
    39.         i.x.cx=x1;
    40.         i.x.dx=x2;
    41.         int86(0x33,&i,&o);
    42.  
    43.         i.x.ax=8;
    44.         i.x.cx=y1;
    45.         i.x.dx=y2;
    46.         int86(0x33,&i,&o);
    47.  
    48.     return(0);
    49.     }
    50.  
    51. getmousepos(int *button, int *x, int *y)       // ham lay toa do cua chuot
    52.     {
    53.         i.x.ax=3;
    54.         int86(0x33,&i,&o);
    55.         *button=o.x.bx;
    56.         *x=o.x.cx;
    57.         *y=o.x.dx;
    58.     return(0);
    59.     }
    60. //***************************************************************
    61. void ClearWin(int wx1,int wy1,int wx2,int wy2,int color)   //tao 1 khung noi dung
    62.  {
    63.      setfillstyle(1,color);
    64.      bar(wx1,wy1,wx2,wy2);
    65.  }
    66. //***************************************************************
    67. void menu_hien()
    68. {       int a , b;
    69.     a = 45; b = 65;
    70.     setcolor(12);
    71.     rectangle(20,a,120,b); bar(21,a+1,119,b-1);
    72.     setcolor(11);
    73.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    74.     setcolor(4);
    75.     outtextxy((20+120)/2,(a+b)/2,"Ham Bac 2/1");
    76.     delay(t);
    77.     setcolor(12);
    78.     rectangle(20,a+20,120,b+20);  bar(21,a+21,119,b+19);
    79.     setcolor(11);
    80.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    81.     setcolor(4);
    82.     outtextxy((20+120)/2,(a+20+b+20)/2,"Ham Cosin");
    83.     delay(t);
    84.     setcolor(12);
    85.     rectangle(20,a+40,120,b+40);  bar(21,a+41,119,b+39);
    86.     setcolor(11);
    87.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    88.     setcolor(4);
    89.     outtextxy((20+120)/2,(a+40+b+40)/2,"Ham Bac 4");
    90.     delay(t);
    91.     setcolor(12);
    92.     rectangle(20,a+60,120,b+60);  bar(21,a+61,119,b+59);
    93.     setcolor(11);
    94.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    95.     setcolor(4);
    96.     outtextxy((20+120)/2,(a+60+b+60)/2,"EXIT");
    97. }
    98.         //********************//
    99. void menu_an()
    100. {       int a , b ;
    101.     a = 45; b = 65;
    102.     setcolor(2);
    103.     rectangle(20,a,120,b);
    104.     setcolor(2);
    105.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    106.     setcolor(2);
    107.     outtextxy((20+120)/2,(a+b)/2,"Ham Bac 2/1");
    108.     delay(t);
    109.     setcolor(2);
    110.     rectangle(20,a+20,120,b+20);
    111.     setcolor(2);
    112.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    113.     setcolor(2);
    114.     outtextxy((20+120)/2,(a+20+b+20)/2,"Ham Cosin");
    115.     delay(t);
    116.     setcolor(2);
    117.     rectangle(20,a+40,120,b+40);
    118.     setcolor(2);
    119.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    120.     setcolor(2);
    121.     outtextxy((20+120)/2,(a+40+b+40)/2,"Ham Bac 4");
    122.     delay(t);
    123.     setcolor(2);
    124.     rectangle(20,a+60,120,b+60);
    125.     setcolor(4);
    126.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    127.     setcolor(2);
    128.     outtextxy((20+120)/2,(a+60+b+60)/2,"EXIT");
    129. }
    130. //*************************************************************
    131. void tille()
    132. {
    133.   int maxx,maxy;
    134.   maxx = getmaxx();
    135.   maxy = getmaxy();
    136.         rectangle(0,0,maxx,maxy);
    137.         setviewport(1,0,maxx-1,maxy-1,0);
    138.         setbkcolor(2);
    139.  setcolor(5);
    140.   rectangle(0,0,maxx-2,18);
    141.   setfillstyle(1,9);
    142.   bar(1,1,maxx-3,17);
    143.   setcolor(15);
    144.   settextjustify(CENTER_TEXT,CENTER_TEXT);
    145.   setcolor(4);
    146.   outtextxy((maxx)/2,18/2,"*** Chuong Trinh Ve Do Thi ***");
    147.  
    148. }
    149. //**************************************************************
    150. void menu()
    151. {
    152.   setcolor(14);
    153.   rectangle(20,20,100,40);
    154.   setfillstyle(1,9);
    155.   bar(21,21,99,39);
    156.   setcolor(15);
    157.   settextjustify(CENTER_TEXT,CENTER_TEXT);
    158.   setcolor(4);
    159.   outtextxy((20+100)/2,(20+40)/2,"VE DO THI");
    160. }
    161.         //*******************//
    162. void menu_click()
    163. {
    164.   setcolor(1);
    165.   rectangle(20,20,100,40);
    166.   setcolor(14);
    167.   line(21,40,99,40);
    168.   setfillstyle(1,9);
    169.   bar(21,21,99,39);
    170.   setcolor(5);
    171.   settextjustify(CENTER_TEXT,CENTER_TEXT);
    172.   setcolor(4);
    173.   outtextxy((20+100)/2,(20+40)/2,"VE DO THI");
    174. }
    175. //**************************************************************
    176. void menu_bac1()
    177. {
    178.     int a , b;
    179.     a = 45; b = 65;
    180.     setcolor(15);
    181.     rectangle(20,a,120,b);
    182.     setcolor(11);
    183.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    184.     setcolor(4);
    185.     outtextxy((20+120)/2,(a+b)/2,"Ham Bac 2/1");
    186. }
    187.         //**//
    188. void menu_bac10()
    189. {
    190.     int a , b;
    191.     a = 45; b = 65;
    192.     setcolor(12);
    193.     rectangle(20,a,120,b);
    194.     setcolor(11);
    195.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    196.     setcolor(4);
    197.     outtextxy((20+120)/2,(a+b)/2,"Ham Bac 2/1");
    198. }
    199.         //*****************//
    200.  
    201. void menu_cos()
    202. {
    203.     int a , b;
    204.     a = 45; b = 65;
    205.     setcolor(15);
    206.     rectangle(20,a+20,120,b+20);
    207.     setcolor(11);
    208.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    209.     setcolor(4);
    210.     outtextxy((20+120)/2,(a+20+b+20)/2,"Ham Cosin");
    211. }
    212.         //**//
    213. void menu_cos0()
    214. {
    215.     int a , b;
    216.     a = 45; b = 65;
    217.     setcolor(12);
    218.     rectangle(20,a+20,120,b+20);
    219.     setcolor(11);
    220.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    221.     setcolor(4);
    222.     outtextxy((20+120)/2,(a+20+b+20)/2,"Ham Cosin");
    223. }
    224.         //******************//
    225.  
    226. void menu_bac4()
    227. {
    228.     int a , b;
    229.     a = 45; b = 65;
    230.     setcolor(15);
    231.     rectangle(20,a+40,120,b+40);
    232.     setcolor(11);
    233.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    234.     setcolor(4);
    235.     outtextxy((20+120)/2,(a+40+b+40)/2,"Ham Bac 4");
    236. }
    237.         //**//
    238. void menu_bac40()
    239. {
    240.     int a , b;
    241.     a = 45; b = 65;
    242.     setcolor(1);
    243.     rectangle(20,a+40,120,b+40);
    244.     setcolor(1);
    245.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    246.     setcolor(5);
    247.     outtextxy((20+120)/2,(a+40+b+40)/2,"Ham Bac 4");
    248. }
    249.         //*******************//
    250.  
    251. void menu_exit()
    252. {
    253.     int a , b;
    254.     a = 45; b = 65;
    255.     setcolor(15);
    256.     rectangle(20,a+60,120,b+60);
    257.     setcolor(11);
    258.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    259.     setcolor(4);
    260.     outtextxy((20+120)/2,(a+60+b+60)/2,"EXIT");
    261. }
    262.         //**//
    263. void menu_exit0()
    264. {
    265.     int a , b;
    266.     a = 45; b = 65;
    267.     setcolor(12);
    268.     rectangle(20,a+60,120,b+60);
    269.     setcolor(11);
    270.     settextjustify(CENTER_TEXT,CENTER_TEXT);
    271.     setcolor(4);
    272.     outtextxy((20+120)/2,(a+60+b+60)/2,"EXIT");
    273. }
    274.         //***//
    275. void x_exit()
    276. {
    277.   int maxx;
    278.   maxx = getmaxx();
    279.   setcolor(15);
    280.   rectangle(maxx-19,1,maxx-3,17);
    281.   setfillstyle(1,4);
    282.   bar(maxx-18,2,maxx-4,16);
    283.   setcolor(15);
    284.   settextjustify(CENTER_TEXT,CENTER_TEXT);
    285.   setcolor(15);
    286.   outtextxy((maxx-18+maxx-3)/2,(18)/2,"X");
    287. }
    288. //**************************************************************
    289. void ve_bac1()
    290. {
    291.    int  i,maxx;
    292.    float x1,x2,a,b,c,d,e;
    293.    float y1,y2;
    294.    int a1,b1,c1,a2,b2;
    295.    maxx = getmaxx();
    296.  //  maxy = getmaxy();
    297.    setcolor(15);
    298.    rectangle(140,50,maxx-19,470);
    299.        /*Ve truc toa do*/
    300.    line(140,260,maxx-20,260);  //ve truc hoanh
    301.    for (i = 180 ; i <= maxx-10 ; i = i + 50)
    302.    putpixel(i,260,4);     //Chia truc do
    303.    line((maxx-140)/2+131,50,(maxx-140)/2+131,470);  //Ve truc tung
    304.    for (i = 60 ; i <= 470 ; i = i + 50)
    305.    putpixel((maxx-140)/2+131,i,4);
    306.       // Nhap gia tri o cho nay
    307.     printf("\n\n\n\n\n\n\n\n\nY=a*X^2+b*X+c/\n    e*X+d\n\n\nNhap a ="); scanf("%f",&a);
    308.     printf("Nhap b ="); scanf("%f",&b);
    309.     printf("Nhap c ="); scanf("%f",&c);
    310.     printf("Nhap d ="); scanf("%f",&d);
    311.     printf("Nhap e ="); scanf("%f",&e);
    312.     x1=0.02;      // ve nua ben trai
    313.     do
    314.     {
    315.  
    316.         x1 = x1 - 0.02;
    317.         x2 = x1 - 0.02;
    318.         y1 = ((a*x1*x1 + b*x1 + c)/(d*x1 + e))*50;
    319.         a1 = -(int)y1;
    320.         y2 = ((a*x2*x2 + b*x2 + c)/(d*x2 + e))*50;
    321.         a2 = -(int)y2;
    322.         setcolor(14);   delay(5);
    323.         line(x1*50+380,a1+260,x2*50+380,a2+260);
    324.     } while ( x1 > -5);
    325.  
    326.       x1=-0.02;      // ve nua ben phai
    327.     do
    328.     {
    329.  
    330.         x1 = x1 + 0.02;
    331.         x2 = x1 + 0.02;
    332.         y1 = ((a*x1*x1 + b*x1 + c)/(d*x1 + e))*50;
    333.         a1 = -(int)y1;
    334.         y2 = ((a*x2*x2 + b*x2 + c)/(d*x2 + e))*50;
    335.         a2 = -(int)y2;
    336.         setcolor(14);    delay(50);
    337.         if(a2+260 < 470 && a2+260 > 50)
    338.         line(x1*50+380,a1+260,x2*50+380,a2+260);
    339.     }
    340.      while( x1 < 5);
    341. }
    342. //************************************************************
    343. //////////////Ve do thi ham Cosin/////////////////
    344. void ham_cos(int b)              // ham Y = Cos aX
    345. {
    346.      int  i,maxx,x,y,x1,y1,a;  //  a = 2;
    347.    maxx = getmaxx();
    348.     setcolor(BLUE);
    349.  
    350.         setcolor(15);
    351.    rectangle(140,50,maxx-19,470);
    352.        /*Ve truc toa do*/
    353.    line(140,260,maxx-20,260);  //ve truc hoanh
    354.    for (i = 240%b+140 ; i <= maxx-10 ; i = i + b)
    355.    putpixel(i,260,4);              //Chia truc do
    356.    line((maxx-140)/2+131,50,(maxx-140)/2+131,470);  //Ve truc tung
    357.    for (i = 180%b+80 ; i <= 470 ; i = i + b)
    358.    putpixel((maxx-140)/2+131,i,4);
    359.     printf("\n\n\n\n\n\n\n\n\n\n\nY = Cos(a*X)\n Nhap a =\n"); scanf("%d",&a);
    360.  
    361.  
    362.      for(i = 380; i < 619; i ++)
    363.        {
    364.           x = i - 380;                        x1 = i+1-380;
    365.           y =  (b * cos(a*x*M_PI/(b))+260);  y1 = (b * cos(a*x1*M_PI/(b))+260);
    366.           if (y < 260)   y = 2*260 - y;
    367.           else
    368.           y = 2*260 - y;
    369.           if (y1 < 260)   y1 = 2*260 - y1;
    370.           else
    371.           y1 = 2*260 - y1;
    372.           setcolor(YELLOW); delay(5);
    373.           line(i,y,i+1,y1);
    374.        }
    375.      for (i = 380; i > 140; i --)
    376.        {
    377.           x = i - 380;                        x1 = i+1-380;
    378.           y =  (b * cos(a*x*M_PI/b)+260);  y1 = (b * cos(a*x1*M_PI/b)+260);
    379.           if (y < 260)   y = 2*260 - y;
    380.           else
    381.           y = 2*260 - y;
    382.           if (y1 < 260)   y1 = 2*260 - y1;
    383.           else
    384.           y1 = 2*260 - y1;
    385.           setcolor(YELLOW);  delay(5);
    386.           line(i,y,i+1,y1);
    387.        }
    388.  
    389. }
    390. //************************************************************
    391.         //Ve do thi ham bac 4//
    392. void ham4()
    393. {
    394.    int  i,maxx,y,a1,a2,ad1,ad2;
    395.    float x1,x2,a,b,c,d,e,xd1,xd2;
    396.    float y1,y2,yd1,yd2;
    397.    maxx = getmaxx();
    398.    setcolor(BLUE);
    399.         setcolor(15);
    400.    rectangle(140,50,maxx-19,470);
    401.        /*Ve truc toa do*/
    402.    line(140,260,maxx-20,260);  //ve truc hoanh
    403.    for (i = 130 ; i <= maxx-10 ; i = i + 50)
    404.    putpixel(i,260,4);              //Chia truc do
    405.    line((maxx-140)/2+131,50,(maxx-140)/2+131,470);  //Ve truc tung
    406.    for (i = 60 ; i <= 470 ; i = i + 50)
    407.    putpixel((maxx-140)/2+131,i,4);
    408.     printf("\n\n\n\n\n\n\n\n\n\nY=4*X^4-3*X^3\n+3*X^2-2\nNhap a ="); scanf("%f",&a);
    409.     printf("Nhap b ="); scanf("%f",&b);
    410.     printf("Nhap c ="); scanf("%f",&c);
    411.     printf("Nhap d ="); scanf("%f",&d);
    412.     printf("Nhap e ="); scanf("%f",&e);
    413. // bat dau ve//
    414.  x1=-0.02;   // ve nua ben phai
    415.     do
    416.     {
    417.  
    418.         x1 = x1 + 0.02;
    419.         x2 = x1 + 0.02;
    420.         y1 = (a*x1*x1*x1*x1 + b*x1*x1*x1 + c*x1*x1 + d*x1 + e)*50;
    421.         a1 = -(int)y1;
    422.         y2 = (a*x2*x2*x2*x2 + b*x2*x2*x2 + c*x2*x2 + d*x2 + e)*50;
    423.         a2 = -(int)y2;
    424.         setcolor(14);  delay(2);
    425.         if (x1*50+380>140 && a1+260 > 50 && x1*50+380 < maxx-19 && a1+260 < 470)
    426.         line(x1*50+380,a1+260,x2*50+380,a2+260);
    427.     } while(a2+260 > 50 && a2+260 < 470);
    428.  x1=0.02;      // ve nua ben trai
    429.     do
    430.     {
    431.  
    432.         x1 = x1 - 0.02;
    433.         x2 = x1 - 0.02;
    434.         y1 = (a*x1*x1*x1*x1 + b*x1*x1*x1 + c*x1*x1 + d*x1 + e)*50;
    435.         a1 = -(int)y1;
    436.            //   if (a1+260 > 50)
    437.         y2 = (a*x2*x2*x2*x2 + b*x2*x2*x2 + c*x2*x2 + d*x2 + e)*50;
    438.         a2 = -(int)y2;
    439.         setcolor(14);   delay(2);
    440.       //    if(x1*50+380 > 140) xd1 = x1*50+380;
    441.         line(x1*50+380,a1+260,x2*50+380,a2+260);
    442.     } while(a2+260 > 50 && a2+260 < 470);
    443.  
    444. }
    445. //***********************************************************
    446. main()
    447.     {
    448.         int gd=DETECT,gm,maxx,maxy,x,y,button,prevx,prevy;
    449.         initgraph(&gd,&gm,"D:\\tc\\bgi");
    450.         maxx=getmaxx();
    451.         maxy=getmaxy();
    452.         rectangle(0,0,maxx,maxy);
    453.         setviewport(1,0,maxx-1,maxy-1,0);
    454.         tille();
    455.         x_exit();
    456.         menu();
    457.         setbkcolor(2);
    458.         if(initmouse()==0)
    459.         {
    460.             closegraph();
    461.             restorecrtmode();
    462.             printf("Mouse Driver Not Loaded");
    463.             exit(1);
    464.         }
    465.         restrictmouseptr(1,1,maxx-1,maxy-1);
    466.         showmouseptr();
    467.         while(kbhit())  getch();
    468.         while(!kbhit())
    469.         {
    470.             getmousepos(&button,&x,&y);
    471.             if((button&1)==1)
    472.             {
    473.                 hidemouseptr();
    474.                 prevx=x;
    475.                 prevy=y;
    476.                 while((button&1)==1)
    477.                 {
    478.                 setcolor(4);
    479.                 line(prevx,prevy,x,y);
    480.                 prevx=x;
    481.                 prevy=y;
    482.                 getmousepos(&button,&x,&y);
    483.                 }
    484.             showmouseptr();
    485.             }
    486.         // ** lam them cho nay cho menu//
    487.          while(!kbhit())
    488.          {
    489.             getmousepos(&button,&x,&y);
    490.             if ((button&1)==1)
    491.             {
    492.             if ((x > 20 && x < 100) && (y > 20 && y < 40))
    493.               {
    494.                menu_click();
    495.                menu_hien();
    496.                lable_1:
    497.                while(!kbhit()) // tiep o menu thu 2//**********
    498.                  {
    499.                 getmousepos(&button,&x,&y);
    500.                 if ((button&1)==1)
    501.  
    502.                 {
    503.                 // chon ham bac 2/1
    504.                 if ((x > 20 && x < 120) && (y > 45 && y < 65))
    505.                    {
    506.                     clrscr();
    507.                     ClearWin(2,3,maxx,maxy,2);
    508.                     rectangle(0,0,maxx,maxy);
    509.                     setviewport(1,0,maxx-1,maxy-1,0);
    510.                     tille();
    511.                     x_exit();
    512.                     menu();
    513.                     setbkcolor(2);
    514.                     ClearWin(120,42,maxx,maxy,2);
    515.                     menu_cos0();
    516.                     menu_bac40();
    517.                     menu_exit0();
    518.                     menu_bac1();
    519.                     ve_bac1();
    520.  
    521.                    }
    522.                  // Chon ham bac Cosin
    523.                 if ((x > 20 && x < 120) && (y > 65 && y < 85))
    524.                    {
    525.                     clrscr();
    526.                     ClearWin(2,3,maxx,maxy,2);
    527.                     rectangle(0,0,maxx,maxy);
    528.                     setviewport(1,0,maxx-1,maxy-1,0);
    529.                     tille();
    530.                     x_exit();
    531.                     menu();
    532.                     setbkcolor(2);
    533.                     ClearWin(120,42,maxx,maxy,2);
    534.                     menu_bac10();
    535.                     menu_bac40();
    536.                     menu_exit0();
    537.                     menu_cos();
    538.                     ham_cos(40);
    539.                    }
    540.                 //  Chon ham bac 4
    541.                 if ((x > 20 && x < 120) && (y > 85 && y < 105))
    542.                    {
    543.                     clrscr();
    544.                     ClearWin(2,3,maxx,maxy,2);
    545.                     rectangle(0,0,maxx,maxy);
    546.                     setviewport(1,0,maxx-1,maxy-1,0);
    547.                     tille();
    548.                     x_exit();
    549.                     menu();
    550.                     setbkcolor(2);
    551.                     ClearWin(120,42,maxx,maxy,2);
    552.                     menu_bac10();
    553.                     menu_cos0();
    554.                     menu_exit0();
    555.                     menu_bac4();
    556.                     ham4();
    557.                    }
    558.                 // Chon nut thoat
    559.                 if ((x > 20 && x < 120) && (y > 105 && y < 125))
    560.                    {
    561.                     ClearWin(140,200,maxx-20,maxy-20,8);
    562.                     menu_bac10();
    563.                     menu_cos0();
    564.                     menu_bac40();
    565.                     menu_exit();
    566.                     exit(1);
    567.                    }
    568.                 // Chon ra ngoai
    569.                 if ((x < 20 || x > 120) || (y < 45 || y > 125))
    570.                    {
    571.                     ClearWin(0,42,maxx,maxy,2);
    572.                     menu();
    573.                     break;
    574.                    }
    575.                 }
    576.                  }
    577.                }
    578.               if (((x > 20) || (x < 100)) || ((y > 20) || (y < 40)))// Khi chua kick vao trong menu nao
    579.              menu_an();
    580.               if ((x > (maxx-19) && x < (maxx-3))&&(y > 1 && y <17)) // Khi click vao dau X tren ngoai thi Exit
    581.                 {
    582.                 exit(1);
    583.                 }
    584.             }
    585.          }
    586.           //ket thuc viec lam them
    587.         }
    588.     getch();
    589.     return(0);
    590.     }
    ban tham khoa đi

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

    tnglinh ơi giúp mình với .mình muốn vẽ các hàm cơ bản chỉ là bậc 1, 2, cos, sin thôi . bạn giúp mình với

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

  1. Swing code vẽ hình bị lỗi
    Gửi bởi friendly_smile trong diễn đàn Nhập môn lập trình Java
    Trả lời: 3
    Bài viết cuối: 05-04-2013, 07:14 AM
  2. Lập trình C Code vẽ cây nhị phân bằng dev c++ lỗi khi hiển thị cây bằng đồ họa
    Gửi bởi willnguyen trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 0
    Bài viết cuối: 23-11-2011, 03:40 PM
  3. viết code vẽ hình tam giác
    Gửi bởi tanhtanh28 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 13-10-2010, 07:00 PM
  4. Code vẽ tam giác bị lỗi gì thế?
    Gửi bởi chuong01 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 12
    Bài viết cuối: 25-08-2010, 05:14 PM
  5. Code vẽ cờ Mỹ
    Gửi bởi ngunenphaitu trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 2
    Bài viết cuối: 04-05-2010, 12:33 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