Python—循环加强

1.使用循环打印等腰三角形

# 画三角形层数为n
# 第i层有空格:n-i
# 第i层有*:2*i-1
n = int(input("层数:"))#层数=n
for i in range(1, n + 1):#范围在1~n# 画空格for _ in range(1, n - i + 1):  # _不用显示,用于表示;i表示第几层print(" ",end="")#end=""相当于不换行输出# 画*for _ in range(1, 2 * i):print("*",end="")print()#print命令自带换行功能

2.使用循环打印菱形

# 菱形的上层数:n//2 +1
# 第i层有空格:up -i
# 第i层有*:2*up-1
n = int(input("输入菱形的层数(必须是奇数):"))
up = n // 2 + 1
for i in range(1,up+1):#范围1~up# 画空格for _ in range(1,up - i+1):print(" ", end="")# 画星星for _ in range(1,2 * i):print("*", end="")print()
# 下半部分:n//2
# 空格数:i
# 星星数:n- i*2
down = n // 2
for i in range(1, down + 1):# 画空格for _ in range(1,i+1):print(" ", end="")# 画星星for _ in range(1,n - i * 2+1):print("*", end="")print()

 

3.使用循环打印空心菱形

# 空心菱形意味着每行只画第一颗星星和最后一颗星星,其他位置补空格
# 所以可以得到上部分 j==0 或者 j==2*i-2 画星星
#         下部分 j ==0 或者 j==n-i*2-1画星星
n = int(input("输入菱形的层数(必须是奇数):"))
up = n // 2 + 1
down = n // 2
for i in range(1, up + 1):#画空格for _ in range(up - i):#范围0~up-iprint(" ", end="")#画星星for j in range(2 * i - 1):#if j == 0 or j == i * 2 - 2:#当j=0时(第一次循环),j=i*2-1-1(最后一次序循环)画星星print("*",end="")else:print(" ",end="")#其他全部画成空格print()
down = n // 2
for i in range(1, down + 1):for _ in range(i):print(" ", end="")for j in range(n - i * 2):#范围0~n-i*2if j == 0 or j == n - i * 2 - 1:  # 当j=0时(第一次循环),j=i*2-1-1(最后一次序循环)画星星print("*", end="")else:print(" ", end="")  # 其他全部画成空格print()

 4.使用循环打印横空心菱形

n = int(input("输入菱形的层数(必须是奇数):"))
up = n // 2 + 1
down = n // 2
for i in range(1, up + 1):#画空格for _ in range(up - i):print(" ", end="")#画星星for j in range(2 * i - 1):#if j == 0 or j == i * 2 - 2 or i == up:#当j=0时(第一次循环),j=i*2-1-1(最后一次序循环),当i=最后一行全部画星星print("*",end="")else:print(" ",end="")print()
down = n // 2
for i in range(1, down + 1):for _ in range(i):print(" ", end="")for j in range(n - i * 2):if j == 0 or j == n - i * 2 - 1:  print("*", end="")else:print(" ", end="") print()

5.使用循环打印十字空心菱形

n = int(input("输入菱形的层数(必须是奇数):"))
up = n // 2 + 1
down = n // 2
for i in range(1, up + 1):#画空格for _ in range(up - i):print(" ", end="")#画星星for j in range(2 * i - 1):if j == 0 or j == 2 * i - 2 or i == up or j == (2 * i - 1) // 2:#前面的基础上加上每一行的中间画一个星星(2 * i - 1) // 2print("*",end="")else:print(" ",end="")print()
down = n // 2
for i in range(1, down + 1):for _ in range(i):print(" ", end="")for j in range(n - i * 2):if j == 0 or j == n - i * 2 - 1 or j == (n - i * 2) // 2:#前面的基础上加上每一行的中间画一个星星(n - i * 2) // 2print("*", end="")else:print(" ", end="")print()

6.使用循环打印十字箭头

n = int(input("输入的层数(必须是奇数):"))
up = n // 2 + 1
down = n // 2
for i in range(1, up + 1):#画空格for _ in range(up - i):print(" ", end="")#画星星for j in range(2 * i - 1):if j == 0 or j == 2 * i - 2 or i == up or j == (2 * i - 1) // 2:print("*",end="")else:print(" ",end="")print()
down = n // 2
for i in range(1, down + 1):for _ in range(i):print(" ", end="")for j in range(n - i * 2):if  j == (n - i * 2) // 2:#将第一颗星星和最后一颗星星删除print("*", end="")else:print(" ", end="")print()

