zoukankan      html  css  js  c++  java
  • python学习(循环练习)

    循环语句
    练习1: 求100以内所有的奇数之和
      result = 0 #创建一个变量在外面
      for i in range(100): # range(打印0-100)
        if (i % 2 != 0): # 使用%来判断是否是奇数
          sum +=i
      print(result)
    或者:
      i = 0
      result = 0
      while i < 100:
        i += 1
        if ( i % 2 != 0):
          result += i
        print(result)


    练习2: 求100以内所有7 的倍数之和,以及个数
      result = 0 #所有7的和
      number = 0 #计数器
      for i in range(100):
        if (i % 7 ==0):
        result += i
        number += 1
      print(result,"总和")
      print(number,"总数量")


    练习3: 水仙花数是指一个n位数( n >= 3 ),它的每个位上的数字的n次幕之和等于它本身(例如: (1**3 + 5**3 + 3**3=153))
    求1000以内所有的水仙花数
    获取1000以内的三位数
      for i in range(100,1000):
        # a = 百位数, b = 十位数, c = 个位数
        # 百位数  
        a = (i // 100)
        # 十位数
        b = (i // 10 % 10)
        # 个位数
        c = (i % 10)
        # 判断i是否是水仙花数
        if (a**3 + b**3 + c**3 == i):
        print(i)

    练习4:获取用户输入的任意数,判断其是否是质数。质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数

      num = input("请输入一个大于1的整数:")
      flage = True
      # isdigit()方法检测字符串是否只由数字组成,如果字符串只包含数字则返回 True 否则返回 False。
      # 判断num是否是一个合法的数字,是否大于1
      if num.isdigit() == False:
        print("请输入一个大于1的整数")
      elif 1 >= int(num):
        print("请输入一个大于1的整数")
      # 判断yum是否是质数,只能被1和他只身整除的数就是质数
      for i in range(2, int(num)):
        if (int(num) % i == 0):
      # 一旦竟然判断则证明num不是质数,将flage修改为false
        flage= False
      if flage:
        print(num,"是个质数")
      else:
        print(num,"不是个质数")
    或着:
      num = input("请输入一个大于1的整数:")
      flage = True
      if num.isdigit() == False:
        print("请输入一个大于1的整数")
      elif 1 >= int(num):
        print("请输入一个大于1的整数")
      i = 2
      while i < int(num):
        if int(num) % i == 0:
          flage = False
        i += 1
      if flage:
        print(num,"是个质数")
      else:
        print(num,"不是个质数")
    嵌套循环:
    练习1:
    打印99乘法表
      i = 1
      while i < 10:
      j = 1
        while j < i +1:
          print(j,"x",i,"=",i*j ,end=" ")
        j+=1
      print()
      i+=1

    练习2:
    求100以内的质数
      falge = True
      for i in range(2, 101):
        falge = True
        for j in range(2, i):
          if ( i % j == 0):
      falge = False
      if falge:
        print(i, "是质数!")
    或者:
      i = 2
      while i <= 100:
        falge = True
        j = 2
          while j < i:
            if (i % j == 0):
              falge = False
            j +=1

        if falge:
          print(i)
        i += 1

  • 相关阅读:
    (Problem 14)Longest Collatz sequence
    (Problem 13)Large sum
    (Problem 10)Summation of primes
    (Problem 9)Special Pythagorean triplet
    (Problem 7)10001st prime
    (Problem 6)Sum square difference
    数组
    断点及复习
    抽象和封装
    类和对象
  • 原文地址:https://www.cnblogs.com/wangwen022/p/11299098.html
Copyright © 2011-2022 走看看