18_有关循环结构的综合实例
来源:互联网 发布:wifi监控器软件下载 编辑:程序博客网 时间:2024/06/04 23:30
//_18_综合实例//_18_main.cpp//有关循环结构的综合实例//任意给出一个数,判断其是否为素数,如果是,找出组成该素数的基本元素#include <stdio.h>#include <stdlib.h>#include <math.h>//判断一个数是否是素数bool judgePrimeNumber(int);//判断一个素数是否可以分解成两个素数之和bool judgeBasicElement(int);int main(){int num;//要输入的元素printf("please input a integer:");scanf("%d",&num);if(num<=1)printf("input data error");else{if(!judgePrimeNumber(num))//如果num不是素数情况{printf("%d不是素数.\n",num);if(num%2==0)//num为偶数情况{printf("%d是偶数,下面来看是否可以分解成两个素数之和...\n",num);if(!judgeBasicElement(num))printf("%d不能分解成两个素数之和.\n",num);else{for(int i=2;i<(num/2);i++){if(judgePrimeNumber(i)&&judgePrimeNumber(num-i)){printf("%d = %d + %d.\n",num,i,num-i);continue;}elsecontinue;}}}}else if(!judgeBasicElement(num))//num是素数但不可以分解成两个素数之和的情况printf("%d是素数但不可以分解成两个素数之和.\n",num);else{printf("%d是素数,并且可以分解成两个素数之和:\n",num);for(int i=2;i<(num/2);i++){if(judgePrimeNumber(i)&&judgePrimeNumber(num-i)){printf("%d = %d + %d.\n",num,i,num-i);continue;}elsecontinue;}}}system("pause");return 0;}//判断一个数是否是素数bool judgePrimeNumber(int number){if(number==1)return false;else if(number==2)return true;else{for(int i=2;i<number;i++){if(number%i!=0)continue;elsereturn false;}return true;}}bool judgeBasicElement(int number){int p=2;int q=number-p;while(p<number)//p==2的时候输出为false{//当p、q有一个不是素数,且p小于num时if(!judgePrimeNumber(p)||!judgePrimeNumber(q)){p=p+1;q=number-p;}elsereturn true;}return false;}
0 0
- 18_有关循环结构的综合实例
- 34_综合实例
- 44_综合实例
- 62_综合实例
- 35_综合实例2
- C语言_综合实例
- 顺序结构,选择结构,循环结构的概念,用法,实例
- Java的变量声明_条件结构_循环
- 综合执行计划与索引结构的查询优化实例
- 实例讲解 C 语言的循环结构
- 循环的综合应用
- cookie的综合实例
- C语言_循环结构
- C语言_循环结构
- 线性结构_循环队列
- java"循环结构"练习实例
- 数据结构_链表实现无限循环的"环"结构/循环队列
- 树状结构的综合讨论
- 17_exit()函数
- 垃圾回收机制
- 【UVa】10755 Garbage Heap 三维前缀和
- #define和typedef
- Maven教程初级篇03: 创建Web应用
- 18_有关循环结构的综合实例
- 19_一维数组
- 开源 nosql 数据库 —— LedisDB 简介
- 3.集合--ConcurrentHashMap之实现细节
- 20_二维数组_输出魔方阵
- 【心凉只需一瞬间!超现实的人生感悟!】
- 加快Soap客户端SUDS访问速度
- Java transient关键字使用小记
- 0-1背包问题