讨论 / 菜鸟求助 ,大牛 们 帮下。
rose、 2011-07-21 01:55:00
点我顶贴 收藏 删除
我 测试 的 时候 不给 我 正确 的 输出 , 也 不 给 我 我 自己 的 输出。

只 得 了 40 分 。

求助 一下 。

var n,i,j,tot,yyg,tot1:longint;

zf,cl1,cl2,cl3:string;

zm,yy:array[1..1000]of char;

function pd:boolean;

var i,j:longint;

begin

yyg:=0;

for i:=tot+1 to length(zf) do

begin

if (zf[i]='a') or (zf[i]='e') or (zf[i]='i') or (zf[i]='o') or (zf[i]='u') or (zf[i]='A') or (zf[i]='E') or (zf[i]='I') or (zf[i]='O') or (zf[i]='U') then

inc(yyg);

end;

if yyg=0 then exit(false) else exit(true);

end;

begin

readln(zf);

tot:=0;

cl1:=zf;

for i:=1 to length(zf) do

begin

if (ord(zf[i]) in [97..122]) or (ord(zf[i]) in [65..90]) then

begin

cl1[i]:='.';

inc(tot);

zm[tot]:=zf[i];

end;

end;

writeln(cl1);

cl2:=cl1;

tot1:=tot;

tot:=round(tot/3);

i:=1;

j:=1;

while i<=tot do

begin

while not(cl1[j]='.') do inc(j);

cl1[j]:=zm[i];

inc(i);

end;

writeln(cl1);

i:=1;

j:=tot+1;

if pd then

begin

while i<=yyg do

begin

while not(cl1[j]='.') do inc(j);

cl1[j]:=yy[i];

inc(i);

end;

cl2:=cl1;

end

else

begin

tot1:=round(tot1*2/3);

i:=1;

j:=1;

while i<=tot1 do

begin

while not(cl2[j]='.') do inc(j);

cl2[j]:=zm[i];

inc(i);

end;

end;

writeln(cl2);

end.

查看更多回复
提交回复