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

仓颉语言

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

相关推荐
JieE2127 小时前
LeetCode 56. 合并区间|超清晰 JS 图解思路,面试高频区间题
javascript·算法·面试
Jack2015 小时前
HarmonyOS开发中错误处理策略:网络异常统一处理
算法
小小杨树17 小时前
读懂色彩:拍照调色不再难
算法·计算机视觉·配色
A小辣椒18 小时前
TShark:Wireshark CLI 功能
linux
A小辣椒1 天前
TShark:基础知识
linux
AlfredZhao1 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
JieE2121 天前
LeetCode 226. 翻转二叉树|JS 递归超详细拆解,二叉树入门经典题
javascript·算法
JieE2121 天前
LeetCode 104. 二叉树的最大深度|递归思路超详细拆解
javascript·算法
vivo互联网技术2 天前
CVPR 2026 | 全新强化学习框架 BeautyGRPO:重塑真实人像
算法·大模型·cvpr·影像