C语言之基本算法21—可逆素数

/*

==================================================================

题目:可逆素数是指一个数是素数,逆序后还是素数,如ABC是素数,CBA也是素数。

==================================================================

*/

#include<stdio.h>

int sushu(int n)

{

int i,k;

if(n%2==0)

return 0;

else

{

k=int(n/2);

for(i=3;i<=k;i++)

{

if(n%i==0)return 0;

else return 1;

}

}

}

main()

{

int m,n,k=0;

int ge,shi,bai,qian;

for(m=1000;m<10000;m++)

if(sushu(m))

{

ge=m%10;

shi=m/10%10;

bai=m/100%10;

qian=m/1000;

n=ge*1000+shi*100+bai*10+qian;

if(sushu(n))

{

printf("%5d ",m);

k++;

if(k%10==0)

printf("\n");

}

}

}

/*

==================================================================

评:本题因为范围比较小(1000-10000),所以用最直接的方法(直观易懂)来求,当数字

比较大时应当用两个函数:1是判断素数函数,2是求逆序函数,读者可以自己试着完成。

==================================================================

*/

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-14 21:38:45

C语言之基本算法21—可逆素数的相关文章

C语言值基本算法43—总结

C程序的基本算法共涵盖42个例题,包含了枚举.排列.逻辑判断.迭代.递推.字符串操作.矩阵操作.格式输出等内容. 相关的实现方法有的显得很笨拙,但足够说明问题,而且每个程序都经过作者亲测,保证可以运行.之所以称之为基本算法,就是为了测试基础知识的掌握,都是从原始的角度进行处理,没有运用过于花哨的处理技巧,作者也是在学习中进步,也希望这些代码对于没有基础或者基础薄弱的朋友带来帮助. 至此,基本知识就掌握了,我们常常会听说C的强大,因为它是面向过程的,在数学领域具有极好的应用,有必要进行进一步的学习

普林斯顿公开课 算法2-1:排序概述

目标 对所有类型的数据进行排序. 问题 排序函数如何知道比较的是哪种类型的数据呢? 回调函数 这时候就需要引入回调函数的概念了.回调函数就是将可执行的代码作为参数进行传递. 实现回调的方法 在Java中可以通过接口来实现,在C语言中可以通过函数指针来实现,C++中可以通过class-type functor,也就是重载操作符operator ()的类,在C#中可以使用Delegate委托,在Python/Perl/ML/javascript中可以直接传递函数. JDK中提供了Comparable

C语言实现FIFO算法与LRU算法

在操作系统中,当程序在运行过程中,若其所要访问的页面不再内存中而需要把他们调入内存,但内存已无空闲空间时,为了保证该进程能正常运行,系统必须从内存调出一页程序或数据送磁盘的兑换区中.但哪一个页面调出,须根据一定的算法确定.通常,把选择换出页面的算法称为页面置换算法(Page-Replacement Algorithms).置换算法的好坏将直接影响到系统的性能. 1) 先进先出(FIFO)页面置换算法 该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰.该算法实现简单,只需

可逆素数

/* 请从小到大输出所有的4位数的可逆素数 可逆素数:一个素数将各个位数字的顺序倒过来构成的反序数也是素数 */ #include <stdio.h> #include <stdlib.h> #include<math.h> int prime(int m); /* run this program using the console pauser or add your own getch, system("pause") or input loo

1114: 零起点学算法21——求平均值

1114: 零起点学算法21--求平均值 Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 4420  Accepted: 1634[Submit][Status][Web Board] Description 输入3个浮点数,求出平均值,保留3位小数 Input 输入3个浮点数数(多组数据) Output 输出平均值,保留3位小数(每组数据一行) Sample Input 2 3 4 Sample

c语言递推算法1

递推算法之一:倒推法 1.一般分析思路: if 求解初始条件F1 then begin { 倒推 } 由题意(或递推关系)确定最终结果Fn; 求出倒推关系式Fi-1 =G(Fi ); i=n; { 从最终结果Fn出发进行倒推 } while 当前结果Fi非初始值F1 do 由Fi-1=G(Fi)倒推前项; 输出倒推结果F1和倒推过程; end { of then } else begin { 顺推 } 由题意(或递推关系)确定初始值F1(边界条件); 求出顺推关系式Fi=G(Fi-1); i=1

0.数据结构(python语言) 基本概念 算法的代价及度量!!!

先看思维导图: *思维导图有点简陋,本着循循渐进的思想,这小节的知识大多只做了解即可. *重点在于算法的代价及度量!!!查找资料务必弄清楚. 零.四个基本概念 问题:一个具体的需求 问题实例:针对问题(需求)的具体的例子 算法:解决问题的过程,是对一个计算过程的严格描述 程序:程序可以看作是采用计算装置能够处理的语言描述的算法 一.算法的5大性质 有穷性(算法描述的又穷性):算法必须用有限长的描述说清楚 能行性:算法的每一步都是可行的,也就是说,每一步都能通过执行有限次数完成 确定性:别人看了过

C语言版数据结构算法

C语言版数据结构算法 C语言数据结构具体算法 https://pan.baidu.com/s/19oLoEVqV1I4UxW7D7SlwnQ C语言数据结构演示软件 https://pan.baidu.com/s/1u8YW897MjJkoOfsbHuadFQ 在上一篇的FIFO中就是基于数据结构思维中的队列实现的,而基本的数据结构内容还有 算法效率分析.线性表.栈和队列.串.数组和广义表.树和二叉树.图.查表.排序.动态存储管理 上面两个链接就是<数据结构(C语言版)>严蔚敏教授严奶奶的书籍

「C语言」「算法」输出指定范围内的素数

#include <stdio.h> //输出指定范围内的素数 int main(){ int a,b; int i,j; printf("请输入整数范围并用空格隔开:\n"); scanf("%d%d",&a,&b); for(i=a;i<=b;i++){ for(j=2;j<=i-1;j++) { if(i%j==0) break; } if(j>=i-1) printf("%d ",i); }