已知三角形三边长求面积用仓颉语言作答

仓颉语言

https://cangjie-lang.cn/

linux和win和mac均有sdk,在本机deepinlinuxv23下载到本地解压缩到目录下设置环境变量

复制代码
source envsetup.sh

比java方便太多了,java每次都是要自己搞很久,当然,打开看一下envsertup.sh,和我们自己设置java环境变量一样功能,可以把cangjie目录像java那样加到用户目录,下次在仁义路径不用source也能用了,直接到终端查看版本

复制代码
cjc -v

另外为了方便代码编程下载vscode插件离线包,安装后右键插件设置本地sdk路径,即可便捷使用

可以创建仓颉工程方便管理,创建后直接ide代码编辑上方运行按钮就可以编译代码启动输出后的可执行文件,也可到可执行文件所在目录直接执行可执行文件

复制代码
package cj1
import std.math.*
import std.format.Formatter
import std.convert.*

main( args:Array<String>): Int64 {    
    println("hello world,welcome to cangjie1 {}"+args.size.toString())
    println("usage: main a b c [area*area=(L/2)*(L/2-a)*(L/2-a)*(L/2-a)]")
    if(args.size > 2){
        println("you input args: "+args[0] + " " + args[1] + " " + args[2])
        let a:Int64 =Int64.parse( args[0]);
        let b:Int64 =Int64.parse( args[1])
        let c:Int64 =Int64.parse( args[2])
        let l=(a+b+c)/2
        let area:Float64 =sqrt( Float64(l*(l-a)*(l-b)*(l-c)))
        println(  "s:  ${area.format(".4g")}   ${area.format("g")}")
    }
    return 0
}

代码很简单,接收一个三角形3边长,算出来它的面积,结果也许看起来很简单,但是考试可能用到,能很快求出某边上的高了,比如一个湖一个大坑?有点实用价值。

复制代码
cjc ./main.cj -o main

如果有测试没用到函数,编译发现有警告,cjpm.toml文件中可以配置优化选项,如:

复制代码
compile-option = "-Woff unused"

再次编译清爽了,直接 运行算面积吧

复制代码
main 5 12 13

能方便得到面积是30

相关推荐
萧行之25 分钟前
Ubuntu Node.js 版本管理工具 n 完整安装与使用教程
linux·前端
Ares-Wang8 小时前
Linux》》systemd 、service、systemctl daemon-reload、systemctl restart docker
linux·运维·docker
汀、人工智能8 小时前
[特殊字符] 第40课:二叉树最大深度
数据结构·算法·数据库架构·图论·bfs·二叉树最大深度
沉鱼.448 小时前
第十二届题目
java·前端·算法
大熊背9 小时前
ISP Pipeline中Lv实现方式探究之三--lv计算定点实现
数据结构·算法·自动曝光·lv·isppipeline
西岸行者10 小时前
BF信号是如何多路合一的
算法
阿拉斯攀登10 小时前
从入门到实战:CMake 与 Android JNI/NDK 开发全解析
android·linux·c++·yolo·cmake
大熊背10 小时前
ISP Pipeline中Lv实现方式探究之一
算法·自动白平衡·自动曝光
罗西的思考11 小时前
【OpenClaw】通过 Nanobot 源码学习架构---(5)Context
人工智能·算法·机器学习
Liudef0611 小时前
后量子密码学(PQC)深度解析:算法原理、标准进展与软件开发行业的影响
算法·密码学·量子计算