zoukankan      html  css  js  c++  java
  • Python_2_daythree2_CyclicStructure

    """
    Function_1: for-in循环
    for循环实现1~100之间的奇数求和

    Time: 2020.1.27
    Author: YaoXie
    """
    # sumup = 0
    # for x in range(2, 101, 2):
    # print(x)
    # sumup += x
    # print(sumup)

    """
    Function_2: while循环
    输入一个正整数判断是不是素数。
    质数又称素数。
    一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;
    否则称为合数。
    Time: 2020.1.27
    Author: YaoXie
    """
    # while True:
    # a = int(input('Enter a positive integer : '))
    # b = int(a ** 0.5)
    # is_prime = True
    # if a <= 1:
    # print("素数是一个大于1的自然数,请重新输入!")
    # if a == 2:
    # print("%d is a prime" % a)
    # else:
    # for i in range(2, b + 1):
    # if a % i == 0:
    # is_prime = False
    # print("%d is not a prime" % a)
    # break
    # if is_prime:
    # print("%d is a prime" % a)
    # 关键点:判断时需设置一个判断变量!

    """
    Function_3: 输入两个正整数,计算它们的最大公约数和最小公倍数。

    最小公倍数:数论中的一种概念,两个整数公有的倍数成为他们的公倍数,
    其中一个最小的公倍数是他们的最小公倍数,
    同样地,若干个整数公有的倍数中最小的正整数称为它们的最小公倍数
    求最小公倍数算法:
    最小公倍数=两整数的乘积÷最大公约数

    Time: 2020.1.27
    Author: YaoXie
    """
    # METHOD_1: 辗转相除法
    # while True:
    # a = int(input('a = '))
    # b = int(input('b = '))
    # m = a
    # n = b
    # while b != 0:
    # c = a % b
    # a = b
    # b = c
    # print("%d %d 的最大公约数是:%d" % (m, n, a))
    # print("%d %d 的最小公倍数是:%d" % (m, n, m*n/a))

    # METHOD_2: 相减法
    # while True:
    # a = int(input('a = '))
    # b = int(input('b = '))
    # m = a
    # n = b
    # while b != a:
    # if a > b:
    # a = a - b
    # else:
    # b = b - a
    # print("%d %d 的最大公约数是:%d" % (m, n, a))
    # print("%d %d 的最小公倍数是:%d" % (m, n, m * n / a))

    # METHOD_3_1: 穷举法
    # while True:
    # a = int(input('a = '))
    # b = int(input('b = '))
    # m = a
    # n = b
    # i = 1
    # while i <= a:
    # if a % i == 0 and b % i == 0:
    # t = i
    # i += 1
    # print("%d %d 的最大公约数是:%d" % (m, n, t))
    # print("%d %d 的最小公倍数是:%d" % (m, n, m * n / t))

    # METHOD_3_2: 改进后的穷举法
    # while True:
    # a = int(input('a = '))
    # b = int(input('b = '))
    # m = a
    # n = b
    # i = a
    # while i >= 1:
    # if i % a == 0 and i % b == 0: # 注意!
    # t = i
    # i -= 1
    # print("%d %d 的最大公约数是:%d" % (m, n, t))
    # print("%d %d 的最小公倍数是:%d" % (m, n, m * n / t))

    # METHOD_3_2: 骆昊的穷举法
    # x = int(input('x = '))
    # y = int(input('y = '))
    # # 如果x大于y就交换xy的值
    # if x > y:
    # # 通过下面的操作将y的值赋给x, x的值赋给y
    # x, y = y, x
    # # 从两个数中较的数开始做递减的循环
    # for factor in range(x, 0, -1):
    # if x % factor == 0 and y % factor == 0:
    # print('%d%d的最大公约数是%d' % (x, y, factor))
    # print('%d%d的最小公倍数是%d' % (x, y, x * y // factor))
    # break
    #
    """
    Function_4: 打印三角形图案
    靠右:f(x)=i;
    靠左:空格=a-i,*=f(x)-(a-i)
    居中:f(x)=2*i-1
    Time: 2020.1.27~2020.1.28
    Author: YaoXie
    """
    while True:
    a = int(input('请输入要打印的行数: '))

    # 打印靠左的三角形
    # for i in range(1, a+1):
    # for j in range(1, i+1):
    # print("*", end=" ")
    # print()

    # 打印靠右的三角形
    # for i in range(1, a+1):
    # for j in range(1, a+1):
    # if j < a-i+1:
    # print(" ", end=" ")
    # else:
    # print("*", end=" ")
    # print()

    # 打印靠右的倒三角形
    # for i in range(1, a+1):
    # for j in range(1, a+1):
    # if j >= i:
    # print("*", end=" ")
    # else:
    # print(" ", end=" ")
    # print()

    # 打印居中的三角形
    for i in range(1, a + 1):
    for j in range(1, a-i+1):
    print(" ", end=" ")
    for z in range(1, 2*i):
    print("*", end=" ")
    print()
    注意:空格与行数的函数关系
  • 相关阅读:
    [No0000CA]什么是“普瑞马法则”?以及 如何利用“普瑞马法则”,三步克服惰性
    [No0000B9]C# 类型基础 值类型和引用类型 及其 对象复制 浅度复制vs深度复制 深入研究2
    [No0000B8]WPF或Winform调用系统Console控制台显示信息
    [No0000B7]If else 与 三元表达式? : 效率对比
    [No0000B5]C# 类型基础 值类型和引用类型 及其 对象判等 深入研究1
    [No0000B4].Net中String是引用类型还是值类型,答string是特殊的引用类型
    [No0000B6]C#中 ==与equals的区别
    [No0000B3].NET C# 单体模式(Singleton)
    [No0000AF]去除wpf窗口标题栏ICON
    [No000090]C#捕获控制台(console)关闭事件及响应cmd快捷键
  • 原文地址:https://www.cnblogs.com/kekefu/p/12237861.html
Copyright © 2011-2022 走看看