c语言写一元一次函数图像,【仿真】绘制一次函数图像

4250596c838e3cbbcb1de4a7a230b4cb.gif

360截图20200320092354010.jpg (34.52 KB, 下载次数: 4)

2020-3-20 14:22 上传

春分,是春季九十天的中分点。二十四节气之一,

每年农历二月十五日前后(公历大约为3月20-21日期间),太阳位于黄经0°(春分点)时。

春分这一天太阳直射地球赤道,南北半球季节相反,北半球是春分,在南半球来说就是秋分。

利用mPython设计一个一次函数图像,现在分享给大家!

4250596c838e3cbbcb1de4a7a230b4cb.gif

3.jpg (69.08 KB, 下载次数: 4)

2020-3-20 14:23 上传一、知识库:

1、掌握图形绘图的方法

2、了解一次函数相关知识

3、熟悉函数模块使用

二、学一学

4250596c838e3cbbcb1de4a7a230b4cb.gif

360截图20200320095656999.jpg (45.17 KB, 下载次数: 6)

2020-3-20 14:24 上传绘制一次函数图像的一般步骤:

第一步:列表——根据表中给出一些自变量的值及其对应的函数值;

第二步:建立坐标系——绘制出直角坐标系中横坐标:x轴和纵坐标:y轴以及原点:0

第三步:描点——根据列表中数据,描出表格中对应的个点

第四步:连线——按照横坐标由小到大的顺序,把所有描出的各点用平滑的曲线连接起来。

4250596c838e3cbbcb1de4a7a230b4cb.gif

360截图20200320100407306.jpg (83.92 KB, 下载次数: 7)

2020-3-20 14:38 上传三、想一想

如何用掌控板绘制一个一次函数图像?

4250596c838e3cbbcb1de4a7a230b4cb.gif

360截图20200320101222736.jpg (57.38 KB, 下载次数: 7)

2020-3-20 14:40 上传四、练一练

1.绘制平面坐标轴

由于掌控板的分辨率128*64,在掌控板中绘制坐标轴,我们将坐标的原点定位在掌控板OLED 屏幕(63,32),

4250596c838e3cbbcb1de4a7a230b4cb.gif

坐标轴.jpg (125.76 KB, 下载次数: 7)

2020-3-20 14:43 上传

左侧,显示块中绘制水平线起点(32,0),线长 126;绘制垂直线起点(63,0),线长63.

4250596c838e3cbbcb1de4a7a230b4cb.gif

360截图20200320102322301.jpg (105.7 KB, 下载次数: 4)

2020-3-20 14:46 上传

2.描点连线

根据上面的列表的数据,我们从取点变量i(-30——30),循环取点,

通过显示块中描点工具 ,描点30次,形成一条虚线!

4250596c838e3cbbcb1de4a7a230b4cb.gif

360截图20200320103747674.jpg (126.79 KB, 下载次数: 7)

2020-3-20 14:52 上传

左侧——显示块找到绘制描点块,准备描点

4250596c838e3cbbcb1de4a7a230b4cb.gif

360截图20200320145452505.jpg (39.93 KB, 下载次数: 7)

2020-3-20 14:56 上传

左侧——数学块,计算x=63+i*1;y=32+i

五、做一做:

按A键绘制坐标系,按B键绘制抛物线,交互式作品。

4250596c838e3cbbcb1de4a7a230b4cb.gif

360截图20200320104856855.jpg (100.75 KB, 下载次数: 7)

2020-3-20 15:03 上传

左侧——高级块中添加函数描点和坐标两个函数块

4250596c838e3cbbcb1de4a7a230b4cb.gif

主程序.jpg (91.27 KB, 下载次数: 7)

2020-3-20 15:04 上传

4250596c838e3cbbcb1de4a7a230b4cb.gif

1.jpg (79.08 KB, 下载次数: 7)

2020-3-20 15:04 上传

