Free Pascal 典型题目解析

2026/1/11 23:50:45

Exit; End;

If a.len > b.len Then Begin

over := TRUE; Exit; End;

For i := a.len DownTo 1 Do Begin

If a.num[i] < b.num[i] Then Begin

over := FALSE; Exit; End;

If a.num[i] > b.num[i] Then Begin

over := TRUE; Exit; End; End;

over := FALSE; End;

Begin

Readln(s);

FillChar(target.num, SizeOf(target.num), 0); target.len := Length(s); For i := 1 To target.len Do

target.num[i] := Ord(s[target.len - i + 1]) - ⑦ ; FillChar(left.num, SizeOf(left.num), 0); left.len := 1; left.num[1] := 1; right := target; Repeat

middle := average(left, right); If over( ⑧ )

Then right := middle Else left := middle;

Until over(plustwo(left), right); For i := left.len DownTo 1 Do Write(left.num[i]); Writeln; End.

CCF NOIP2011 初赛 普及组 Pascal 13

CCF NOIP2011普及组(Pascal语言)参考答案与评分标准

一、单项选择题(共20题,每题1.5分,共计30分) 1 B 11 B 2 B 12 A 3 C 13 C 4 C 14 C 5 B 15 C 6 D 16 D 7 C 17 A 8 B 18 A 9 C 19 A 10 C 20 C 二、问题求解(共2题,每题5分,共计10分) 1.128 2.3

三、阅读程序写结果(共4题,每题8分,共计32分) 1.165

2.22366472011 3.3 4.20

四、完善程序(前11空,每空2分,后2空,每空3分,共计28分) (说明:以下各程序填空可能还有一些等价的写法,各省可请本省专家审定和上机验证,不一定上报科学委员会审查) 1.①read(b[i][j])

②m1 - m2 + 1 ③good := true ④m2

⑤haveAns := true 2.①ans.num[i + j - 1]

②ans.num[i] := ans.num[i] mod 10; ③ans.num[i] + a.num[i] + b.num[i]; ④ans.num[i] mod 2 (或ans.num[i] and 1) ⑤inc(ans.len) (或ans.len := ans.len + 1) ⑥a.len

⑧times(middle, middle), target

CCF NOIP2011 初赛 普及组 Pascal 14


Free Pascal 典型题目解析.doc 将本文的Word文档下载到电脑
搜索更多关于: Free Pascal 典型题目解析 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219