使用while循环打印一个菱形,菱形要星号(*)打印。菱形的行数需要从python控制台输入,行数必须是奇数。

line = input("请输入一个正整数,必须是奇数:")
line=int(line)
if line % 2 ==0:
    maxspaceNum = line // 2
    i = 1
    linespaceNum = maxspaceNum
while  linespaceNum  >= 0:
      print(" " linespaceNum,end="")
      print("*" * (2*i-1))
      linespaceNum -= 1
      i += 1
i -=2
linespaceNum += 2
while linespaceNum <= maxspaceNum:
     print(" " * linespaceNum ,end="")
     print("*" * (2*i-1))
     linespaceNum += 1
     i -= 1

原文地址:https://www.cnblogs.com/ppystudy/p/12109754.html

时间: 2024-11-08 05:02:02

使用while循环打印一个菱形,菱形要星号(*)打印。菱形的行数需要从python控制台输入,行数必须是奇数。的相关文章

编写Python程序,通过python控制台输入一个大于1的整数n,然后产生一个二维列表。二维列表的尺寸是n*n.每一个列表元素的值从1到n*n,依次排列,例如:输入的整数是3,会产生如下二维列表【【1,2,3】,【4,5,6】,【7,8,9】】产生完后,会互换二维列表的行列元素值 如:【【1,4,7】,【2,5,8】,【3,6,9】】

numStr = input("请输入一个大于1的正整数:") n = int(numStr) m = n * n i = 1 numbers = [] values = [] while i <=n: #生成列表 values.apped(i) if i % n ==0: numbers.append(values.copy()) value.clear() i += 1 for number in numbers: print(number) i = 0 j=0 while

java打印一个菱形

哈哈,看见一个面试题,要求打印出一个菱形…… class Part1 { public static void paint(int n){ for(int i=1 ; i<=n ; i++){ paintDiamond(n,i) ; } for (int m=n-1;m>=0 ;m-- ) { paintDiamond(n,m) ; } } public static void paintDiamond(int n,int i){ for (int k=1;k<=n-i ;k++ ) {

打印一个菱形

/* 打印一个菱形 * | ----* * * | ---** * * * | --*** * * * * | -**** * * * * * → → → | ***** → → → | * * * * * * * * * | -**** * * * | --*** * * | ---** * | ----* *///我们可以假想"*"左边的空白为"-",然后分区域绘制,ps:"*"右边加一个空格 class Test07{ public sta

通过原生JS打印一个空心菱形图案

<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> </body> </html> <script> // 打印一个空心菱形图案 for(var i = 1; i <=6 ; i++){ for(var k = 1 ; k&l

Python打印矩形、直角三角形、等腰三角形、菱形

思路如下: (1)先打印一个星号并换行 print("*") (2)打印一行6个星号 for i in range(6): print("*", end=" ") (3)打印6列星号 for i in range(6): print("*") (4)打印6行6列 for i in range(6): for j in range(6): print("*",end=" ") # 每打印一

java,编写一个从1循环到150并在每行打印一个值,另外在每个3的倍数行上打印出foo,在每个5的倍数行上打印biz,在每个7的倍数上打印baz.

需求:编写一个从1循环到150并在每行打印一个值,另外在每个3的倍数行上打印出foo,在每个5的倍数行上打印biz,在每个7的倍数上打印baz. package study01; public class For { public static void main(String[] args) { for(int i = 1;i<=150;i++){ System.out.print(i); if(i%3==0){ System.out.print(" foo"); } if(i

用星号打印菱形

#include <stdio.h>void main(){      int i,j,k;       for (i=1;i<6;i++)       {             for(k=0;k<5-i;k++)             {                   printf(" ");             }             for (j=0;j<2*i-1;j++)             {             

java:打印菱形图案(传参打印的自定义字符和行数)

打印菱形图案: 代码实现: public class Hello { public static void main(String args[]) { LingXingPrint("#", 7); } public static void LingXingPrint(String i, int num) { /** * 打印菱形,传参:i 为打印的字符,num为行数 . * 思路:将菱形分为上三角和下三角,上三角:每一行空格打印数为总行数-行号:每一行字符打印个数为2*行号-1;下三角

shell脚本编程设计——根据输入的数输出菱形、三角形或者数字金字塔(带闪烁颜色)

shell脚本编程设计--根据输入的数输出菱形.三角形或者数字金字塔(带闪烁颜色) shell脚本程序和解释如下 #!/bin/bash #创建死循环,当输入出错或者输入"quit"字符串退出脚本程序 while true do #等待用户输入 read -p "请输入一个不大于20的正整数(输入"quit"则退出):" n #先判断字符串是否是quit if [ "$n" == "quit" ] then