Harvard CS50X - 第0周笔记

走出舒适区 !

人类中的123表示的是十进制, 因为有0-9 10个数字

计算机工作的原理

计算机说的唯一语言是二进制语言, 里面只有两个数字0和1
如果它们要存储数值 , 只能看到0和1
二进制是个位, 二位, 四位 …

计算机的000

计算机中的000表示我们理解中的0 , 严格来说, 它是0的0次幂加2次幂加1次幂

如果使用二进制表示一个字母该怎么做

我们只需要把数字和字母对应起来,
假设我们想表示大写字母A , 65是代表大写A的十进制数.

计算机是怎么区分数字和字母的

其实是基于使用环境
计算机中数字65表示大写字母A, 66表示大写字母B…以此类推

	H						I						!
	72					73					33

1001000 1001001 100001

abstraction (抽象)

抽象是一个在计算机科学领域被广泛使用的术语

ASCII码

ASCII码只使用了8比特, 总共只有256种可能的方式排列它们, 也就是说, 用ASCII码只能呈现256个不同字符.
8个比特显然不够使用, 然后出现了一种加Unicode的编码

Unicode

在这里插入图片描述
是用十进制数 128514表示的
二进制是 11111011000000010 , 当你的手机和电脑看见了这种比特位的排列, 然后发现, 每当我在短信文本中看见这种比特位的排列, 就应该呈现这张图片

RGB

我们用3个字节表示一个像素
电影或视频就是很多图片的组合, 图片就是色彩的集合. 色彩就是数位的排列

算法开始

从电话簿里面找到一个联系人, 使用最笨的方法就是一页一页的找, 最终也能找到.
也可以使用对半查找的方法, 比如要在字典里找到S开头的字母, S在字母排序的后半部分,可以把前半部分舍去, 一半一半的进行查找

伪代码

伪代码并没有正式的定义, 它用一种与英语或其他语法类似的表达方式, 使你简洁精确地描述自己的意图

使用伪代码的形式写出上面的算法

0  pick up phone book
1  open to middle of phone book
2  look at names
3  if Smith is among names
4  		call Mike
5  else if Smith is earlier in book
6  		open to middle of left half of book
7		go back to step 2
8  else if Smith is later in book
9  		open to middle of right half of book
10  	go back to step2
11  else
12  	quit

pick up , open to, look at, call, open 表示动作的动词, 这些都是函数, 函数是为了做某事而采取的一个特定的步骤或动作.

if, else if, 称之为条件语句

课程的第一门编程语言Scratch

Scratch是一门图形化编程语言
在这里插入图片描述
Scratch分为三个部分
左边是一些拼图, 对应着相应的函数, 循环, 条件, 变量

示例

在这里插入图片描述
解析 :

  • 当点击小绿旗的时候. 执行下面的代码
  • forever表示循环执行forever里面的代码, forever是让程序一直运行的关键.
  • if 是条件表达式, 这句表示如果把鼠标指针放到小猫上面
  • 播放喵直到结束

示例2

在这里插入图片描述
解析 :

  • 当点击绿旗开始执行
  • 设置左旋转和右旋转样式
  • forever循环让程序一直执行下去
  • 移动十步
  • 如果触碰到了边缘
  • 就让小猫旋转180度
  • 因为next costume 在for循环里面, 所以会一直切换下一个造型, 模拟走路

创建一个模块

在这里插入图片描述

调用这个模块

在这里插入图片描述

可以把咳嗽的动作封装到一个模块里面, 需要的时候直接调用, 类似python中的函数, 可以给函数传递参数

创建模块

在这里插入图片描述

  • 创建了一个模块, 里面需要一个时间参数

调用模块

在这里插入图片描述

  • 调用模块, 并传递时间参数
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值