六、视频回放

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 以下是一个C语言程序,可以绘制函数图像并包含坐标轴。 ``` #include <stdio.h> #include <stdlib.h> #include <math.h> #define WIDTH 80 #define HEIGHT 40 int main() { double x, y; int i, j; char graph[HEIGHT][WIDTH]; // 初始化图像数组 for (i = 0; i < HEIGHT; i++) { for (j = 0; j < WIDTH; j++) { graph[i][j] = ' '; } } // 绘制坐标轴 for (i = 0; i < WIDTH; i++) { graph[HEIGHT/2][i] = '-'; } for (i = 0; i < HEIGHT; i++) { graph[i][WIDTH/2] = '|'; } graph[HEIGHT/2][WIDTH/2] = '+'; // 绘制函数图像 for (x = -WIDTH/2.0; x < WIDTH/2.0; x += 0.1) { y = sin(x); j = (int) (x*10 + WIDTH/2); i = (int) (-y*10 + HEIGHT/2); if (i >= 0 && i < HEIGHT && j >= 0 && j < WIDTH) { graph[i][j] = '*'; } } // 打印图像数组 for (i = 0; i < HEIGHT; i++) { for (j = 0; j < WIDTH; j++) { putchar(graph[i][j]); } putchar('\n'); } return 0; } ``` 这个程序使用了一个二维字符数组来表示图像,然后通过循环绘制坐标轴和函数图像。在这个例子中,我们绘制了 $y = sin(x)$ 函数图像,但你可以使用任何你想要的函数。 程序运行后,会在终端窗口中显示出绘制图像,如下所示: ``` * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * | | +--------------------------------------------------------------------------+ | | * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ``` 注意,这个程序使用了 ANSI 转义序列来移动光标并在终端窗口中输出字符,因此在一些特定的终端模拟器中可能无法正常显示。 ### 回答2: 下面是一个使用C语言绘制函数图像的例子,包含坐标轴: ```c #include <stdio.h> #define MAX_X 80 #define MAX_Y 20 void drawGraph(int x, int y, char graph[MAX_Y][MAX_X]) { int i, j; for (i = 0; i < y; i++) { for (j = 0; j < x; j++) { printf("%c", graph[i][j]); } printf("\n"); } } int main() { int i, j; char graph[MAX_Y][MAX_X]; int centerX = MAX_X / 2; int centerY = MAX_Y / 2; // 初始化图像数组 for (i = 0; i < MAX_Y; i++) { for (j = 0; j < MAX_X; j++) { graph[i][j] = ' '; } } // 绘制x轴 for (i = 0; i < MAX_X; i++) { graph[centerY][i] = '-'; } // 绘制y轴 for (i = 0; i < MAX_Y; i++) { graph[i][centerX] = '|'; } // 绘制函数图像 y = x * x for (i = 0; i < MAX_X; i++) { int x = i - centerX; int y = x * x; if (y < MAX_Y && y >= -MAX_Y) { graph[centerY - y][i] = '*'; } } // 打印绘制图像 drawGraph(MAX_X, MAX_Y, graph); return 0; } ``` 以上的例子中使用了一个二维数组来表示图像图像大小是80x20。首先,在初始化数组时将每个位置设置为空格字符。然后使用循环分别绘制x轴和y轴,x轴使用'-'字符绘制,y轴使用'|'字符绘制。最后,使用函数y = x * x绘制函数图像,将函数图像上的点使用'*'字符表示。最后通过`drawGraph`函数打印出整个图像。 注意,以上的例子只绘制了一个简单的函数图像,你可以根据需要修改绘制函数图像大小来实现不同的效果。 ### 回答3: 下面是一个用C语言绘制函数图像并包含坐标轴的示例程序: ```c #include <stdio.h> #include <math.h> // 定义绘制区域的大小 #define WIDTH 40 #define HEIGHT 20 // 定义函数 float function(float x) { // 这里以绘制y = sin(x)函数为例 return sin(x); } int main() { // 初始化绘图区域 char graph[HEIGHT][WIDTH]; for (int i = 0; i < HEIGHT; i++) { for (int j = 0; j < WIDTH; j++) { graph[i][j] = ' '; } } // 绘制坐标轴 for (int i = 0; i < WIDTH; i++) { graph[HEIGHT/2][i] = '-'; } for (int i = 0; i < HEIGHT; i++) { graph[i][WIDTH/2] = '|'; } graph[HEIGHT/2][WIDTH/2] = '+'; // 绘制函数图像 float x0 = -2 * M_PI; // x的起始值 float x1 = 2 * M_PI; // x的终止值 float dx = (x1 - x0) / WIDTH; for (int i = 0; i < WIDTH; i++) { float x = x0 + i * dx; float y = function(x); int j = HEIGHT/2 - y * (HEIGHT/2) - 1; if (j >= 0 && j < HEIGHT) { graph[j][i] = '*'; } } // 输出绘图结果 for (int i = 0; i < HEIGHT; i++) { for (int j = 0; j < WIDTH; j++) { printf("%c", graph[i][j]); } printf("\n"); } return 0; } ``` 以上程序使用了一个二维字符数组来表示绘图区域,坐标轴被绘制为'-'和'|'字符,函数图像使用'*'字符表示。程序首先初始化绘图区域,然后根据设定的函数绘制函数图像,最后输出绘图结果。在此示例中,我们绘制了y = sin(x)函数图像。您可以根据需要修改函数绘制其他函数图像
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值