作业帮 > 综合 > 作业

Free Pascal

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/06 18:56:05
Free Pascal
我需要下列题目的解题思路,而不是直接的答案(如果有答案更好,哎如今像我这样RP好的有几人呢)
1.纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数.这样下去一直到最后剩下的个位数也还是素数.求出所有小于3000的四位的纯粹素数.(保存命名ex7.pas)
2.将1至9这几个数字排成3x3方阵,并使每一横行的三个数字组成一个三位数.如果要使第三行的三位数是第二行的两倍,第三行的三位数是第一的三倍,应怎样排法?编程找出所有排法.(保存命名ex11.pas)
3.对一个具有10个元素的一维数组按升序排序(算法不限).(保存命名ex12.pas)
饿,忘说了,我是初学者,刚学完数组类型,递归这类的还没学到,能否用简单点的方法
1.不多说了,直接枚举 1000..3000套个FOR 里面判断是否满足,满足就输出
2.觉得可以用搜索阿,搜索应该很简单,1..9肯定不会TLE的
3.快排(附过程,这个要背下来的)
procdure sort(l,r:longint);
var
i,j,x,y:longint;
begin
i:=l;j:=r;x:=a[(i+j) div 2];
repeat
while a[i]j;
{repeat {循环后保证有a[i]左边的数都比右边的小}
if l