当前位置:文档之家› 求玉米产量计算

求玉米产量计算


第三步——选择计算三角形面积公式 第三步——选择计算三角形面积公式
S = s (s − a)(s − b)(s − c)
– S是三角形面积,a、 b、 c 三角形三边边长 是三角形面积, – s=(a+b+c)/2
第四步—— 计算△ABD(△ BCD)面积 第四步—— 计算△ABD(△ BCD)面积
程序设计语言
X+15 Y= X-15 若 X<Y 若 X ≥ Y
机器语言
1010 1001 0001 0110 0000 0001 0011 1100 0001 1000 0000 0001 … … … … … … … 0000 0000 0000 0000 0000 0000 0000 0000
第一步
– 计算该地块面积 – 折合成亩(每亩1000平方米) 折合成亩(每亩1000平方米 平方米) – 求总产量
第二步
– 计算三角形ABD的面积,设为S1; 计算三角形ABD的面积 设为S1; 的面积, – 计算三角形BCD的面积,设为S2; 计算三角形BCD的面积 设为S2; 的面积, – S1+S2
常量定义
float ab, bd, ad, bc, cd ; float s, s1 ,s2,ss,m;
变量声明
void main(void) { // 主函数 // 计算一个三角形面积 ab=sqrt( (xa-xb)* (xa-xb)+(ya-yb)* (ya-yb) );//边ab长 (xa(xa-xb)+(ya(ya);//边ab长 bd=sqrt( (xb-xd)* (xb-xd)+(yb-yd)* (yb-yd) );//边bd长 (xb(xb-xd)+(yb(yb);//边bd长 ad=sqrt( (xa-xd)* (xa-xd)+(ya-yd)* (ya-yd) );//边ad长 (xa(xa-xd)+(ya(ya);//边ad长 s=(ab+bd+ad)/2; //s s1=sqrt( s*(s-ab)*(s-bd)*(s-ad) ); s*(s-ab)*(s-bd)*(s//面积 //面积 // 计算另一个三角形面积 bc=sqrt( (xb-xc)* (xb-xc)+(yb-yc)* (yb-yc) );//边BC长 (xb(xb-xc)+(yb(yb);//边BC长 cd=sqrt( (xc-xd)* (xc-xd)+(yc-yd)* (yc-yd) );//边CD长 (xc(xc-xd)+(yc(yc);//边CD长 s=(bc+bd+cd)/2; //边BD长bd前边已经计算 //边BD长bd前边已经计算 s2=sqrt( s*(s-bc)*(s-bd)*(s-cd) ); s*(s-bc)*(s-bd)*(sss=s1+s2; // 总面积S=S1+S2 总面积S=S1+S2 ss=ss/1000; // 折合成亩 m=ss*950; // 计算总产量 printf(“m=%10.3f\ printf(“m=%10.3f\n”,m); // 打印输出 }
C语言的缺点 语言的缺点
1. 2. 3. 4. 5. 6.
语法不严格 类型机制不严密, 类型机制不严密,比如字符类型与整数类型 没有区别、 没有区别、不检查下标超界 程序设计自由度太大, 程序设计自由度太大,不利于保证程序的正 确性 若程序与计算机硬件联系太密切, 若程序与计算机硬件联系太密切,则可移植 性不好 有些语言成分太复杂, 有些语言成分太复杂,比如运算符 语言本身不能保证程序设计的结构化。 语言本身不能保证程序设计的结构化。
1.1算法的PAD描述 算法的PAD 图1.4 例1.1算法的PAD描述
程序
什么是程序
– 指令序列
程序语言
– 与计算机交流 – 下达指令
具体程序
#include <stdio.h> #include <math.h> #define #define #define #define #define #define #define #define xa 547 ya 411 xb 804 yb 77 xc 39 yc 208 xd 116 yd 332 头文件
汇编语言
MOV AX ,X CMP AX ,Y JL S1 SUB AX ,15 JMP S2 ADD AX ,15 MOV Y ,AX ……………… X DW ? Y DW ?
S1: S2:
高级语言
if (X<Y) Y=X+15; else Y=X-15;
注意
高级语言并不单单指C语言, 高级语言并不单单指 语言,如VC,BASIC 等语 语言 言也属于高级语言范畴。 言也属于高级语言范畴。
PAD (Problem Analysis Diagram)
操作1 操作 操作2 操作 操 作 … 操作n 操作
图1.2 基本操作
图1.3 顺序控制结构
按公式 计算边AB边长度 ; 计算边 边长度ab; 边长度 用同样公式计算边BD长度 ; 用同样公式计算边 长度bd; 长度 用同样公式计算边AD长度 ; 用同样公式计算边 长度ad; 长度 计算s 按公式 计算 按公式 计算△ABD的面积 计算△ 的面积S1 的面积 计算另一个△ BCD面积 面积S2 计算另一个△形BCD面积S2 求总面积S=S1+S2 求总面积 折合成亩 计算总产量 打印输出
C语言的优点 语言的优点
1. 2. 3. 4. 5. 6. 7.
语言简洁、紧凑,使用方便、灵活; 语言简洁、紧凑,使用方便、灵活; C本身是模块式,便于集体分工合作开发大 本身是模块式, 本身是模块式 型程序 运算符丰富 数据结构丰富 具有结构化控制结构 与计算机硬件联系紧密, 与计算机硬件联系紧密,可以直接访问计算 机内存, 机内存,具有位操作 生成目标代码质量高。 生成目标代码质量高。
算法
什么是算法
– 一个计算过程,包含具体明确的操作 一个计算过程, – 描述了解决问题的方法和途径 – 是程序设计的基础和精髓
有效算法的特点
– 有穷性 – 确定性 – 有效性
算法的组成
基本操作
– 表达式以及给变量赋值 – 读(输入) 输入) – 写(输出) 输出)
基本控制结构
– 顺序控制结构 – 分支控制结构 – 循环控制结构 – 函数调用 – 函数返回
一般C程序执行 一般 程序执行
文件hello.c 文件 #include <stdio.h> void hello(void){ printf(“Hello!\n”); } 文件startup.c 文件 extern void hello(void) int main(void) { hello(); return 0 }
程序执行
用汇编语言或高级语言编出程序 编辑、 编辑、录入源程序 由翻译器(编译程序) 由翻译器(编译程序) 将源程序翻译成机器语言程序 由连接程序将机器语言程序连接 生成计算机可执行的程序 将可执行程序送入计算机 并启动计算机执行 得到最后结果
用汇编语言或高级语言编出程序 编辑、 编辑、录入源程序 由翻译器(编译程序) 由翻译器(编译程序) 将源程序翻译成机器语言程序 由连接程序将机器语言程序连接 生成计算机可执行的程序 将可执行程序送入计算机 并启动计算机执行 得到最后结果 数据出错 程序出错 出错
hello.c startup.c
hello.obj startup.exe startup.obj
C语言的历史背景 语言的历史背景
70年代初,C 语言在美国贝尔实验室诞生。它的前身可 年代初, 语言在美国贝尔实验室诞生。 年代初 以追朔到ALGOL60 、CPL 、BCPL 、B 。 以追朔到 1982年C标准化工作开始 。 年 标准化工作开始 1989年ISO公布 年 公布ISO/IEC 9899:1990 ,简称“C89”。 简称“ 公布 。 1995年对 年对C89作修改和补充,称为“C95”。 作修改和补充, 年对 作修改和补充 称为“ 。 1999对C进行更大的修订后,公布 ISO/IEC 9899:1999, 对 进行更大的修订后 进行更大的修订后, , 简称“C99”。 简称“ 。 我国于1994年12月4日公布了“中华人民共和国国家标 年 月 日公布了 日公布了“ 我国于 准 GB/T 15272-94 程序设计语言 C”。 。
一般C程序 一般 程序
文件hello.c 文件 #include <stdio.h> void hello(void){ printf(“Hello!\n”); } 文件startup.c 文件 extern void hello(void) int main(void) { hello(); return 0 }
第一章 绪论
求玉米产量—计算 求玉米产量 计算 算法 PAD图 图 程序 运行 C 语言 Visual C++集成开发环境 集成开发环境 本章小结 作业
求玉米产量—计算 求玉米产量 计算
北 547 116 D 39 C 332 208 804 411 B 77 A 东
图1.1 四边形地块
分析步骤
2
2
计算过程
1. 2. 3. 4. 5. 6. 7. 8. 9.
按公式求出AB边长度 按公式求出AB边长度 ab 用同样公式计算边BD长度 长度bd 用同样公式计算边BD长度bd 用同样公式计算边AD长度 长度ad 用同样公式计算边AD长度ad 按公式计算出s 按公式计算出s 按公式计算出△ABD的面积 的面积S1 按公式计算出△ABD的面积S1 重复上述1 步计算△BCD的面积 的面积S2 重复上述1、2、3、4、5步计算△BCD的面积S2 计算总面积S=S1+S2 计算总面积S=S1+S2 把面积S折合成亩SS= 把面积S折合成亩SS=S/1000 计算总产量M SS× 计算总产量M=SS×950
相关主题