早教吧作业答案频道 -->其他-->
一、题目:设计一个判断某数是否为可逆素数的程序二、目的与要求1.目的:培养学生综合利用C++语言进行程序设计的能力,提高软件系统分析能力和程序文档建立、归纳总结的能力,培
题目详情
一、题目:设计一个判断某数是否为可逆素数的程序
二、目的与要求
1. 目的:
培养学生综合利用C++语言进行程序设计的能力,提高软件系统分析能力和程序文档建立、归纳总结的能力,培养学生利用系统提供的标准函数及典型算法进行设计的能力。
2. 基本要求:
(1)要求用C++语言编程,在Visual C++环境下调试完成;
(2)用户界面友好,功能明确,操作方便;可以加以其他功能或修饰要求划分功能模块,各个功能分别使用函数来完成;
(3)源代码程序要有必要的注释,以增强程序的可读性。
三、设计方法和基本原理
1.课题功能描述
判断一个四位数是否为可逆素数。可逆素数指:一个素数将其各位数字的顺序倒过来构成的反序数也是素数。
2.问题的解决方案
首先判断一个四位数是否为素数,然后求它的反序数,最后判断它的反序数是否为素数。本题的重点不是判断素数的方法,而是求一个整数的反序数。
四、主要技术问题的描述
根据三的分析,主要问题在于如何求反序数。
求反序数的方法是从整数的末尾依次截取最后一位数字,每截取一次后整数缩小10倍,将截取的数字作为新的整数的最后一位(新的整数扩大10倍后加上被截取的数字)。这样原来的整数的数字从低到高被不断地截取,依次作为新的整数从高到低的各位数字。
五、创新要求
在基本要求达到后,进行创新设计:
(1)使用多文件,即主函数和各个函数分别存放在不同的.cpp文件中,在头文件中进行函数原型声明;
(2)创新性的提出算法设计。
六、课程设计的考核方式及评分方法
1.考核方式
(1) 学生要提交书面课程设计报告(A4纸打印);并将设计报告的电子文档、.cpp源文件和.h头文件放到一个文件夹里上传到所对应班级的学生名称相应文件夹中。
(2) 课程设计结束时,在机房当场验收。教师提供测试数据,由学生运行所设计的系统,检查运行结果是否正确,并回答教师提出的有关问题。
2.评分方法
根据出勤率、课程设计期间纪律、课程设计运行结果、课程设计报告及答辩情况综合评分。
七、书写设计报告的要求(详细内容见“设计报告模板”)
八、说明:课程设计的有关文档,“设计报告模板”和“课程设计要求”请在下载任务书处下载。
答案正确会追加分
二、目的与要求
1. 目的:
培养学生综合利用C++语言进行程序设计的能力,提高软件系统分析能力和程序文档建立、归纳总结的能力,培养学生利用系统提供的标准函数及典型算法进行设计的能力。
2. 基本要求:
(1)要求用C++语言编程,在Visual C++环境下调试完成;
(2)用户界面友好,功能明确,操作方便;可以加以其他功能或修饰要求划分功能模块,各个功能分别使用函数来完成;
(3)源代码程序要有必要的注释,以增强程序的可读性。
三、设计方法和基本原理
1.课题功能描述
判断一个四位数是否为可逆素数。可逆素数指:一个素数将其各位数字的顺序倒过来构成的反序数也是素数。
2.问题的解决方案
首先判断一个四位数是否为素数,然后求它的反序数,最后判断它的反序数是否为素数。本题的重点不是判断素数的方法,而是求一个整数的反序数。
四、主要技术问题的描述
根据三的分析,主要问题在于如何求反序数。
求反序数的方法是从整数的末尾依次截取最后一位数字,每截取一次后整数缩小10倍,将截取的数字作为新的整数的最后一位(新的整数扩大10倍后加上被截取的数字)。这样原来的整数的数字从低到高被不断地截取,依次作为新的整数从高到低的各位数字。
五、创新要求
在基本要求达到后,进行创新设计:
(1)使用多文件,即主函数和各个函数分别存放在不同的.cpp文件中,在头文件中进行函数原型声明;
(2)创新性的提出算法设计。
六、课程设计的考核方式及评分方法
1.考核方式
(1) 学生要提交书面课程设计报告(A4纸打印);并将设计报告的电子文档、.cpp源文件和.h头文件放到一个文件夹里上传到所对应班级的学生名称相应文件夹中。
(2) 课程设计结束时,在机房当场验收。教师提供测试数据,由学生运行所设计的系统,检查运行结果是否正确,并回答教师提出的有关问题。
2.评分方法
根据出勤率、课程设计期间纪律、课程设计运行结果、课程设计报告及答辩情况综合评分。
七、书写设计报告的要求(详细内容见“设计报告模板”)
八、说明:课程设计的有关文档,“设计报告模板”和“课程设计要求”请在下载任务书处下载。
答案正确会追加分
▼优质解答
答案和解析
#include
bool issushu(int a);
int tranint(int a);
using namespace std;
int main()
{
int input;
cin>>input;
if(issushu(input))
cout< else
{
cout< }
int aftertr;
aftertr=tranint(input);
cout< if(issushu(aftertr))
{
cout< }
else
cout< system("pause");
return 0;
}
bool issushu(int a)
{
int i;
for(i=2;i {
if(0==a%i)
return false;
}
return true;
}
int tranint(int a)
{
int aftertr=0;
int j=1;
int i=a;
while(i=i/10)
{
j=j*10;
}
for(;j>=1;j=j/10)
{
aftertr+=(a%10)*j;
a=a/10;
}
return aftertr;
}
本改进版程序不仅可以判断四位数。。。
bool issushu(int a);
int tranint(int a);
using namespace std;
int main()
{
int input;
cin>>input;
if(issushu(input))
cout< else
{
cout< }
int aftertr;
aftertr=tranint(input);
cout< if(issushu(aftertr))
{
cout< }
else
cout< system("pause");
return 0;
}
bool issushu(int a)
{
int i;
for(i=2;i {
if(0==a%i)
return false;
}
return true;
}
int tranint(int a)
{
int aftertr=0;
int j=1;
int i=a;
while(i=i/10)
{
j=j*10;
}
for(;j>=1;j=j/10)
{
aftertr+=(a%10)*j;
a=a/10;
}
return aftertr;
}
本改进版程序不仅可以判断四位数。。。
看了一、题目:设计一个判断某数是否...的网友还看了以下:
动宾结构和逆序状中结构以“冲喜”、“打围”等词为例,说明这一类词的构成.有人分析为动宾结构,有人分 2020-05-13 …
逆序数的英文是什么也可以写出逆序数的数学符号, 2020-05-14 …
给定一个n位正整数,判断它是不是回文数,回文数为逆序后不变的数字.例如:13531,逆序后仍为13 2020-05-17 …
行列式中t的定义行列式中逆序数t的定义是什么?是指行标的逆序数与列标的逆序数之和吗? 2020-06-05 …
为什么45312的逆序数是8?4312的逆序数是5为什么45312的逆序数是8?为什么4312的逆 2020-06-10 …
排列31524的逆序列是多少?a[j]等于在排列中先于j但大于j的整数的个数;它量度j反序程度.数 2020-06-12 …
内部排序序列的状态是逆序列使用哪种排序方法比较好某序列是逆序列(比如按大到小排列)要将它排成正序列 2020-06-12 …
什么叫按逆序排列?是从大到小排么?比如3517按逆序排完后是什么? 2020-06-16 …
下列表述:①综合法是执因导果法;②综合法是顺推法;③分析法是执果索因法;④分析法是间接证法;⑤反证 2020-06-17 …
把一个数的数字顺序颠倒过来得到的数称为这个数的逆序数,比如89的逆序数为98.如果一个两位数等于其 2020-07-05 …