c语言对称画,抛物线是对称的,但为什么画出来两边不一样高?

这是一个C语言程序,用于在图形窗口中绘制抛物线y=4*(x-6)^2 + 4。程序首先初始化图形模式,然后通过循环遍历x值,计算对应的y值,并用线条连接各个点,形成抛物线图像。只显示-200到200像素范围内的y值部分。
摘要由CSDN通过智能技术生成

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

源文件如下:

#include

#include

#include

#include

void main()

{

int s=0,prx,pry;

double lx,ly;/*lx,ly是函数坐标,不是屏幕坐标,1个单位函数坐标用10个像素表示*/

int gdriver=DETECT,gmode,mex,mey;

clrscr();

initgraph(&gdriver,&gmode,"d:\\tc");/*初始化图形模式*/

/* 注意tc2.0 在硬盘上的地址*/

mex=getmaxx()/2;mey=getmaxy()/2;

setcolor(WHITE);

line(mex-300,mey,mex+300,mey);

line(mex,mey-200,mex,mey+200);

setcolor(BLUE);

for(lx=-30;lx<=30;lx+=0.1)

/* 取 -300~+300像素之间的x值 */

{

ly=4*(lx-6)*(lx-6)+4;             /**** function ****/

/*y=4(x-6)^2 + 4 */

if(s) /*是否是第一次 */

{ /*不是第一次*/

if(ly<20+1e-7&&-ly<20+1e-7)

/* 只画 -200~+200像素之间的y值(+1e-7 是为了避免浮点数带来的误差)*/

line(prx,pry,mex+lx*10,-ly*10+mey);

prx=mex+lx*10;

pry=-ly*10+mey;

}

else { /*第一次不画线*/

prx=mex+lx*10;

pry=-ly*10+mey;

s=1;

}

}

getch();

closegraph();

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值