函数的计算机处理8(11)_3VC++VS
Posted 蜘蛛网计算机语言
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数的计算机处理8(11)_3VC++VS相关的知识,希望对你有一定的参考价值。
计算机语言运用--数值计算8-函数的计算机处理8(11)_3VC++VS
……接上一讲……
函数有三种基本的表达形式:
公式法
y=3x,当x=3时,y=9
表格法
x=1,2,3,4,5; y=3,6,9,12,15
图像法—几何法
用计算机辅助处理—最基本的初等函数问题。函数的性态--自变量以外的系数含义
MATLAB语言及其平台 Fortran语言及其平台 C语言及其V6平台 VC++语言及其V6平台
C++语言是一种编译型的面向对象方法的高级程序设计语言,也就是说,先生成*.exe文件再执行。
VC++语言及其VS平台--函数的性态—一个一元二次函数—非线性函数
计算机语言表述___一个函数文件
voidCVS_VCFunction_PictrueDlg::OnBnClickedButton4()
{
//TODO: 在此添加控件通知处理程序代码--二次函数分析
double i,x,y,pi;
CClientDCdc(this);
CDC*pDCg=this->GetDC();
CDC*pDCb=this->GetDC();
CPenpenBlue;
CPenpenGreen;
penBlue.CreatePen(PS_SOLID,2,RGB(0,0,225));
penGreen.CreatePen(PS_DASH,1,RGB(0, 255, 0));
::SelectObject(pDCb->GetSafeHdc(),penBlue);
::SelectObject(pDCg->GetSafeHdc(),penGreen);
dc.TextOut(200,300,_T("二次函数 ax2+bx+c 中参数 c 的作用-意义"));
dc.MoveTo(3800,4400);
for(i=-120;i<120;i++)
{
x=2*i;
y=40*c2+0.2*b2*x+0.02*a2*x*x;
dc.LineTo(y,x+200);
}
dc.LineTo(3800,3800);
pDCb->MoveTo(3800,4400 );
for(i=-120;i<120;i++)
{
x=2*i;
y=70*c2+0.2*b2*x+0.02*a2*x*x;
pDCb->LineTo(y,x+200);
}
pDCb->LineTo(3800,3800);
pDCg->MoveTo(3800,4400);
for(i=-120;i<120;i++)
{
x=2*i;
y=20*c2+0.2*b2*x+0.02*a2*x*x;
pDCg->LineTo(y,x+200);
}
pDCg->LineTo(3800,3800);
dc.MoveTo(0,200 );
dc.LineTo(640,200 );
}
voidCVS_VCFunction_PictrueDlg::OnBnClickedButton1()
{
//TODO: 在此添加控件通知处理程序代码
UpdateData(true);
m_Ea1=0.0;
m_Eb1=0.0;
m_Ea2=0.0;
m_Eb2=0.0;
m_Ec2=0.0;
UpdateData(false);
}
voidCVS_VCFunction_PictrueDlg::OnBnClickedButton2()
{
//TODO: 在此添加控件通知处理程序代码
UpdateData(true);
a1=m_Ea1;
b1=m_Eb1;
a2=m_Ea2;
b2=m_Eb2;
c2=m_Ec2;
}
//////////////////////
dc.TextOut(200,300,_T("二次函数 ax2+bx+c 中参数 b 的作用-意义"));
dc.MoveTo(3800,4400);
for(i=-120;i<120;i++)
{
x=2*i;
y=40*c2+0.2*b2*x+0.01*a2*x*x;
dc.LineTo(y,x+200);
}
dc.LineTo(3800,3800);
pDCb->MoveTo(3800,4400);
for(i=-120;i<120;i++)
{
x=2*i;
y=40*c2+0.4*b2*x+0.01*a2*x*x;
pDCb->LineTo(y,x+200);
}
pDCb->LineTo(3800,3800);
pDCg->MoveTo(3800,4400);
for(i=-120;i<120;i++)
{
x=2*i;
y=40*c2+0.1*b2*x+0.01*a2*x*x;
pDCg->LineTo(y,x+200);
}
pDCg->LineTo(3800,3800);
dc.MoveTo(0,200 );
dc.LineTo(640,200 );
}
/////////////////////////////
dc.TextOut(200,300,_T("二次函数 ax2+bx+c 中参数 a 的作用-意义"));
dc.MoveTo(3800,4400);
for(i=-120;i<120;i++)
{
x=2*i;
y=40*c2+0.1*b2*x+0.01*a2*x*x;
dc.LineTo(y,x+200);
}
dc.LineTo(3800,3800);
pDCb->MoveTo(3800,4400 );
for(i=-120;i<120;i++)
{
x=2*i;
y=40*c2+0.1*b2*x+0.03*a2*x*x;
pDCb->LineTo(y,x+200);
}
pDCb->LineTo(3800,3800);
pDCg->MoveTo(3800,4400);
for(i=-120;i<120;i++)
{
x=2*i;
y=40*c2+0.1*b2*x+0.07*a2*x*x;
pDCg->LineTo(y,x+200);
}
pDCg->LineTo(3800,3800);
dc.MoveTo(0,200 );
dc.LineTo(640,200 );
}
函数的表格表示
能读出什么信息
…………
函数的图形表述
a控制曲线开口大小
b控制曲线旋转
c控制曲线平移
抽象数学的实际运用—应用问题的计算机语言表述
在抽象的数学以外,物理学、化学、生物学、工程技术等领域,经济学、社会学、……;只要数学函数进入某个领域或学科,带有量纲,则有了一些更有趣的现象。
y=ax+b
在物理学的力学中,a代表加速度,x代表时间(当然,时间用t表达更符合习惯—欧洲人先定义指代的Time),y则代表速度(当然,速度用v表达更符合习惯—欧洲人先定义指代的Velocity),b则代表初始速度(当然,速度用v表达V0);
b代表坐标平移—初始速度不同;
a代表坐标旋转(倾角)—加速度大小不同
在物理学的力学中,a代表速度(当然,速度用v表达更符合习惯—欧洲人先定义指代的Velocity),x代表时间(当然,时间用t表达更符合习惯—欧洲人先定义指代的Time),y则代表位移(当然,位移用s表达更符合习惯—欧洲人先定义指代的Shift),b则代表初始位移(当然,位移用s表达s0);
b代表坐标平移—初始位移不同;
a代表坐标旋转(倾角)—速度大小不同
s=s0+vt
那么,位移与加速度又是什么关系呢?
s=(1/2)at2+v0t+s0 y=ax2+bx+c
二次函数的关系—它的性态是什么呢?
以上是关于函数的计算机处理8(11)_3VC++VS的主要内容,如果未能解决你的问题,请参考以下文章
Vue -- 监视属性watch VS 计算属性computed & 箭头函数和普通函数的this指向问题
《计算机视觉和图像处理简介 - 中英双语版》:神经网络中的激活函数 ReLU vs Sigmoid