procedure TForm1.btn1Click(Sender: TObject);var
m, n, j : Integer;
str : String;
begin
m := StrToInt(Edit1.Text);
n := StrToInt(Edit2.Text);
str := '';
for j:=m+1 to n-1 do begin
if (j

展开全部
收起
4回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Kenneth

    19人对此回答表示赞同

    程序员可以预见和处理的问题,就不要用异常处理了吧,这个问题其实很简单,第一,如果edit1和edit2为空时就不进入循环。第二,分别在edit1和edit2的退出事件中用trystrToint()函数检查一下输入字符是否合法,就可以了,轻易的抛出异常,是不可取的,因为异常框中的提示多是洋文,一般用户根本搞不懂,只能骂娘了。
    展开
    19
    0回复
    发布于 1年前

    评论(0)

    收起评论

  • Natalie

    13人对此回答表示赞同

    程序本身没有错,你检查一下是不是你在运行的时候,在edit1和2中输入数字输入错了,那只能输入普通的数字比如10或234之类的
    另外你的str没有间隔,Continue用法也不是太适合(虽然运行没错),建议改成
    for j:=m+1 to n-1 do
    begin
    if (j mod 4)<>0 then str := str + IntToStr(j)+',';
    end;
    展开
    13
    0回复
    发布于 1年前

    评论(0)

    收起评论

  • Everly

    10人对此回答表示赞同

    iohjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjhnojl
    展开
    10
    0回复
    发布于 1年前

    评论(0)

    收起评论

  • 一言堂

    8人对此回答表示赞同

    m := StrToInt(Edit1.Text);
    n := StrToInt(Edit2.Text);
    改为下面这样,有错就提示,非常人性。
    if not trystrtoint(edit1.text, m) then
    begin
    showmessage('你输入的EDIT1不能转换为整数,请重新输入!');
    Exit;
    end;
    if not trystrtoint(edit2.text,
    展开
    8
    0回复
    发布于 1年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z