CS 61A Fall 2023 Lecture 1 - Functions [Python] - Notes01, Lab00 and HW01

news2025/1/13 15:52:55

CS 61A Fall 2023 Lecture 1 - Functions [Python]

文章目录

  • CS 61A Fall 2023 Lecture 1 - Functions [Python]
    • Note 01
    • lab00
    • HW01

I am gonna make a plan for my future in advance, to consistently refine my coding skills. And this class is what I will try to finish this semester! Then I will move on to [UCB Data100: Principles and Techniques of Data Science] in my winter vacation, and take some ML and DL classes or may be some front-end courses later! Hope us a brighter future!

The notes will all be English. Welcome to learn CS 61A with me! CS 61A Fall 2023 I will demonstrate my solutions for labs and homework here for reference. There are already many solutions online for previous classes, but I’d like to try the latest one. If you find anything suspicious to you, don’t feel hesitate to contact me!

But if you are a newbie to CS, then I highly recommend this class by Mr.Peng. I believed that it can lay a solid foundation of coding. Join us through the following link, and you can contact me through qq 2965950825.

img

image-20231015190938453

That’s my plan!

WeekWhat
10.16~10.23Lecture1: Lab0+Functions+HW1
10.24~10.30Lecture2
10.31~11.6Lecture3
11.7~11.13Lecture4
11.14~11.20Lecture5
11.21~11.28Lecture6

Note 01

pretty easy! so I didn’t take anything.

lab00

