mooc- 基本程序设计方法week1,week2
学习了第一单元我们几本可以写出10行左右的代码。
week1:python编程之基本方法
1、从计算机到程序设计语言:
理解计算机:计算机是能够根据一组指令操作数据的机器。
功能性:可以进行数据计算
可编程性:根据一系列指令来执行
计算机的分类:嵌入式计算机、超级计算机、服务器计算机、个人计算机、网络计算机
2、程序设计的基本方法:
IPO方法:
I:输入,程序的输入,包括用户手工输入、网络输入、程序内部参数输入、文件输入、随机数据输入。输入是一个程序的开始。
P:处理,程序的主要逻辑,程序对输入进行处理输出产生结果,处理的方法也叫算法,是程序最重要的部分,算法是一个程序的灵魂。
O:输出,程序的输出,包括屏幕显示输出、网络输出、操作系统内部变量输出、文件输出。输出是一个程序展示运算成果的方式。
那么有没有没有输入、输出的程序呢,答案是有,例如:where(True)a=2,这是一个死循环,死循环没有输入、输出,那么死循环是不是就没有价值呢,答案是否定的,死循环通过不间断的执行,可以快速消耗cpu的资源,因此我们可以测试cpu的性能。因此IPO是思考程序设计最基本的方法。
week1:python变成之实例解析
1、通过“温度转换程序”来讲解python语法元素入门
自找介质默写“温度转换程序”中的python语法元素,介质如下:
i:首先体现了几本程序设计方法
ii:再次通过“温度转换程序”这个程序例子体现了python的语法元素,如下所列:
程序元素:注释、输入、输出、分支、变量:常量,保留字、切片:字符串、强制类型转换、格式化输出:%和{}format、表达式、赋值语句:可以同时给多个变量赋值、缩进、循环。
2、蟒蛇绘制程序
自找介质默写“蟒蛇绘制程序”中的python语法元素,介质如下:
i:“蟒蛇程序设计分析”
turtle.setup()函数用于启动一个图形窗口,它有四个参数。
turtle.setup(width,height,startx,starty)分别是起动窗口的宽度和高度,小乌龟x轴和y轴起点位置确定。
我们所使用的显示屏幕也是一个坐标系,该坐标系以左上角为原点,像左和像下分别为x轴和y轴.
turtle.pensize()函数表示小乌龟运动轨迹的宽度,单位是像素。
turtle.pencolor()函数表示小乌龟运动轨迹的颜色。
turtle.seth()函数表示小乌龟运动轨迹的方向。

