懂Pascal的来

来源:百度知道 编辑:UC知道 时间:2024/07/05 07:23:35
我用pascal编了一道程序,可是pascal却说 Error 42: Error in expression. 意思是表达式错误。能办我改一下这个错误吗?
程序如下:
var s,d,e:string;
x,y,z,w:integer;
begin
read(s);
writeln('Please press any key to choose:');
writeln('1.Insert String;');
writeln('2.Delete string;');
writeln('3.First press "1" then press "2".');
write('You press:');
read(y);
write('Press before the word to do (write the word number):');
read(x);
if y=1 then
begin
write('What words do you want to insert?');
read(d);
e:=insert(d,s,x-1);
writeln(e);
end;
if y=2 then
begin
write('What words do you want to delete(number)?');
read(z);
write('How many do you want to delete?');
read(w);
e:=delete(s,z,w);
writeln(e);
end;
if y=3 then
begin
write(

insert和delete是方法不是函数,所以他们都不会有返回值,
e:=delete(s,z,w);和e:=insert(d,e,x-1);一类的语句都不能编译通过.
insert和delete的语法如下:
insert(要插入的字符串,目标字符串,目标位置);
如:
a:='aaa' ;
b:='bbb' ;
insert(a,b,2);
write(b);
输出结果应该是
baaabb
也就是在b的第二位开始插入'aaa'

delete(字符串,起始位置,删除数量);
如:
a:='abcdefg';
delete(a,2,2);
write(a);
应该输出:
adefg
也就是删除了a串中从第2位开始的两个字符