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

仓颉语言

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

相关推荐
想逃离铁厂的老铁2 分钟前
Day43 >> 300.最长递增子序列 + 674. 最长连续递增序列+ 718. 最长重复子数组
数据结构·算法
Yzzz-F3 分钟前
P6648 [CCC 2019] Triangle: The Data Structure [st表]
算法
LateFrames17 分钟前
泰勒级数:从 “单点” 到 “理论与实践的鸿沟”
学习·算法
RisunJan19 分钟前
Linux命令-jwhois(查询域名和IP地址注册信息)
linux·tcp/ip
武帝为此31 分钟前
【RC4加密算法介绍】
网络·python·算法
宵时待雨31 分钟前
数据结构(初阶)笔记归纳4:单链表的实现
c语言·开发语言·数据结构·笔记·算法
Run_Teenage41 分钟前
认识ELF格式文件,理解库链接过程
linux·运维·服务器
Leon-zy1 小时前
【Linux】Linux下手动添加的systemctl服务使用journalctl查看无日志或排版乱
linux·运维·服务器
BLSxiaopanlaile1 小时前
关于子集和问题的几种解法
数据结构·算法·剪枝·回溯·分解
Q16849645151 小时前
红帽Linux-监控和管理Linux进程
linux·运维·服务器