pascal 编译问题我是初学者 这道题怎么做,
题目名称回文数pprime提交程序名pprime输入文件名pprime.in输出文件名pprime.out空间限制50MB时间限制1s各题测试点数10各测试点分值10【题...
题目名称 回文数 pprime
提交程序名 pprime
输入文件名 pprime.in
输出文件名 pprime.out
空间限制 50MB
时间限制 1s
各题测试点数 10
各测试点分值 10
【题目描述】
输入一串字符,字符个数不超过100,且以“.”结束。 判断它们是否构成回文。
所谓回文指从左到右和从右到左读一串字符的值是一样的,如12321,ABCBA,AA等。
【输入格式】
输入只有一行,不超过100个字符的字符串,以“.”结束。
【输出格式】
输出只有一行。
【输入样例】pprime.in
383.
【输出样例】pprime.out
Yes.
用数组作吧其他我看不东 展开
提交程序名 pprime
输入文件名 pprime.in
输出文件名 pprime.out
空间限制 50MB
时间限制 1s
各题测试点数 10
各测试点分值 10
【题目描述】
输入一串字符,字符个数不超过100,且以“.”结束。 判断它们是否构成回文。
所谓回文指从左到右和从右到左读一串字符的值是一样的,如12321,ABCBA,AA等。
【输入格式】
输入只有一行,不超过100个字符的字符串,以“.”结束。
【输出格式】
输出只有一行。
【输入样例】pprime.in
383.
【输出样例】pprime.out
Yes.
用数组作吧其他我看不东 展开
3个回答
展开全部
var
i:integer;
tf:boolean;
s:string;
begin
tf:=true;
readln(s);
for i:=1 to length(s) div 2 do if s[i]<>s[length(s)-i] then tf:=false;
if tf then writeln('Yes.') else writeln('No.');
end.
i:integer;
tf:boolean;
s:string;
begin
tf:=true;
readln(s);
for i:=1 to length(s) div 2 do if s[i]<>s[length(s)-i] then tf:=false;
if tf then writeln('Yes.') else writeln('No.');
end.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
program exp;
var
st:string;
i,j:longint;
flag:boolean;
begin
readln(st);
i:=1; j:=length(st)-1;
flag:=true;
while (i<=j)and(flag) do
begin
if st[i]<>st[j] then flag:=false
else
begin
inc(i);
dec(j);
end;
end;
if flag then writeln('Yes.')
else writeln('No.');
end.
{输出自己看一下啊}
var
st:string;
i,j:longint;
flag:boolean;
begin
readln(st);
i:=1; j:=length(st)-1;
flag:=true;
while (i<=j)and(flag) do
begin
if st[i]<>st[j] then flag:=false
else
begin
inc(i);
dec(j);
end;
end;
if flag then writeln('Yes.')
else writeln('No.');
end.
{输出自己看一下啊}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接用字符串做比较简单
var s,s1,s2:string;
i,le,t:longint;
begin
readln(s);
le:=length(s);
if odd(le) then t:=le div 2+1
else t:=le div 2;
s1:=copy(s,1,t);
for i:=le downto t do
s2:=s2+s[i];
if s1=s2 then writeln('YES') else writeln('NO');
end.
var s,s1,s2:string;
i,le,t:longint;
begin
readln(s);
le:=length(s);
if odd(le) then t:=le div 2+1
else t:=le div 2;
s1:=copy(s,1,t);
for i:=le downto t do
s2:=s2+s[i];
if s1=s2 then writeln('YES') else writeln('NO');
end.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询