def twenty_twenty_three():
    """Come up with the most creative expression that evaluates to 2023,
    using only numbers and the +, *, and - operators.

    >>> twenty_twenty_three()
    2023
    """
    return 1 + 2 * ((3*4*5//6)**3) + (7+8)//9 + 10 + 11

figure = twenty_twenty_three()

print(figure)

HW01

from operator import add, sub

#Q1
def a_plus_abs_b(a, b):
    """Return a+abs(b), but without calling abs.

    >>> a_plus_abs_b(2, 3)
    5
    >>> a_plus_abs_b(2, -3)
    5
    >>> a_plus_abs_b(-1, 4)
    3
    >>> a_plus_abs_b(-1, -4)
    3
    """
    if b < 0:
        f = a-b
    else:
        f = a+b
    return f

print(a_plus_abs_b(2, 3))
print(a_plus_abs_b(2, -3))
print(a_plus_abs_b(-1, 4))
print(a_plus_abs_b(-1, -4))

def a_plus_abs_b_syntax_check():
    """Check that you didn't change the return statement of a_plus_abs_b.

    >>> # You aren't expected to understand the code of this test.
    >>> import inspect, re
    >>> re.findall(r'^\s*(return .*)', inspect.getsource(a_plus_abs_b), re.M)
    ['return f(a, b)']
    """
    # You don't need to edit this function. It's just here to check your work.

#Q2
def two_of_three(i, j, k):
    """Return m*m + n*n, where m and n are the two smallest members of the
    positive numbers i, j, and k.

    >>> two_of_three(1, 2, 3)
    5
    >>> two_of_three(5, 3, 1)
    10
    >>> two_of_three(10, 2, 8)
    68
    >>> two_of_three(5, 5, 5)
    50
    """
    return i*i + j*j + k*k - max(i,j,k)**2

print(two_of_three(10, 2, 8))
print(two_of_three(5, 5, 5))

def two_of_three_syntax_check():
    """Check that your two_of_three code consists of nothing but a return statement.

    >>> # You aren't expected to understand the code of this test.
    >>> import inspect, ast
    >>> [type(x).__name__ for x in ast.parse(inspect.getsource(two_of_three)).body[0].body]
    ['Expr', 'Return']
    """
    # You don't need to edit this function. It's just here to check your work.

#Q3
def largest_factor(n):
    """Return the largest factor of n that is smaller than n.

    >>> largest_factor(15) # factors are 1, 3, 5
    5
    >>> largest_factor(80) # factors are 1, 2, 4, 5, 8, 10, 16, 20, 40
    40
    >>> largest_factor(13) # factor is 1 since 13 is prime
    1
    """
    "*** YOUR CODE HERE ***"
    counter = n-1
    while n%counter and counter!=1:
        counter=counter-1
    return counter

print("===Q3===")
print(largest_factor(15))
print(largest_factor(80))
print(largest_factor(13))

#Q4
def hailstone(n):
    """Print the hailstone sequence starting at n and return its
    length.

    >>> a = hailstone(10)
    10
    5
    16
    8
    4
    2
    1
    >>> a
    7
    >>> b = hailstone(1)
    1
    >>> b
    1
    """
    "*** YOUR CODE HERE ***"
    length = 1
    print(n)
    while n != 1:
        if n % 2 == 0:
            n = n // 2
            print(n)
        else:
            n = n*3 + 1;
            print(n)
        length = length + 1
    return length
    
print("===Q4===")
print(hailstone(10))
print("--------")
print(hailstone(1))


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1104987.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Matlab论文插图绘制模板第121期—图中图

不知不觉&#xff0c;《Matlab论文插图绘制模板》系列教程已经连载更新了120期&#xff0c;而《Matlab进阶绘图》系列也更新了30期&#xff0c;分享了一系列各式各样数据图的标准化绘制模板&#xff1a; 本期分享的内容比较特殊&#xff0c;它可以串联起之前分享的一众数据图&a…

postman发送soap报文示例

一、soap简介 soap是一种基于XML的协议 二、postman发送soap请求 1、发送post请求&#xff0c;url&#xff1a;​​​ https://www.dataaccess.com/webservicesserver/NumberConversion.wso 2、headers设置&#xff0c;添加Content-Type&#xff0c;值为text/xml 添加SOAP…

Java 新手如何使用Spring MVC 中的查询字符串和查询参数

文章目录 什么是查询字符串和查询参数&#xff1f;Spring MVC中的查询参数处理可选参数处理多个值处理查询参数的默认值处理查询字符串示例&#xff1a;创建一个RESTful服务结论 &#x1f389;欢迎来到Java学习路线专栏~Java 新手如何使用Spring MVC 中的查询字符串和查询参数 …

06 迪米特法则

官方定义 迪米特法则&#xff08;LoD&#xff1a;Law of Demeter&#xff09;又叫最少知识原则&#xff08;LKP&#xff1a;Least Knowledge Principle &#xff09;&#xff0c;指的是一个类/模块对其他的类/模块有越少的了解越 好。简言之&#xff1a;talk only to your imm…

MySQL的ACID和并发事务带来的问题简单总结

拓跋阿秀 ACID 原子性&#xff1a;一个事务&#xff08;transaction&#xff09;中的所有操作&#xff0c;要么全部完成&#xff0c;要么全部不完成&#xff0c;不会结束在中间某个环节。事务在执行过程中发生错误&#xff0c;会被恢复&#xff08;Rollback&#xff09;到事务…

【知识图谱】KBQA核心架构小结

KBQA是指基于知识图谱的问答系统&#xff0c;是知识图谱的重要应用形式&#xff0c;基于知识图谱的问答和基于LLM的问答殊途同归。 KBQA是一个系统&#xff0c;由多种功能模块组成&#xff0c;其核心架构梳理如下&#xff1a; 下面对各个模块简单小结 文本清洗 只有是文本的…

dashboard报错 错误:无法获取网络列表、dashboard报错 错误:无法获取云主机列表 解决流程

文章目录 错误说明dashboard上报错底层命令报错查看日志message日志httpd报错日志错误日志分析开始解决测试底层命令dashboard错误说明 dashboard上报错 首先,dashboard上无论是管理员还是其他项目,均无法获取云主机和网络信息,具体报错如下

广州虚拟动力携数字人全栈式产品,邀您来2023世界VR产业大会(南昌)一探虚实

2023年10月19-20日&#xff0c;由工业和信息化部、江西省人民政府联合主办&#xff0c;中国电子信息产业发展研究院、江西省工业和信息化厅、南昌市人民政府、虚拟现实产业联盟共同承办的2023世界VR产业大会将在南昌绿地国际博览中心盛大举办。 广州虚拟动力作为3D、AI虚拟人领…

【C++笔记】多态的原理、单继承和多继承关系的虚函数表、 override 和 final、抽象类、重载、覆盖(重写)、隐藏(重定义)的对比

1.final关键字 引出&#xff1a;设计一个不能被继承的类。有如下方法&#xff1a; class A { private:A(int a0):_a(a){} public:static A CreateOBj(int a0){return A(a);} protected:int _a; } //简介限制&#xff0c;子类构成函数无法调用父类构造函数初始化 //子类的构造…

从零开始搭建第一个django项目

目录 配置环境创建 Django 项目和 APP项目组成  ‍子目录文件组成应用文件组成 配置 settings.py启动项目 数据表创建models.pyDjango-models的常用字段和常用配置 Django-admin 引入admin后台和管理员外键views.pyurls.pypostman接口测试 QuerySetInstance功能APIView 的概念…

Mistral AI发布一个拥有 73 亿参数模型Mistral 7B

导读法国人工智能初创公司 Mistral AI 宣布推出其首款大语言模型 Mistral 7B 是一个&#xff0c;号称是迄今为止同规模产品中最强大的语言模型&#xff1b;在 Apache-2.0 许可下开源&#xff0c;可完全免费使用&#xff0c;不受任何限制。 Mistral AI 是一个成立仅六个月的初创…

python实现TCPclient

python实现TCPclient是一件简单的事情&#xff0c;只要通过socket这个模块就可以实现。 一、实现步骤 1、导入模块&#xff1a; 首先&#xff0c;你需要导入Python的socket模块。 import socket2、创建Socket对象&#xff1a; 使用socket.socket()函数创建一个新的socket对…

美国开源数据库ScyllaDB完成4300万美元融资

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;总部位于美国位于加州桑尼维尔的开源数据库ScyllaDB今日宣布完成4300万美元融资。 本轮融资由风险投资公司Eight Roads Ventures和AB Private Credit Investors领投。其他投资者包括TLV Partners&…

视觉 注意力机制——通道注意力、空间注意力、自注意力

前言 本文介绍注意力机制的概念和基本原理&#xff0c;并站在计算机视觉CV角度&#xff0c;进一步介绍通道注意力、空间注意力、混合注意力、自注意力等。 目录 前言 一、注意力机制 二、通道注意力机制 三、空间注意力机制 四、混合注意力机制 五、自注意力机制 六、…

基于多尺度超图的特征对齐网络--细胞定位

Paper Link&#xff1a;Multi-scale Hypergraph-based Feature Alignment Network for Cell Localization Code&#xff1a;https://github.com/Boli-trainee/MHFAN/tree/main 核心思想&#xff1a;利用多尺度超图来统一解决定位任务中形状、尺度和颜色方面的显著变化带来的挑…

elementui select组件下拉框底部增加自定义按钮

elementui select组件下拉框底部增加自定义按钮 el-select组件的visible-change 事件&#xff08;下拉框出现/隐藏时触发&#xff09; <el-selectref"select":value"value"placeholder"请选择"visible-change"visibleChange">&…

网络工程师知识点7

111、IS-IS路由器的三种类型&#xff1f; Level-1路由器&#xff08;只能创建level-1的LSDB&#xff09; Level-2路由器&#xff08;只能创建level-2的LSDB&#xff09; Level-1-2路由器&#xff08;路由器默认的类型&#xff0c;能同时创建level-1和level-2的LSDB&#xff09;…

如何开发微信小程序

前言 因为最近沉迷和朋友们一起下班去打麻将&#xff0c;他们推荐了一个计分的小程序&#xff0c;就不需要每局都转账或者用扑克牌记录了&#xff0c;但是这个小程序不仅打开有广告&#xff0c;各个页面都植入了广告&#xff0c;用起来十分不适。 于是我就心里暗自下定决心&a…

蓝桥杯每日一题2023.10.18

题目描述 特别数的和 - 蓝桥云课 (lanqiao.cn) 题目分析 简单枚举每一个可行的数 #include<bits/stdc.h> using namespace std; int flag, ans; int main() {int n;cin >> n;for(int i 1; i < n; i ){flag 0;int x i;while(x){int y x % 10;if(y 2 || y…

NewStarCTF2023week3-Rabin‘s RSA

根据题目提示是Rabin算法 先将N分解得到P和Q 导入e&#xff0c;n&#xff0c;p&#xff0c;q&#xff0c;c 使用Rabin算法直接计算明文&#xff0c;再将明文转字符串即可 我们也可以通过脚本来理解原理 import gmpy2 import libnump 13934102561950901579 q 144504527390…