美文网首页
4作 循环和分之

4作 循环和分之

作者: 大黄蜂人工智能 | 来源:发表于2018-08-25 11:47 被阅读0次

1 .读程序:

numbers = 1
for i in range(0,20):
  numbers *= 2
print(numbers)

总结:计算方法:i 取0~(20-1):
numbers = 1 i=0 numbers=2, # 2^(i+1)
numbers = 2 i=1 numbers=4, #2^(i+1)
numbers = 8 i=2 numbers=16, #2^(i+1)
numbers =16 i =3 numbers =32 #2(i+1)

所以print(sumbers) = 2(20-1+1)=220

2.summation=0
num=1
while num<=100:
   if(num%3==0 or num%7==0) and num%21 != 0
summation +=1
  num+=1
print(summation)

总结:summation=0,num=1,summation=1.
summation=1,num=2,sumation=2.
num= 1~100
意思是:统计被能被3或者7整除,但不能同时被3和7整除的数的个数。

2.编程实现(for和while各写一遍):

1.求1到100之间所有的数的和,平均值;

for:

sum = 0
for x in range(1,101):
  sum+=x
print('1~100的和是;%d,平均数是:%.2f'  %(sum,sum/100))

while:

a =1
b=0
while a <=100:
  b +=a
  a +=1
print('0~100数字之间的和是:%d,平均数是:%.2f'%(b,b/100))

2.计算1~100之间能被3整除的数的和:
for:
第一种解法:

a = 1
b = 0
for a in range(101):
  if a%3 == 0:
    b += a
print(b)

第二种解法:

for x in range(3,101,3):
    sum1 += x
print(sum1)

while:

b = 0
a = 1
while a <= 100:
  if a % 3 == 0:
    b += a
  a += 1
print(b)

3.计算1~100之间不能被7整除的数的和:
for:

b = 0
for a in range(101):
  if a % 7 != 0:
    b += a
print(b)

while:

while a <= 100:
  if a%7 !=0:
    b += a
  a += 1
print(b)
  • 稍微困难的:

1.求斐波那契数列中第n个数的值:1,1,2,3,5,8,13,21,34.....:
解释:
当 n =1和 n=2时,第n个数等于1
当 n=2,第n个数 = 第n-1个数 + 第n-2个数
1,1,2,3,5,8
a1 =1
a2 = 1
c = a1 + a2
a1 = a2
a2 = c

n = 8
if n == 1 or n == 2:
  current = 1   #当前的
p1 = 1  # 前一个
p2 = 1  #前两个
# 求出第n个和第n个前面的所有的数
for idex in range(3,n+1):#当前的等于前一个+前两个
current = p1 + p2
# 挪动 p1和p2
p1 = p2
p2 = current
print(current)

2.判断101~200之间有多少个素数,并输出所有素数。判断素数的方法:用一个数分别除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数:
解释:素数或质数:除了1和它本身,不能被其他的数整除的数。

  • 方法1:
count = 0
for x in range(101,201):  #j将101到200之间的数全部取出来。
  for y in range(2,x):  #将2~x-1取出来
    if x % y ==0: #(判断2~x-1区间中是否能够被x整除,只要有一个余数是0,就说明x不是素数)
        break
  else:
          count += 1
          print('x,是素数')
print('101~200总共有%d个素数'%(count))
  • 方法2:
for x in range(101,201): #导出101~200的所有数
  count = 0  #声明一个数
  for y in range(2,x): #导出2~x-1的所有数
    if x % y == 0: #判断2~x-1是否能被x整除
      count += 1 #能被整除的进入终止循环
      break # 终止标识
    if count == 0: # 判断和开始变量是否相等
      print(x,'是素数')
print('101~200之间素数一共有%d位'%count)

3.打印出所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个水仙花数,因为153 = 1^3 + 5^3 + 3^3.
方法:

for x in range(100,1000): # 先导出所有三位数
  bai_wei = x//100 #找出百位数
  shi_wei = x//10%10 #找出十位数
   ge_wei = x//10  #找出个位数
if x = bai_wei**3 + shi_wei**3  +  ge_wei**3;  #判断其是否相等
    print('%d是水仙花数'%x)  #得出结果
  • 4.给一个正整数,要求:1.求它是几位数。2.逆序打印出各位数字:
import random #引入随机数
number = random.randint(100,100000) #随机数在100~100000之间
ste = str(number) # 数字转化为字符串
print(ste)  #输出字符串
print('数字%d是%d位数‘%(number,len(ste))) # 字符串的个数就是数字的位数
print(ste[-1::-1])  #逆序打出各位数字

扩展:1.逆向一位一位打印:
length = len(num_str)  #字符串的位数
for index in range(0,length):  #引入一个index取值0~长度之间
  print(num_str[length-1-index]  # 逆向打印字符串每一位
2.逆向打印数字 中间用,隔开
print(number)  # 输出随机数
index = -1  # 倒数第一位
while index >= -length: #取值倒数第一到倒数最后一位
  print(num_str[index],end',')   #逆向打印字符串的每一位,中间用,隔开
  index -= 1   #每导入一位,下次倒数位数加一位。

相关文章

  • 4作 循环和分之

    1 .读程序: 总结:计算方法:i 取0~(20-1):numbers = 1 i=0 numbers...

  • 4总 循环和分之

    1.认识字符串,'圣诞节开发ya123', "abc%u23", '\n\t\'"', '',""2.python...

  • day4-循环和分之

    1.if 1.if 条件语句:代码块 其他语句 执行过程:先判断条件语句是否为True,如果是True就执行代码块...

  • day04_python_循环和分之

    Day4-循环和分之 一.数据类型转换(int,float,bool,str) 1.数据类型的自动转换 2.强制转...

  • 2018-08-23 day4-总结

    Day4-循环和分之 一.数据类型转换(int,float,bool,str) 1.数据类型的自动转换 2.强制转...

  • MYSQL中的in、not in、exists及not exis

    一、in和exists in是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再...

  • 157.谈谈SQL中的in与not in、exists与not

    1、in和exists in是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再...

  • in and exists

    1、in和existsin是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再对...

  • in和exists、not in 和 not exists

    1、in和existsin是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再对...

  • day5 js基础语法

    1、什么是js 2、js基础语法 3、变量 4、运算符 5、分之结构 6、循环 7、函数

网友评论

      本文标题:4作 循环和分之

      本文链接:https://www.haomeiwen.com/subject/gtoviftx.html