lazarus 跨平台free pascal语言ide工具
http://www.fpccn.com/ 社区
下载ftp://freepascal.dfmk.hu/pub/lazarus/releases
https://sourceforge.net/projects/lazarus/files/
2021-2-22发布的2.0.12稳定版,2021-7-8发布的2.2rc1版本
小视频看到一个问题:一个外卖订单备注说一个直角边长11,另外2边整数,求外卖小哥解答,外卖小哥答复:我要是能解决这问题我就不至于送外卖了
为了鼓励家里小宝好好学习,这里把这个问题用一个穷举法简单解决一下,展示一下科学的魅力:
var
a, b, c: integer;
d: real;
begin
try
a := StrToInt(Edit1.Text);
if a < 1 then
raise EConvertError.Create('');
for b := 1 to 200 do
begin
d := sqrt(a * a + b * b);
c := trunc(d);
if (c * c) = (a * a + b * b) then
begin
EventLog1.Warning(IntToStr(a) + '*' + IntToStr(a) + '+' + IntToStr(b) + '*' +
IntToStr(b) + '=' + IntToStr(c) + '*' + IntToStr(c));
ShowMessage(IntToStr(a) + '*' + IntToStr(a) + '+' + IntToStr(b) + '*' + IntToStr(b) +
'=' + IntToStr(c) + '*' + IntToStr(c));
break;
end;
end;
except
on EConvertError do
begin
ShowMessage('请输入一个正整数!');
Edit1.Text := '';
Edit1.SetFocus;
end;
end;
end;
Edit1.Text 是可以输入一个边长比如11,EventLog1.Warning是输出到日志,很有意思的结果
3*3+4*4=5*5
5*5+12*12=13*13
7*7+24*24=25*25
11*11+60*60=61*61
13*13+84*84=85*85
EventLog1是输出到日志的控件,在system控件组里,在窗体的create里启动一下即可
EventLog1.AppendContent:=true;
EventLog1.LogType := ltFile;
EventLog1.FileName := 'sqrt.log';
EventLog1.Active := True;
------------------------------
顺手记一下deepinlinux下安装了新lazarus的2个自定义:
lazarus默认ide界面是分体式,为了改为一体式,打开主界面 包 》安装包 》anchordocking和Sparta_DockedFormEditor
选中然后点选保存并重新编译IDE重启ide即可,默认缺少工程查看器,打开工程-》工程查看器,会跳出来一个可拖动的界面,鼠标点击很细的那个标题行,拖动到代码区坐上角,会自动停靠
安装完成工程文件默认图标没启用lazarus,我们就手动更新下
找到/usr/share/mime/packages/lazarus.xml文件,在lpi部分增加
更新系统文件类型启用新图标即可 sudo update-mime-database -V /usr/share/mime
所用的图标文件默认是/usr/share/icons/deepin/apps/48/lazarus.svg
如果自己新建了ukui-icon-theme图标文件夹就更新一下缓存放文件管理器能找到
sudo gtk-update-icon-cache /usr/share/icons/ukui-icon-theme/