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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| #include<stdio.h>
#include<stdlib.h>
#include<graphics.h>
#include<math.h>
/*La fonction f(x) à tracer */
float f(float x)
{
return x*sin(x);
}
/*Le programme qui trace la fonction*/
int main()
{
/*Les variables*/
float a,b,min,max,x,y;
int xmax,ymax,i,j;
/*Saisie des bornes de l'intervalle*/
printf("Entrez la borne minimale de l'intervalle : \n");
scanf("%f",&a);
printf("Entrez la borne maximale de l'intervalle : \n");
scanf("%f",&b);
/*Saisie des valeurs limites */
printf("Entrez la valeur limite maximale : \n");
scanf("%f",&max);
printf("Entrez la valeur limite minimale : \n");
scanf("%f",&min);
/*Passer en mode graphique */
int graphdriver=DETECT,graphmode;
/*Le programme détectera automatiquement le type*/
/*de carte dont est équipé l'ordinateur*/
intgraph(&graphdriver,&graphmode,"");
/*Calcul de xmax et ymax*/
xmax=getmaxx();
ymax=getmaxy();
/*rectangle autour de l'écran*/
rectangle(0,0,xmax,ymax);
/*Calcul des points*/
for(i=0;i<=xmax;i++)
{
/*calcul de x*/
x=(i*(b-a))/xmax+a;
/*calcul de y fonction de x */
y=f(x);
/*calcul du j */
j=((y-min)*(ymax)/(max-min)+ymax;
if (j<0) {j=0;}
if ( j>ymax){j=ymax;
/*affiche le point i,j */
putpixel(i,j,1);
}
/*Attendre une touche*/
getchar();
/*On ferme le mode graphique*/
closegraph();
} |
Partager