回 帖 发 新 帖 刷新版面

主题:Pascal简单的问题解答

我刚刚开始学 Pascal~老师就布置2题~ 各位高手来帮我看看啊
1、某书的页码从1开始,小朋友算了算总共出现了202个数字1,问这本书一共有多少页?
2、求比1999大,且离1999最近的N个质数,N为输入的数。
(((最好用for循环作!!!!!!!!!!)))

回复列表 (共2个回复)

沙发

1
用奥数的方法
2
先生成质数表,再枚举

板凳

1.program page;
  var
    a,i,j,k,l:longint;  st:string;
  begin
     k:=0; a:=0;
    repeat
      a:=a+1;
      str(a,st);
      l:=length(st);
      for i:=1 to l do
        if st[i]='1' then k:=k+1;
    until k=202;
    writeln('the page: ',a);
    readln;
  end.
2.program zhishu;
  var
    a,i,n,k,l:longint;
  begin
    write('n='); readln(n);
    k:=0;  a:=1999;
    repeat
      a:=a+1;
      l:=2;
      while (a mod l<>0)and (a>l)do l:=l+1;
      if a<=l then begin
                     write(a:6);
                     k:=k+1;
                   end;
    until k=n;
    readln;
  end.




我来回复

您尚未登录,请登录后再回复。点此登录或注册