鱼C论坛

 找回密码
 立即注册
查看: 2247|回复: 15

[已解决]课后作业008 抛筛子代码 求解 小白快要学哭了。。。

[复制链接]
发表于 2023-4-10 22:36:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请大神对以下代码做一个详细解读。
另外请教大神,作为一名小白,怎么去学习如此繁多的逻辑和代码!是否有方法或者某种逻辑?如何巩固基础?谢谢大神!
import random

counts = int(input("请输入抛硬币的次数:"))
i = 0

print("开始抛硬币实验:")
while i < counts:
    # 生成1到10的一个随机数
    num = random.randint(1, 10)

    # 如果随机数可以被2整除,则代表正面,否则代表反面
    # num是随机的,所以正面和反面的概率也是随机的
    if num % 2:
        print("正面", end=" ")
    else:
        print("反面", end=" ")

    i += 1
最佳答案
2023-4-10 22:38:48
这段代码是一个模拟抛硬币实验,目的是为了演示随机事件的概率分布。现在来逐行解读这段代码:

import random
这行代码是导入 Python 自带的 random 库,其中包含生成随机数的函数。

counts = int(input("请输入抛硬币的次数:"))
这行代码要求用户输入抛硬币的次数,并将输入值转换为整型并赋值给 counts 变量。

i = 0
设定一个计数器变量,初始值为0。

print("开始抛硬币实验:")
输出一条提示信息,表示正式开始抛硬币实验。

while i < counts:
这是一个while循环语句,当i小于counts时执行以下代码块。

num = random.randint(1, 10)
调用 random 库中的randint函数,生成一个1到10之间的随机整数,并将其赋值给 num 变量。

if num % 2:
判断num是否为偶数,如果不是,执行以下代码块。

print("正面", end=" ")
如果num不是偶数,即为奇数,表示这次抛硬币结果为“反面”,因此输出“反面”二字,并在结尾使用end=" "是为了让结果不换行而保持在同一行。

else:
如果num是偶数,即为偶数,表示这次抛硬币结果为“正面”,因此输出“正面”二字,并在结尾使用end=" "是为了让结果不换行而保持在同一行。

i += 1
每执行一次循环,计数器变量 i 就会增加1。如果 i 达到 count 的值,while 循环就会停止,整个程序也就结束了。

关于如何学习编程,建议先从简单入手,掌握基础语法和常见的数据类型,然后通过练习、观察和模仿来逐渐深入理解和掌握编程逻辑和技巧。同时,多阅读相关的编程书籍和网络资源,参加编程社区和课程等也都是不错的选择。巩固基础最好的方法就是多写代码,尝试将知识应用到实际问题中去,开发自己的项目,加深对编程的理解和熟练度。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-10 22:38:48 | 显示全部楼层    本楼为最佳答案   
这段代码是一个模拟抛硬币实验,目的是为了演示随机事件的概率分布。现在来逐行解读这段代码:

import random
这行代码是导入 Python 自带的 random 库,其中包含生成随机数的函数。

counts = int(input("请输入抛硬币的次数:"))
这行代码要求用户输入抛硬币的次数,并将输入值转换为整型并赋值给 counts 变量。

i = 0
设定一个计数器变量,初始值为0。

print("开始抛硬币实验:")
输出一条提示信息,表示正式开始抛硬币实验。

while i < counts:
这是一个while循环语句,当i小于counts时执行以下代码块。

num = random.randint(1, 10)
调用 random 库中的randint函数,生成一个1到10之间的随机整数,并将其赋值给 num 变量。

if num % 2:
判断num是否为偶数,如果不是,执行以下代码块。

print("正面", end=" ")
如果num不是偶数,即为奇数,表示这次抛硬币结果为“反面”,因此输出“反面”二字,并在结尾使用end=" "是为了让结果不换行而保持在同一行。

else:
如果num是偶数,即为偶数,表示这次抛硬币结果为“正面”,因此输出“正面”二字,并在结尾使用end=" "是为了让结果不换行而保持在同一行。

i += 1
每执行一次循环,计数器变量 i 就会增加1。如果 i 达到 count 的值,while 循环就会停止,整个程序也就结束了。

关于如何学习编程,建议先从简单入手,掌握基础语法和常见的数据类型,然后通过练习、观察和模仿来逐渐深入理解和掌握编程逻辑和技巧。同时,多阅读相关的编程书籍和网络资源,参加编程社区和课程等也都是不错的选择。巩固基础最好的方法就是多写代码,尝试将知识应用到实际问题中去,开发自己的项目,加深对编程的理解和熟练度。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:41:13 | 显示全部楼层
打错字了吧,是骰(tou2)子不是筛子
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:42:48 | 显示全部楼层
代码解读:

1、导入 random 模块:这个模块提供了生成随机数的功能。
import random

2、获取用户输入的抛硬币次数,并将输入的字符串转换为整数。
counts = int(input("请输入抛硬币的次数:"))

3、初始化一个计数器 i,它将记录已经抛掷的硬币次数。
i = 0

4、输出一个提示信息,表示开始抛硬币实验。
print("开始抛硬币实验:")