7.(显示一个金字塔)编写程序提示用户输入一个在1到15之间的整数,然后显示一个金字塔

#分成两个部分解决问题
#当三角形为n层时
#第i层有n-i个空格
#第i层的数字:从i开始,1结束。range(i,1)
#左边三角形
n = int(input("请输入三角形的层数:"))
for i in range(1, n + 1):#画空格for _ in range(n - i):print("\t", end="")#画数字for j in range(i, 0, -1):print(f"{j}\t", end="")
#右边三角形for j in range(2, i + 1):print(f"{j}\t", end="")print()

8.(使用循环显示四种模式)使用嵌套循环在四个独立的程序中显示下面四种模式。

A

n = int(input("请输入三角形的层数:"))
for i in range(1, n + 1):# 画空格for _ in range(n - i):print("", end="")# 画数字for j in range(1, i + 1):print(f"{j}\t", end="")print()

B

n = int(input("请输入打印的层数:"))
for i in range(n, 0, -1):for j in range(1, i + 1):print(f"{j}\t", end="")print()

C

n = int(input("请输入三角形的层数:"))
for i in range(1, n + 1):#画空格for _ in range(n - i):print("\t", end="")#画数字for j in range(i, 0, -1):print(f"{j}\t", end="")print()

D

n = int(input("请输入层数:"))
for i in range(n, 0, -1):for _ in range(n - i):print("\t", end="")for j in range(1, i + 1):print(f"{j}\t", end="")print()

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

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

相关文章

MySQL一条SQL语句的执行过程

MySQL一条SQL语句的执行过程可以大致分为以下几个步骤: mysq分层架构 为了理解这个问题,先从Mysql的架构说起,对于Mysql来说,大致可以分为3层架构。 网络连接层: 作为客户端和服务端的连接,连接器负责处…

Leetcode 17.电话号码的字母组合

题目 思路 输入的digits有几个数就有几层。 一层中有几个数则取决于输入的数字对应的字母有几个。 1.确定递归函数的返回值及参数: 其实参数不是一开始就确定好的,而是你在写递归函数的时候缺啥,就往进去传啥。 这里我就直接全部写出来。…

无线基本认识和配置

1、无线局域网 IEEE 802.11标准 根据应用范围分类 WPAN --- 个人无线网络 NFC、ZIgbee、Bluetooth WLAN --- 无线局域网 WiFi,使用到WPAN技术 WMAN --- 无线城域网 WiMax 802.16 WWAN --- 无线广域网 GSM、CDMA、WCDMA、LTE、5G、TD-SCDMA 2、…

2012年认证杯SPSSPRO杯数学建模C题(第一阶段)碎片化趋势下的奥运会商业模式全过程文档及程序

2012年认证杯SPSSPRO杯数学建模 C题 碎片化趋势下的奥运会商业模式 原题再现: 从 1984 年的美国洛杉矶奥运会开始,奥运会就不在成为一个“非卖品”,它在向观众诠释更高更快更强的体育精神的同时,也在攫取着巨大的商业价值&#…

关东升老师力作!四本编程宝典,带你畅游编程世界

🌟《看漫画学C》:关东升老师以漫画的形式,让你在欢笑中轻松掌握C编程的核心知识。不再枯燥,不再难懂,让编程变得有趣又简单! 🎨《MATLAB科研绘图与学术图表绘制从入门到精通》:关东升…

c++的学习之路:15、list(2)

本章主要是讲模拟实现list,文章末附上代码。 目录 一、创建思路 二、构造函数 三、迭代器 四、增删 五、代码 一、创建思路 如下方代码,链表是由一块一块不连续的空间组成的,所以这里写了三个模板,一个是节点,一…

蓝桥杯第六届c++大学B组详解

前言: 看了很多博客以及视频讲解,感觉都不是很清楚,比较模棱两可,所以干脆自己一边想,一边写博客,也可帮助到其他人,都是根据自己的逻辑来尽量清楚简单的讲清楚题目,喜欢的不要吝啬三…

