当前位置:首页 > Free Pascal 典型题目解析
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
共分享92篇相关文档