5、使用 while 循环,当计数器 i 小于用户输入的次数时,执行循环。
while i < counts:

6、在循环内,生成一个 1 到 10 的随机整数(包含 1 和 10),并将其赋值给变量 num。
    num = random.randint(1, 10)

7、判断随机数 num 是否能被 2 整除。如果可以整除,输出“正面”,否则输出“反面”。这里的 if 语句实际上模拟了硬币正面和反面的概率。
    if num % 2:
        print("正面", end=" ")
    else:
        print("反面", end=" ")

8、更新计数器 i 的值,使其增加 1。
    i += 1

作为编程小白,学习编程的过程可能会让你觉得很困难,但不用担心,有以下一些建议供你参考:

  • 学习基础知识:确保你掌握了基本的编程知识,如变量、数据类型、条件语句、循环、函数等。
  • 实践项目:通过完成一些小项目来巩固你的编程技能。这会让你更加熟悉编程,并帮助你掌握新知识。
  • 多看别人的代码:阅读和理解别人的代码可以帮助你学习编程的最佳实践,以及如何解决实际问题。
  • 分阶段学习:将学习过程分为多个阶段,并逐步深入,从而确保你能够充分理解和消化所学内容。
  • 与他人交流:加入编程社区或讨论组,与其他学习者或专业人士交流,以便提高你的技能和解决问题。
  • 不断挑战自己:不断地学习新技术和框架,并尝试解决更复杂的问题,这将帮助你不断进步。
  • 保持耐心:学习编程是一个漫长的过程,需要时间和耐心。不要因为一开始遇到困难就放弃,坚持不懈地学习,你会发现自己不断地进步。
  • 制定学习计划:为自己制定一个合理的学习计划,确保你能够系统地学习并掌握编程知识。
  • 学会利用资源:充分利用互联网上的资源,如教程、文档、博客、论坛等。这些资源能帮助你更好地理解和学习编程。
  • 反思与总结:经常回顾和总结自己在学习过程中遇到的问题和解决方法,这有助于巩固你的知识和提高编程能力。


最后,要记住编程是一项实践性很强的技能,只有通过大量的练习和实践才能不断提高。在学习过程中,保持积极的心态和对编程的热情非常重要。祝你学习顺利!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:45:01 | 显示全部楼层
歌者文明清理员 发表于 2023-4-10 22:38
这段代码是一个模拟抛硬币实验,目的是为了演示随机事件的概率分布。现在来逐行解读这段代码:

import r ...

早知道不整理格式了,辛辛苦苦整理格式还被你抢先了,到时候得写一个自己整理格式的程序才行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:53:11 | 显示全部楼层
isdkz 发表于 2023-4-10 22:45
早知道不整理格式了,辛辛苦苦整理格式还被你抢先了,到时候得写一个自己整理格式的程序才行

我写了一半然后把程序删了(不擅长算法(
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:55:03 | 显示全部楼层
歌者文明清理员 发表于 2023-4-10 22:53
我写了一半然后把程序删了(不擅长算法(

有没有想过写自动回复的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:56:15 | 显示全部楼层
isdkz 发表于 2023-4-10 22:55
有没有想过写自动回复的


我之前写了个自动爬取 chat.aidutu.cn(镜像站)的,好像被识别出来,从此那个网站要验证微信公众号的代码,从此不在那提问了

哦对了那个binjie 换网站了 http://chat1.aichatos.com/

评分

参与人数 1贡献 +2 收起 理由
sfqxx + 2 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:57:33 | 显示全部楼层
isdkz 发表于 2023-4-10 22:55
有没有想过写自动回复的

自动回复不二如是的每日英语?这个好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:58:34 | 显示全部楼层
歌者文明清理员 发表于 2023-4-10 22:57
自动回复不二如是的每日英语?这个好

首楼有奖励?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 22:59:01 | 显示全部楼层

那当然
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 23:00:53 | 显示全部楼层

我不差鱼币,都没处花了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 23:02:12 | 显示全部楼层
isdkz 发表于 2023-4-10 23:00
我不差鱼币,都没处花了

鱼币有啥?只要我不看小甲鱼的教程,鱼币就是悬赏和回帖奖励用的

但荣誉、贡献嘛……升级用!vip体验不到升级的乐趣
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 23:06:39 | 显示全部楼层
歌者文明清理员 发表于 2023-4-10 23:02
鱼币有啥?只要我不看小甲鱼的教程,鱼币就是悬赏和回帖奖励用的

但荣誉、贡献嘛……升级用!vip体验 ...

确实体会不到,要是能走两个体系就好了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 23:09:41 | 显示全部楼层
isdkz 发表于 2023-4-10 23:06
确实体会不到,要是能走两个体系就好了

开小号
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-11 11:54:12 From FishC Mobile | 显示全部楼层
isdkz 发表于 2023-4-10 22:42
代码解读:

1、导入 random 模块:这个模块提供了生成随机数的功能。

感谢大神的耐心回复,请问有没有推荐的新手训练网站,因为目前基础知识还不熟练,经常学了后面,忘了前面,或者是突然忘记代码中的逻辑问题。这让我有点懵,感觉茫茫大海之缥缈。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-29 09:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表