编程学习
1.37K subscribers
69 photos
17 videos
7 files
169 links
我不是什么编程高手,不是什么优秀教师,但是我就爱与孩子们一起玩。这里记录了我与几十个孩子边玩边学习编程的心得。
Download Telegram
有大朋友想要跟随自己学习和练习大朋友乐园的练习。所以从这周起,我会在这里同步更新大朋友乐园的每周练习。
本周练习为完成一个象棋棋盘并可以将棋子放在上面。我们并不需要可以移动它们。需要三步:
1.先使用一个纸完成它的DataModel和ViewModel的设计。
2.尝试构建View
3.尝试加入一点点交互功能,比如点一个棋子,能变化它的颜色或内容。
🥰1
Cheat sheet for Xcode
今天晚上12点是 2022 Swift Student Challenge作品提交的最后期限了,你今年提交作品了吗? https://developer.apple.com/wwdc22/swift-student-challenge/
3
今年有五个孩子提交了作品,都非常的辛苦,而且都极端挑战了自己,我非常疲惫,但是也非常的开心,为他们的成长和他们的努力而骄傲💪
👍9
今年的学生挑战赛结束了,准备再带一组孩子从基础练习开始学习编程。如果孩子10岁+,以前学过scratch,对计算机有喜好的趋向,哪么和我们一起来学习吧~时间通常为周中的某天晚上七点和周末的某个下午(美东时区)。孩子需要有一台Mac电脑(M1最好)。有兴趣的可以评论或PM我。

如果是大陆的朋友,要注意时差和网络。由于周日是下午,几乎不可能参加。

我不使用微信,上课全程使用Telegram,包括上课录相都在Telegram上完成的,所以请先了解。 :)
👍7
判断、循环小练习 2022.05.08
// 检查一个整数是否为偶数
// 检查一个整数的个位数是否是3
// 检查一个整数的百位数是否是偶数,如果没有百位数,就说百位没有偶数
// 检查一个整数的千位是不是5 或 8 或 9 ,如果没有千位数,就说没有千位数
// 打印0...20,每行一个数字
// 打印2 4 6 ..... 50 每行一个数字
// 打印 50 48 46 44.....4 2 每行一个数字
// 打印 0 ... 999 里十位数为 3 的数字. 31 32 33. 531. (HomeWork)

这个练习是一节课的练习加作业。适用任何语言,每一个题都有很多种方法完成,使用不同的方法会给你完全不同的启示的。
1
判断、循环、输入、Int转换练习 2022.05.10

// 产生一个随机数(1-6)
// let n = Int.random(in: 1...6)

// 1. 当数字是1..3时显示小,4..6显示大
// 2. 扔三次,如果两次大,显示大,两次小显示小,要把扔出来的数字也显示出来

// 输入String示例
// print("Please input small or big:")
// let inputResult = readLine() ?? "big"
// if inputResult != "big" && inputResult != "small"{
// print("input error!")
// }
// print(inputResult)

// 3. 先提示"Please input small or big:",你输入small或big,如果输入的不是small或big,重新让你输入,直到输入的是small或big为止。然后扔三次,看你是赢了还是输了,要把扔出来的数字和结果显示出来。

// 输入数字
// print("Please input number:")
// let inputNumber = readLine() ?? "0"
// let number = Int(inputNumber) ?? 1
// print(number)

// 4. 初始你有10$,输入small或big后,再提示输入赌注,如果赢了赌注x2,如果输了钱减掉赌注。玩5把,看你最后有多少钱。举例:
// 10$ 赌 5$ 输了剩下 5$
// 5$ 赌 2$ 赢了 3+2*2=7
// 输入的赌注必须大于0,小于等于你剩下的钱数
// 每轮结束,要说明出来的结果、赢了还是输了、挣或减多少钱,帐户余额多少钱
// 如果剩余钱数为0,提前结束游戏

示例使用的是Swift,但是可以适用于任何语言。最后的4由于代码行数多,需要点耐心,其实都是可完成的。欢迎评论交流。
1
循环、变量、判断练习 2022.05.13

// 计算 1+2+3+4+5+6+....+100 打印结果
// 计算 1+3+5+7+9+.......99 打印计算结果
// 计算 10+11+20+21+30+31+40+41.......90+91 打印计算结果
循环、变量、判断、函数练习 2022.05.15

// 1. 计算 1+2+3+4+5+6+....+100 打印结果
// 2. 计算 1+3+5+7+9+.......99 打印计算结果
// 3. 计算 10+15+20+25+30+35+40+45.......90+95 打印计算结果

// print("input your[v,o,d]:")
// let inputResult = readLine() ?? ""
// print("your are \(inputResult)")
// 4. 让用户输入v,o,d里的一个,如果不是,提示用户再次输入,直到输入的是v或o或d为止
// v代表剪刀,o代表石头,d代表布


// let pcs = ["v","o","d"]
// let pc = pcs.shuffled().first ?? "v"
// print(pc)
// 5. 让计算随机出一个v/o/d,然后打印是人赢了还是计算机赢了

// let input = readLine() ?? "0"
// let i = Int(input) ?? 1
// print(i)
// 6. 你有10$,每次游戏之前先显示钱包余额,然后提示请输入押注金额,输入为1~余额,不能更多,也不能为0. 如果赢了会赢取押注x2,平了还回押注,输了押注被拿走。玩五局,看最后剩余的钱数有多少。如果有一局余额为0,那么游戏就停止。
1
判断、循环小练习 2022.05.16

// 1. 计算 1+2+3+4+5+...50 的结果
// 2. 计算 2+4+6+8+10...50 的结果
// 3. 计算 1+3+5+7+9...49 的结果
// 4. 计算 10+20+30+...90 的结果
// 5. 计算 10+11+20+21+30+31+...90+91 的结果
// 6. 根据dice numbershow它是big(4..6)还是small(1..3)
// 7. 先选择guesssmall or big,后dice出结果,看你guesswon还是lost
1
循环、判断、数组小练习 2022.05.17

// 1. 输入一个v或o或p,如果输入的不是v/o/w提示再次输入,直到输入的是v/o/w为止(v是✂️、o是、w是布)
// 2. 让计算机在v/o/w里随机挑选一个,与你输入的做对比,看你是赢了还是输了还是平局
// 3. 整个游戏一局有五轮,五轮下来计算机和人谁赢的多,谁就赢了,如果全为平局或赢的轮数相同,则为平
1
今天我与一位小朋友学生一起,尝试翻译了 xcodes 的简单中文版本,在翻译的时候学习了很多有关的知识,这也是他第一次在Github为一个开源项目提交自己的贡献。我们俩都非常开心,不过在提交后,我发现也有人提交了中文化的PR,但是这终究是一个14岁孩子的第一次开源贡献,所以我还是保留了这个PR。

https://github.com/RobotsAndPencils/XcodesApp/pull/228
4