编程C,C ++,Java,PHP,Ruby,图灵,VB
计算机科学加拿大 
编程C,C ++,Java,PHP,Ruby,图灵,VB  

用户名:   Password: 
 登记登记   
 完美的比赛。 (我猜)
指数 -> 竞赛
查看上3d中奖规则主题 可打印的版本下载主题订阅本主题私人信息刷新页面 查看下3d中奖规则主题
作者 信息
Netninja.




邮政发布: 星期四2014年10月14日7:43 PM  帖子主题:完美的数字比赛。 (我猜)

我试图找到更新的方式来更有效地找到完美的数字。我目前从一段时间从素数主题应用我的知识。我知道这是无用的,但它很酷。所以雅,无论如何。每个人都发布了你的新的和改进的寻找完美数字的方法。

顺便说一句,如果有人不知道完美的数字是什么,它是3d中奖规则数字,这是3d中奖规则不包括自己的因素的总和。不是3d中奖规则tho。所以,例如。 6 =完美,因为1 + 2 + 3 = 6

设计最有效的计划的人将获得一些偏离分享知识的位和感激之情。

一旦写下它们(GTG睡眠,而且Tommorow不止一次),我会立即开始发布我自己的,我还将包括最简单的人,最先提出。

晚安,好运 很高兴
赞助
赞助
赞助
赞助
WTD.




邮政发布: THU 2004年10月14日8:40 PM  帖子主题:(没有主题)

在标准C.在输入的号码后找到所有完美的数字,包括下3d中奖规则完美的数字。

代码:
#包括<stdio.h>
#包括<math.h>
#包括<stdbool.h>
#包括<stdint.h>

bool is_prime.(uint64_t number)
{
        for (UINT64_T因子= 2;因素<=数字/因子; ++因子)
                if (number % factor == 0)
                        return false;

        return true;
}

int main()
{
        uint64_t sum = 0;
        uint64_t high = 0;

        printf("我应该去有多高?");
        scanf("%lld", &high);

        for (uint64_t n = 0; ; ++ n)
        {
               UINT64_T Current_Power =.(uint64_t)pow(2, n);

               sum + = current_power;

                if (is_prime(sum) && sum >= 3)
                {
                       UINT64_T PERFERT_NUMBER = SUM * CURRENT_POWER;

                        if (perfect_number > high)
                                break;

                        printf("%lld\n", perfect_number);
                }
        }

        return 0;
}


和翻译成ADA95:

代码:
使用ada.text_io,ada.integer_text_io;
使用ada.text_io,ada.integer_text_io;
程序Perfect_Numbers是
        function Is_Prime(Number : in Integer) return Boolean is
                Factor : Integer := 2;
        begin
                while Factor <= Number / Factor
                loop
                       如果number mod因子= 0则
                                return False;
                        end if;
                       
                        Factor := Factor + 1;
                end loop;
               
                return True;
        end Is_Prime;
       
        Sum, Power, High : Integer := 0;
开始
        Put("你想去多少高?");
        Get(High);
       
        loop
                declare
                       current_power,perfect_number.: Integer := 0;
                begin
                        Current_Power := 2 ** Power;
                        Sum := sum + current_power;

                        if Is_Prime(Sum) then
                                Perfect_Number := sum * current_power;

                                if Perfect_Number > High then
                                        exit;
                                elsif Sum >= 3 then
                                        Put(Perfect_Number);
                                        New_Line;
                                end if;
                        end if;

                        Power := Power + 1;
                end;
        end loop;
结束perfect_numbers;
Brighguy.




邮政发布: THU 10月14日,2004年10:52 PM  发表主题:RE:完美的号码比赛。 (我猜)

值得注意的是,上述算法只会生成所有 甚至 完美的数字,不是奇怪的数字(如果有的话)。

当然,由于它们必须如此大,这种方法适用于所有合理的输入。
WTD.




邮政发布: THU 10月14日,2004年11:37 PM  帖子主题:(没有主题)

除非我错了,否则所有完美的数字都是偶数。 微笑

基本上:

1 + 2 = 3:3是Prime:3 * 2 = 6
1 + 2 + 4 = 7:7是Prime:7 * 4 = 28
1 + 2 + 4 + 8 = 15:15不是Prime: 没有完美的数字
1 + 2 + 4 + 8 + 16 = 31:31是Prime:31 * 16 = 496
1 + 2 + 4 + 8 + 16 + 32 = 63:63不是Prime: 没有完美的数字

前三个完美的数字是:6,28,496
Brighguy.




邮政发布: 星期五,2004年10月15日上午9:33  发表主题:RE:完美的号码比赛。 (我猜)

似乎所有完美的数字甚至(目前所有41个已知的完美数字甚至)似乎是合乎逻辑的,但实际上它尚未被证明。已经表明,如果存在奇数完美的数字,则必须长300位。可以找到更多信息 这里.
Netninja.




邮政发布: 星期五,2004年10月15日11:50 AM  帖子主题:(没有主题)

现在我只是感到愚蠢......

我以为我在图灵部分发布,哇,我是3d中奖规则白痴。 笑

无论如何,我对C的了解延伸到足以了解您在此处的内容。所以我猜它是3d中奖规则奖金。但是我的原始意图是为了提出,选择图灵语言的3d中奖规则原因是因为我正在进行3d中奖规则图灵的课程,我打算获得3d中奖规则高标记(我已经得到了),从而从这里到这一点进入未来的程序。在大多数情况下,我选择制作这个线程,因为我对介绍了良好效率的书面课程感兴趣,而我原来的好奇心被图灵的素数问题引起了。

无论如何,谢谢。
Brighguy.




邮政发布: 星期五,2004年10月15日下午1:01  发表主题:RE:完美的号码比赛。 (我猜)

WOAH ......我的3d中奖规则教授在这个页面上提到了奇怪的完美数字。 震惊 显然他最近证明,奇怪的完美数字必须有47个或更多的主要因素。

无论如何,思考现在思考......这是相同的基本解决方案:
代码:
功能isprime.(n : int) : boolean
    for a : 2 .. floor (sqrt (n))
        if n mod a = 0 then
            result false
        end if
    end for
    result true
结束isprime.

对于P.: 2 .. 16
    var mersenne : int := 2 ** p - 1

    if isprime (mersenne) then
       把mersenne * 2 **(p - 1)
    end if
结束

检查所有Mersenne号码,最多可达M16,之后进行图灵具有整数溢出。
Netninja.




邮政发布: 2004年10月18日5:23 PM  帖子主题:(没有主题)

我想我不得不发布了。任何人都有任何其他更有效的解决方案吗?我现在在3d中奖规则人身上工作,我发现时间很快就发布了它。否则,最简单的3d中奖规则将赢得比特奖。
赞助
赞助
赞助
赞助
从上3d中奖规则显示帖子:   
   指数 -> 竞赛
查看上3d中奖规则主题 告诉3d中奖规则朋友可打印的版本下载主题订阅本主题私人信息刷新页面 查看下3d中奖规则主题

11  [ 8 Posts ]
跳到:   


Style:  
搜索: