登录
首页
电脑编程
回帖
发帖
正文
主题:求各位VC++高手帮忙
点击:3064 回复:5
楼主
编辑
引用
管理
qqyypig
如何用VC++实现以下式子:
h(k+1)=0.99h(k)+2, 其中h(0)=0,求h(1)、h(2)、h(3)……h(100)
并将其这些点的运动轨迹显示在对话框中
纵坐标是所求的值,横坐标是时间,每隔一秒取一个点,并和前一个点用直线连起来,请问这又如何编程。
请各位高手帮帮小女子
最后修改:
2005-4-15 10:12:32
05-04-14 14:01
1楼
编辑
引用
管理
qqyypig
怎么,没人帮的了我吗???
最后修改:
2005-4-15 20:27:45
05-04-15 20:27
2楼
编辑
引用
管理
qqyypig
那就告诉我那个式子怎么编好吗????
05-04-18 17:22
3楼
编辑
引用
管理
tuxw
int x = 0, y = 0; // 第一个点坐标
int i, count = 100; // 循环计数,总点数
// 由客户区的宽度和总点数算出横坐标变化的步长
// 这样改变窗口大小始,水平方向图形始终満幅显示
// 很久未用 VC 了,不知道这个函数名是否正确
// 可以查一下 MSDN,我机器上未装 VC
CRect rc = GetClientXY( &rc)
int step = rc.Width() / count;
// 纵向比例调整
// 因为不知道最大的纵坐标为多少,图形可能超出客户区或者幅者太小而看不清
// 通过这个系数调整纵向的幅值
float ky = 1.0;
// 画笔移到第一个点
pDC->MoveTo(x, y);
// 后面的 count - 1 个点
for( i=1; i < count; ++i )
{
// 计算下一点的坐标
y = (0.99 * y + 2) * ky;
x += step;
pDC->LineTo(x, y);
}
将这段代码放在 OnDraw(CDC *pDC) 中,编译看看
05-04-19 11:03
4楼
编辑
引用
管理
旗舰
纯属基础知识!
这样的问题也问?
好好看看编程书吧!!!
05-04-20 00:42
5楼
编辑
引用
管理
gz_qmc
float h[101];
h[0]=0;
for(i=1;i<101;i++)
h[i]=h[i-1]*0.99+2;
剩下的工作就按你的方式显示就行了
07-07-29 16:15
工控新闻
邀请函 | 7月25日西安集结,华北工控邀您共话工业/国防科技行业数智新未来!
让科技有温度:埃夫特欧洲子公司携手i Bambini delle Fate共筑公益梦
德力西电气工业及新能源行业交流会圆满落幕
VisionChina2026(上海)机器视觉展焕新登场,报名抢占黄金展位!
ABB集团发布2025年第二季度业绩
优必选Walker S2全球首个实现自主换电,7*24小时打工的人形机器人要来了
和利时助力上海电气洮南市风电耦合生物质绿色甲醇一体化示范项目顺利投产
北尔电子携手诺顺科技引领亚太智能装备展智能制造新风潮
更多新闻资讯