您好我有一项任务我不知道它是如何运作的。
我必须在pascal中创建一个用来编写单词的程序,然后程序找到单词中的中间字母并将其显示在屏幕上。 例如:你有“狗”这个词,程序会在屏幕上显示字母o,如果有4个字母如“树”那么程序会转到mid和+ 1,所以它带来了我们的字母“e” 。 据我所知,我需要使用round(x)和Length(x)函数,但我不知道如何正确使用它们以及如何定义VAR?
uses crt;
var
x,x1: string;
z,y: real;
y1: integer;
BEGIN
readln(x);
z:=length(x);
y:= z / 2;
y1:= round(y) +1;
writeln;
x1:=copy(x, y1,1);
writeln(x1);
readkey;
END.
答案 0 :(得分:1)
使用整数来索引字符串,而不是real
s。
var
Len, Mid: Integer;
TestString: string;
CenterChar: Char;
begin
TestString := 'tree';
Len := Length(TestString);
Mid := Len div 2;
// Your choice here
if not Odd(Len) then
Inc(Mid);
// or you can use this instead
{
if (Len mod 2 = 0) then
Inc(Mid);
}
CenterChar := TestString[Mid]; // Access string by index. No copy needed
WriteLn(CenterChar);
end;