这编程语言真神了,不仅可以用中文,语句还特别简洁,来看效果

deer332025-02-01技术文章58

这语言确实功能强大,不仅可以用中文直接编程,而且语句还特别简洁。先看效果,再来看代码。上动图!

这动图演示了在窗口中显示用不同透明度、不同颜色和大小的圆,透明度是变量,颜色和大小是随机生成的。

接下来看代码:

// 中文编程
uses GraphABC; 
begin
  for var 透明度:=0 to 255 do
  begin
    Brush.Color := ARGB(透明度,Random(256),Random(256),Random(256));
    FillCircle(Random(Window.Width),Random(Window.Height),Random(20,60));
    sleep(100);
  end;
end.

这是全部代码,不是一部分哦。代码中,变量“透明度”使用了中文,神奇吧?

再来看另外一个。还是先看效果,上动图:

这动图演示的是,在窗口显示若干行若干列的方框,颜色随机生成,其实现代码有点长。不过,这也可以尽量展示该语言使用中文的情况。看代码:

// 中文编程实例
uses GraphABC;
const 
  方框大小  = 25;
  位移 = 1;
  方框X方向数量  = 50;
  方框Y方向数量  = 70;
  横坐标原点 = 0;
  纵坐标原点 = 0;
  时间延迟 = 10;

var 颜色矩阵: array [0..方框Y方向数量,0..方框X方向数量] of Color;

begin
  Window.Title := '动态方框';
  Window.SetSize(800,600);
  
  // Заполнение массива случайными цветами
  for var 循环变量一:=0 to 方框Y方向数量-1 do
  for var 循环变量二:=0 to 方框X方向数量-1 do
  begin
    颜色矩阵[循环变量一,循环变量二] := clRandom;
    Brush.Color := 颜色矩阵[循环变量一,循环变量二];
    FillRect(横坐标原点+循环变量一*方框大小,纵坐标原点+循环变量二*方框大小,横坐标原点+(循环变量一+1)*方框大小-位移,纵坐标原点+(循环变量二+1)*方框大小-位移);
  end;
  
  var k := 0;
  while true do
  begin
    k += 1;
    if k mod 1000 = 0 then 
    begin
      k := 0;
      Sleep(时间延迟);
    end;  
    
    var 循环变量一 := Random(1,方框Y方向数量-2);
    var 循环变量二 := Random(1,方框X方向数量-2);
    var 随机数一 := Random(-1,1);
    var 随机数二 := Random(-1,1);
    var 行变量 := 循环变量一+随机数一; 
    var 列变量 := 循环变量二+随机数二;
    Swap(颜色矩阵[循环变量一,循环变量二],颜色矩阵[行变量,列变量]);
    
    Brush.Color := 颜色矩阵[循环变量一,循环变量二];
    FillRect(横坐标原点+循环变量一*方框大小,纵坐标原点+循环变量二*方框大小,横坐标原点+(循环变量一+1)*方框大小-位移,纵坐标原点+(循环变量二+1)*方框大小-位移);
    Brush.Color := 颜色矩阵[行变量,列变量];
    FillRect(横坐标原点+行变量*方框大小,纵坐标原点+列变量*方框大小,横坐标原点+(行变量+1)*方框大小-位移,纵坐标原点+(列变量+1)*方框大小-位移);
  end;
end.

在上面的代码中,所有的变量(除了K之外)都用到了中文。当然,用中文编程不见得好,主要是用中文编程使程序变得冗长,没有用英文变量(如x0,y0表示坐标原点)来得简洁。

喜欢编程的友友们,猜猜这是什么语言?我在这里卖卖关子,如果想知道的,可以在评论区留言。[可爱][可爱][可爱]