turtle.circle()函数让小乌龟沿着一个圆形爬行,第一个参数描述圆形轨迹的半径,第一个参数有正负功能之分,第二参数描述圆形的弧度值。
turtle.fd()函数表示让小乌龟向前直线爬行移动,它有一个参数表示爬行的距离。
ii:程序设计元素:函数、程序运行、turtle库、import导入外部库的关键字。
3、turtle 库快速参考,详见下载的附件,e:\学习\python
4、week1的练习
i:第一单元练习已完成。绘制运行出了太阳花,五角星。
ii:eval() 函数用来执行一个字符串表达式,并返回表达式的值。
#TempConvert.py
for i in range(3):
val=input("qing shu ru xu yao zhuan huan de wen du,li ru 32 C:")
if val[-1] in ['c','C']:
f=1.8*eval(val[0:-1])+32
print("zhuan huan hou de wen du wei:%.2ff"%f)
elif val[-1] in ['f','F']:
c=(eval(val[0:-1])-32)/1.8
print("zhuan huan hou de wen du wei:%.2fc"%c)
else:
print('shu ru you cuo')
iii:自己也画了一个等边三角形
iv:python语言的魅力在于使用大量的外部函数库,python对函数库的引用有两种方式,第一种方式是import <库名>,如果需要用到函数库中的函数,则需要<库名>.<函数名>.第二种方式是:from <库名> import <函数名> ,调用函数不需要库名,直接使用函数名。两种引用方式对程序运行没有区别,需要注意,第一种用户定义的函数名可疑和库中的名字一样,第二种用户程序中的函数名不能用函数库中的名字定义。
v:turtle库中的其它函数不熟悉,另外week1 第一单元 第7个和第8个关于turtle的例子也不熟悉。
mooc- 基本程序设计方法week1,week2的更多相关文章
- 《程序设计方法》【PDF】下载
内容简介 <程序设计方法>主要以方法为主导,结合C语言,把程序设计方法学研究中若干成熟的理论和方法用通俗易懂的语言描述出来.<程序设计方法>还选取趣味性强.技巧性高.能够启发学 ...
- C++程序设计方法6:算法横向拆分
例子1:负载监视器,如何在一个程序中实现对这些不同条件的适应呢? int main() { WindowDisplay display; Monitor monitor(&display); ...
- C++程序设计方法4:函数模板
函数模板 有些算法与类型无关,所以可以将函数的参数类型也定义为一种特殊的“参数”,这样就得到“函数模板” 定义函数模板的方法:template<typename T> 返回类型 函数名称( ...
- C++程序设计方法3:自动类型转换
方法1:在源类中定义目标类型转换运算符 #include <iostream> using namespace std; class Dst { public: Dst() { cout ...
- C++程序设计方法3:函数重写
派生类对象包含从基类继承类的数据成员,他们构成了“基类子对象”基类中的私有成员,不允许在派生类成员函数中被访问,也不允许派生类的对象访问他们:真正体现基类私有,对派生类也不开放其权限:基类中的公有成员 ...
- C++程序设计方法5:接口设计实例
//例子:旋转方阵填充,要求矩阵大小任意,尺寸在运行时输入 设计思路:从上到下 int main() { cout << "Please input N:"; int ...
- C++程序设计方法5:接口设计
一切都在变化,因此程序要适应变化: 变化分层 封装 接口与隐藏: 接口:类暴露出来的部分,是类所提供的功能: 隐藏实现的细节: UML类图 接口在哪儿? 设计思路:从上到下设计 实现类的接口 细化
- C++程序设计方法4:模板特化
模板参数的具体化/特殊化 有时,有些类型不适用,则需要对模板进行特殊化处理,这称为“模板特化” 对函数模板,如果有多个模板参数,则特化时必须提供所有参数的特例类型,不能部分特化: 如: char *s ...
- C++程序设计方法4:成员函数模板
成员函数的模板: 普通类的成员函数,也可以定义为函数模板,如: class normal_class { public: int value; template<typename T> v ...
随机推荐
- v7000数据恢复_MDisk重建数据恢复方法(北亚数据恢复)
很多工程师都有这样的疑问,MDisk重建后还能不能恢复数据呢?应该怎么做才能恢复数据呢?本文这里就以IBM V7000存储为例,详细讲解因为某个MDisk被重建导致的数据丢失的恢复方法.我们本案例中的 ...
- Linux的打印rpm包的详细信息的shell脚本
#!/bin/bash # list a content summary of a number of RPM packages # USAGE: showrpm rpmfile1 rpmfile2 ...
- php的开发的apache的配置及伪静态的应用
1.Apache之所以能够解析php代码是游览器首先发送数据到模版页面,然后模版页提交数据到php页面,然后php代码经过Apache解析过后生成结果的,所以是 在Apache的配置文件中是可以看到开 ...
- AJAX使用说明书
AJAX简介 什么是AJAX AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”.即使用Javascript语言与服务器进行异 ...
- split 过滤空的元素
命令形式: split(str='',number=string.count(str))[n] str 分隔符 number 切分几次,[n] 获取第几个值. 1.如果切分的可迭代对象中包含空元素的解 ...
- 学习ASP.NET Core Razor 编程系列五——Asp.Net Core Razor新建模板页面
学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...
- 未能加载文件或程序集“ RevitAPIUI.dll”
revit二次开发中遇到的问题 RevitAPIUI.dll 只能 Native Library 中执行: 脱离了Native Library,API是跑不起来的 . 检查程序流程:登录,配置,启动r ...
- android 加速度传感器 ---摇一摇
package com.eboy.testyaoyiyao;import java.text.SimpleDateFormat;import java.util.Date;import android ...
- linux下Tab及shell 补全python
Python自动补全 Python自动补全有vim编辑下和python交互模式下,下面分别介绍如何在这2种情况下实现Tab键自动补全. vim python自动补全插件:pydiction 可以实现下 ...
- Hibernate(九):基于主键映射的1-1关联关系
背景: 在实际开发中我们会遇到新建一个用户表,但这个表字段过长,而且有写字段常用(主要),有些字段比较不常用(次要).此时,我们会考虑到把用户信息拆分到两张表中:member(存储用户主要信息),me ...