HTTP的介绍

一.什么是HTTP? Hyper Text Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则。 二.HTTP的特点 (1)基于TCP协议:面向连接,安全 (2)基于请求-响应模型的&…

卡奥斯工业互联网平台分析

一、 背景 卡奥斯是海尔推出的具有中国自主知识产权、全球首家引入用户全流程参与体验的工业互联网平台。其核心是大规模定制模式,通过持续与用户交互,将硬件体验变为场景体验,将用户由被动的购买者变为参与者、创造者,将企业由原…

【1】初识 Python

【1】初识 Python 1、编程语言(1) 语言(2) 编程语言(3) 如何利用编程语言与计算机交流(4) 常见的编程语言(5) 语法 2、Python 简介(1) 什么是 Python(2) Python 能做什么(3) Python 的由来(4) Python的特点① 语法精简② 生态好,开发效率高③ Python开发初体验&…

练习 21 Web [GXYCTF2019]BabySQli

SQL联合查询,注意有源码看源码,Base64以及32的区别,MD5碰撞 打开后有登录框,先随意登录尝试 只有输入admin才是返回wrong pass! 其他返回wrong user 所以用户名字段一定要输入admin 养成好习惯,先查看源码…

删除mysql表卡死 , 打不开,一直转圈圈

最近用navicat删除某一张表时,直接卡死转圈圈,导致navicat直接无响应, 想着是不是自己navicat有问题,换同事电脑来删这张表,还是同样问题。 多次尝试才整明白,根本不是navicat的问题.是mysql 的表锁死了! 如果频繁的对…

华三Sec Path

1、设备特点 外观: 功能特点: 安全特性: vFW的默认账号密码:admin 2、安全区域 1)相同安全级别的集合 2)默认的安全域 【1】区域 trust、untrust、local(所有有接口属于local,…

机器人开启私聊配置自定义接口的方式

大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。 今天给大家介绍一下,如何在机器人中开启私聊回复。 前提条件:机器人已经启动好了,且功能也都可以正常使用,如果没有启动,可以联…

一网打尽计算机网络难题:100个问答助你轻松掌握【文末送书福利】

文章目录 一,物理层二,数据链路层三,网络层四,传输层五,应用层专栏推荐粉丝福利 欢迎订阅查看学习:Java编程基础教程系列(零基础小白搬砖逆袭) 一,物理层 题&#xff1a…

【攻防世界】unseping (反序列化与Linux bash shell)

打开题目环境: 1、进行PHP代码审计,通过审计得知需要用到PHP反序列化。找到输出flag的位置为 ping()函数。通过使用 exec() 函数来执行 $ip 并将结果保存在 $result 中,最终输出 $result。 2、接着寻找给 $ip 传参的位置,发现通过…

VMware Esxi安装群辉系统

群晖的网络存储产品具有强大的操作系统,提供了各种应用程序和服务,包括文件共享、数据备份、多媒体管理、远程访问等。用户可以通过简单直观的界面来管理他们的存储设备,并且可以根据自己的需求扩展设备的功能。总的来说,群晖的产…

配置vscode用于STM32编译,Debug

配置环境参考: Docs 用cubemx配置工程文件,用VScode打开工程文件。 编译的时候会有如下报错: vscode出现process_begin :CreateProcess failed 系统找不到指定文件 解决方案:在你的makefile中加上SHELLcmd.exe就可以了 参考…

云his系统源码 java源码saas模式 二甲医院his系统全套源码 数据库MySQL + MyCat

基层医院云HIS系统源码 一款满足基层医院各类业务需要的云HIS系统。该系统能帮助基层医院完成日常各类业务,提供病患挂号支持、病患问诊、电子病历、开药发药、会员管理、统计查询、医生站和护士站等一系列常规功能,还能与公卫、PACS等各类外部系统融合&…

JavaWeb--JavaScript Part 01

1. JavaScript概述 JavaScript(简称JS)是一种轻量级的、解释执行的客户端脚本语言,主要用于增强网页的交互性和动态性。它起源于Netscape的LiveScript,并在1995年发布时更名为JavaScript。尽管名称中包含"Java"&#xf…