Python和Java编程题

Posted 三一七零二

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python和Java编程题相关的知识,希望对你有一定的参考价值。

今天偶尔看到一个博客有贴了五十个编程题,决定以后两天左右做一道题

题目来源:http://blog.sina.com.cn/s/blog_60fafdda0100wb21.html

1.题目

一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程 找出1000以内的所有完数。

2.Java实现

Java中的通过创建对象,再来调用方法解决问题思想还是不太熟练

 1 public class ProfectNumber {
 2     /*
 3      * 定义计算数字的因子总和
 4      */
 5     public void GetProfectNumber(int a) {
 6         for(int i=2;i<a;i++) {
 7             int Sum = 0;
 8             for(int j=1;j<i;j++) {// 求数字i的出本身之外的因子
 9                 if(i%j==0) {
10                     Sum += j;
11                 }
12             }
13             if(i==Sum) {
14                 System.out.print(i+"、");
15             }
16         }
17     }
18     
19     public static void main(String args[]) {
20         ProfectNumber p = new ProfectNumber();//新建此类对象
21         p.GetProfectNumber(1000);//调用计算完数方法
22     }
23 }

 

3.Python实现

 1 # -*- coding: utf-8 -*-
 2 # 一个数等于除它本身之外的因子之和,称为完数
 3 def Factor(a, L):
 4     for j in range(1,a):
 5         if a%j == 0:
 6             L.append(j)
 7     return L
 8 
 9 if __name__ == __main__:
10     ProNumber = []
11     for i in range(2,1000):# 1不是完数,可以排除
12         A = []
13         FactorList = Factor(i, A)
14         if sum(FactorList) == i:
15             ProNumber.append(i)
16     print("1000以内总共有{}个完数,分别是".format(len(ProNumber)))
17     for index in range(0,len(ProNumber)):
18         print(ProNumber[index])

 

以上是关于Python和Java编程题的主要内容,如果未能解决你的问题,请参考以下文章

Python和Java编程题

Python和Java编程题

Python练习册 第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-),(http://tieba.baidu.com/p/2166231880)(代码片段

Spark编程题

Python元组、字典、集合基本操作 编程题目?

Python编程题,求解答