基于c++的完全数之非TDD版本(2013.8.20)
来源:互联网 发布:安河桥 知乎 编辑:程序博客网 时间:2024/05/20 20:05
#include <cassert>#include <cmath>bool is_perfect(int num){ int sum = 0; if (num > 1) { sum = 1; for (int i = 2; i <= (int)sqrt((double)num); i++) { if (0 == (num % i)) { sum += i; sum += num / i; } } } return sum == num;}void test_is_perfect(){ assert(is_perfect(6)); assert(is_perfect(28)); assert(is_perfect(496)); assert(is_perfect(8128));}const int perfects[] = {6, 28, 496, 8128};const int size = sizeof(perfects) / sizeof(perfects[0]);bool in_perfects(int num){ bool found = false; int i = 0; while(!found && i < size) { found = (num == perfects[i++]); } return found;}void test_is_not_perfect(){ for (int i = 1; i < 100000; i++) { if (in_perfects(i)) { assert(is_perfect(i)); } else { assert(!is_perfect(i)); } }}int main(){ test_is_perfect(); test_is_not_perfect(); return 0;}
- 基于c++的完全数之非TDD版本(2013.8.20)
- 基于python的完全数之非TDD版本
- 基于c++的完全数之非TDD版本
- 基于python的完全数之TDD版本
- 基于c++的完全数之TDD版本
- 基于python的完全数之TDD版本(修改)
- 基于visual Studio2013解决C语言竞赛题之1084完全平方数
- 无符号数计算非零比特数量的多种版本C代码汇总
- MyQQ.cpp: 非完全版本
- MyQQ.cpp: 非完全版本
- 基于spring下的TDD开发
- 基于spring下的TDD开发
- 基于spring下的TDD开发
- 基于机器学习的TDD开发模式
- TDD 实践之路 - TTCMS完全构建历程(DELPHI)
- c语言 完全数
- C/C++ 完全数
- C语言之基本算法03—三位数的完全平方数且两位相同
- Asp.Net MVC4.0入门指南(10):第三方控件Studio for ASP.NET Wijmo MVC4 工具应用
- SQL 时间截按月分组查询
- HDU--1201 -- 18岁生日 [水] [日期计算]
- Asp.Net MVC4.0入门指南(8):给数据模型添加校验器
- 解决AptanaStudio3.0 中文注释过小的问题
- 基于c++的完全数之非TDD版本(2013.8.20)
- Story board 的静态 cell 。快速做页面
- IOS面试题1
- 数据结构与程序设计第一章:编程规则总结
- bus,device,driver三者关系
- pidqin 即时聊天工具
- Ruby on rails naming conventions
- 10g新特性,flashback系列之一 —— flashback database
- ACCESS中FROM 子句语法错误(解决方法)