基础练习

简介:
  1. 将一个正整数分解质因数。例如:输入90,打印出90=233*5。
    程序分析:对n进行分解质因数,应先找到一个最小的质数i,然后按下述步骤完成:
    (1)如果分解后商为1,则说明分解质因数的过程已经结束,打印出即可。
    (2)如果商不为1,则应打印出i的值,并用n除以i的商,作为新的正整数进行分解,
    重复执行第一步。
    (3)如果n不能被i整除,则i的值加1,重复执行第一步。

逻辑:1、让用户输入一个数字num,并将它整数化
2、新建一个列表,当num!=1时,循环,num%i=0,说明可以整除,然后找出余数:num=num/i ,将num余数加入列表中,然后通过
' * '.join(map(str,列表))打印出来

    while True:
    num=raw_input('Please a num: ')

    if num!='quit':
        num=int(num)#整数化
        if num<2:   #num=1,那么就没有意义了
            print 'num more 2'
            continue
        list1=[1,]  #定义一个列表,找出质数因子后将加入到列表里
        while num!=1:
            for i in range(2,num+1):
                if num%i == 0:
                    num /= i    #比如num=12,i=2,num=12/2=6,然后加入列表list1,跳出这个循环,接着num=6/2
                    list1.append(i)
                    break
        print ' * '.join(map(str,list1)) #L=(1,2,3),map(str,L)返回结果:[1,2,3],将map=str(L)
    else:
        print 'end'
        break

2、# 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
#思路:定义天数:Day=10;桃子个数:peachNumber=1;第9天 桃子的个数假设为x:x/2-1=1;x=(1+1)2=4个
#那就是说peachNumber=(peachNumber+1)
2

Day=10
peachNumber=1
while Day>1:
    print Day
    Day-=1
    peachNumber = (peachNumber + 1) * 2
    print '{0} day,peachNumber is {1}'.format(Day,peachNumber)















本文转自方向对了,就不怕路远了!51CTO博客,原文链接:http://blog.51cto.com/jacksoner/2055861 ,如需转载请自行联系原作者


相关文章
|
6月前
基础练习-2
基础练习-2
53 0
|
2月前
|
传感器 编解码 C++
C++视频基础
C++视频基础
|
9月前
|
C#
C#基础总结(3)
C#基础总结(3)
43 0
|
6月前
|
C语言 C++
|
9月前
|
C#
C#基础总结(2)
C#基础总结(2)
39 0
|
API 数据安全/隐私保护 Windows
逆向破解的基础
逆向破解的基础
123 0
|
存储 编译器 C++
C++语法基础(六)
C++语法基础(六)
C++语法基础(六)
|
SQL 网络协议 网络安全
|
存储 C#
C#基础03
C#基础03
105 0
C#基础03
|
JavaScript 前端开发 索引