主题:Moz的作业本
moz
[专家分:37620] 发布于 2005-11-09 12:34:00
页码 楼层 题目
1 1-10 目录
2 11 第一题:关于质数的题目
2 11 第二题:关于分解质因数的题目
2 12 第三题:关于排列组合的题目
2 13 第四题:一个用"*"号列印的倒置三角形点编写好??
*******
*****
***
*
2 13 第五题: 编程输出菱形米字号
*
***
*****
*******
*****
***
*
2 13 第六题: 蛇形矩阵
1 2 6
3 5 7
4 8 12
9 11 13
10 14 15
2 13 第七题: 数字图形编程
3
323
32123
3210123
32123
323
3
2 13 第八题: 两个数字图形的编程思路和方法!!!
第一个 第二个
1 12 11 10 1 1 1 1
2 13 16 9 1 2 2 1
3 14 15 8 1 2 2 1
4 5 6 7 1 1 1 1
2 14 第九题: QB打字母菱星怎么打啊?
A
A B A
A B C B A
A B C D C B A
A B C B A
A B A
A
2 15 第十题: 一个数列,已知它的前三个数是1,1,2.第四数是前三个数的和,
以后每个数分别都等于它前三个数之和
蜗牛爬树中ing...........................................
回复列表 (共98个回复)
81 楼
FFKK [专家分:1610] 发布于 2009-06-24 17:32:00
for i=-3 to 3
print tab(abs(i))
print "*"
next i
82 楼
FFKK [专家分:1610] 发布于 2009-06-26 15:39:00
FUNCTION NextZS% (a%)
static s$
IF Len(s$) = 0 THEN s$=mki$(2)+mki$(3)+mki$(5)+mki$(7)
e = len(s$)\2
z=cvi(right$(s$,2))
SELECT CASE a%
CASE IS <= 2
NextZS% = 2
CASE IS >= z
DO UNTIL z >= a
DO
if e>fre(" ")\4-10 or z>32765 then
print "Error! Out of Memory!"
exit function
endif
z = z + 2
if (z mod 3) and (z mod 5) then
i = 4
q = SQR(z)
DO
k=cvi(mid$(s$,i*2-1,2))
IF z MOD k = 0 THEN EXIT DO
i = i + 1
LOOP UNTIL k > q
end if
LOOP UNTIL k > q
e = e + 1
s$=s$+mki$(z)
'PRINT e, z
LOOP
NextZS% = z
CASE IS < z
l = 1
r = e
DO
m = (r + l) / 2
b=cvi(mid$(s$,m*2-1,2))
IF a > b THEN l = m ELSE r = m
LOOP UNTIL r - l < 2
NextZS%=cvi(mid$(s$,r*2-1,2))
END SELECT
END FUNCTION
--------------------------------------------
怎样利用这个函数?
比如说打印1-30000的质数表
for i%=1 to 30000
i%=NextZS%(i%)
print i%;
next
83 楼
905482852 [专家分:380] 发布于 2009-06-30 10:17:00
问1:为什么不去做奥赛的题目?
答1: 1。我相信有很多题目我做不出来
2。我不相信别人能做出来的题目我永远做不出来
3。我觉得那不应该是我需要做的题目
84 楼
905482852 [专家分:380] 发布于 2009-06-30 10:17:00
Moz的作业本 够乱的 :)
难道QB真的没什么希望了吗?!
85 楼
905482852 [专家分:380] 发布于 2009-06-30 10:18:00
2 16 第十一题: 编程打印图形
5
444
33333
2222222
111111111
第十二题: 关于同构数的问题
2 20 第十三题: 今天星期几的问题
3 21 第十四题: 现在有30个人围起一个圆圈,从第一个人开始数数
{1,2,3,4...),只要数到四或是四的倍数的人,就要死。
只有最后留下来的一个人能活,请问:站在哪个位置就能
活着?
3 22 第十五题: 输入一单词(要求该单词首尾相同),输出由该单词组成的字
符三角形.如:输入单词 TREAT.则输出:
T
R R
E E
A A
T R E A T
4 30 第十六题:用QB编写下题程序
题目:用100元钱买100只鸡,公鸡每只5元,母鸡每只3元,
小鸡3只1元,问能买公鸡、母鸡和小鸡分别多少只?
86 楼
905482852 [专家分:380] 发布于 2009-06-30 10:18:00
现在不准备复制代码了,还是把一些题目的链接发过来算了,大家点击跳过去看吧.
而且希望大家看贴要看完,你才能看到更多的细节与问题
1. 输入N,输出N!(阶乘)的最后一位非0的数字
2. 计算1000!(阶乘)
3. 问题描述:现有若干根长度均为1厘米木棍,用4根可以拼成一个边长1厘米的正方形(称为单位正方形),而用7根和10根木棍则可以分别拼出两个和三个单位正方形,如下图所示:
请你编程算算用这样的方法拼出N个单位正方形需要多少根木棍?
4. 求2^1000次方
5. 题目如下:
设有一个包含N个元素的一维数组A,存放的元素为0~N-1(1< N < =10)之间的整数,
且A{i}≠A{j}(i≠j),例如当 N=6时,有A=(4,3,0,5,1,2),
对A数组进行编码,编码规则如下:A[0]的编码为0,
A{i}的编码为:在A{0},A{1},A{2},……,A{i-1}中比A{i}的值小的数的个数,
(I=1,2,3,……,N-1)所以上面数组A的编码为B=(0,0,0,3,1,2)。
现在要解决的问题是,当给出元素个数N ( N〈=9 〉和数组A的编码B后,
根据B的值求出数组A中的原数据。
例如: 输入
6 0 0 0 3 1 2
输出 4 3 0 5 1 2
6. 求1000!(阶乘)后面有几个零
7. 五人分椰子,第一个人把一堆分成五份,藏起一份,刚好剩下一个。其它人也如法炮制。第二天,五人把藏起来的椰子集中起来,又分成五份,刚好还剩下一个。请问一共有多少椰子?
8. 有5个水手,分一堆椰子, 第一个把它分成了5份,藏起来一份,剩下1个,给了猴子,其它人如法炮制,第二天,5个水手把剩下的椰子集中起来,又分成5份,结果还是剩下一个,问一共有多少椰子?
9. 仿DOS的SORT对文件排序
10. 大小九宫格(数独问题)
87 楼
905482852 [专家分:380] 发布于 2009-06-30 10:19:00
第一题: 关于质数的题目
下面是一个求大于等于某数的质数的函数
短整形的范围内应该够用的了,
一般情况下计算时间不会超过一秒钟的.
------------------------------------------
defint a-z
FUNCTION NextZS% (a%)
static s$
IF Len(s$) = 0 THEN s$=mki$(2)+mki$(3)+mki$(5)+mki$(7)
e = len(s$)\2
z=cvi(right$(s$,2))
SELECT CASE a%
CASE IS <= 2
NextZS% = 2
CASE IS >= z
DO UNTIL z >= a
DO
if e>fre(" ")\4-10 or z>32765 then
print "Error! Out of Memory!"
exit function
endif
z = z + 2
if (z mod 3) and (z mod 5) then
i = 4
q = SQR(z)
DO
k=cvi(mid$(s$,i*2-1,2))
IF z MOD k = 0 THEN EXIT DO
i = i + 1
LOOP UNTIL k > q
end if
LOOP UNTIL k > q
e = e + 1
s$=s$+mki$(z)
'PRINT e, z
LOOP
NextZS% = z
CASE IS < z
l = 1
r = e
DO
m = (r + l) / 2
b=cvi(mid$(s$,m*2-1,2))
IF a > b THEN l = m ELSE r = m
LOOP UNTIL r - l < 2
NextZS%=cvi(mid$(s$,r*2-1,2))
END SELECT
END FUNCTION
--------------------------------------------
怎样利用这个函数?
比如说打印1-30000的质数表
for i%=1 to 30000
i%=NextZS%(i%)
print i%;
next
用不了一秒钟.
如果你需要更大范围的质数表,
你可以找我要,
我可以用电子邮件把我算得的质数表给你发过去,
已经算到八位数了.
具体使用参见:关于质数(素数)我有我主张
--------------------------------------------------
第二题: 关于分解质因数的题目
这需要用到第一题的求质数的函数.
FUNCTION fenjie$ (x%)
if x%=0 then
fenjie$="0"
exit function
elseif x%<0 then
x%=-x%
k$="-1"
end if
j% = 2
DO UNTIL x% <= 1
IF x% MOD j% = 0 THEN
x% = x% / j%
IF k$=""THEN k$=LTRIM$(STR$(j%))ELSE k$=k$+"*"+LTRIM$(STR$(j%))
ELSE
j%=nextZS%(j%+1)
END IF
LOOP
fenjie$ = k$
END FUNCTION
88 楼
905482852 [专家分:380] 发布于 2009-06-30 10:21:00
第三题: 关于排列组合的题目
--------------------------------------------------------------------
我把排列和组合的简单函数都放在这里了,
最明显的题目就是:
在M$中任选K个字母
input "M$,k:",M$,k
a$=right$(M$,k)
do
b$=a$
do
print b$,
loop until nextpl$(b$)=a$
loop until nextzh$(M$,a$)=""
end
89 楼
905482852 [专家分:380] 发布于 2009-06-30 10:21:00
.
第四题: 一个用"*"号列印的倒置三角形点编写好??
*******
*****
***
*
作者:飞鸟12
发表时间:2005-10-30 16:02:00
----------------------------------------------------------------------------
FOR i = 4 TO 1 STEP -1
PRINT SPC(4 - i); STRING$(2 * i - 1, "*")
NEXT i
第五题: 编程输出菱形米字号
作者:英子 发表时间:2005-11-3 15:27:00
*
***
*****
*******
*****
***
*
编程输出以上图形,要求有循环结构语句设计!
我还是抄袭飞鸟的答案:
FOR i = -3 TO 3
PRINT SPC(abs(i)); STRING$(2*(4-abs(i))-1, "*")
NEXT i
第六题: 蛇形矩阵
作者:cixiqianjin 发表时间:2005-10-26 19:43:00
---------------------------------------------------------------------------
1 2 6
3 5 7
4 8 12
9 11 13
10 14 15
----------------------------------------------------------------------
input "h,l:",h,l
dim s(h,l)
xx=1
yy=-1
for i=1 to h*l
x=x+xx
y=y+yy
if x<1 or x>h or y<1 or y>l then swap xx,yy
if x>h then
x=h
y=y+2
endif
if y>l then
y=l
x=x+2
endif
if x<1 then x=1
if y<1 then y=1
s(x,y)=i
next
for i=1 to h
print
for j=1 to l
print using "###";s(i,j);
next j,i
90 楼
FFKK [专家分:1610] 发布于 2009-07-02 16:53:00
第二题
cls
for i= 7-3 to 1 step -1
print tab(10-i);
for j=1 to 2*i-1
print "*'';
next j
next i
end
我来回复