You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于矩形长和宽的点数计算周长总点数(C#实现)

没问题,这个需求很容易实现!咱们先理清计算逻辑,再把核心代码放到你的WinForm项目里。

计算逻辑说明

你提到长5个点、宽4个点时总点数是14,这个结果的由来是:

  • 直接按常规周长公式2*(长+宽)会得到18,但四个角的点被上下、左右两边重复计算了一次(每个角点算两次),所以要减去重复的4个点。
  • 最终公式:总点数 = 2(长 + 宽) - 4*
    代入你的例子:2*(5+4)-4 = 18-4=14,完全符合预期。

WinForm核心代码实现

假设你的WinForm里:

  • 输入长的文本框叫txtLength
  • 输入宽的文本框叫txtWidth
  • 显示结果的文本框叫txtResult
  • 触发计算的按钮叫btnCalculate

在按钮的Click事件里添加以下代码:

private void btnCalculate_Click(object sender, EventArgs e)
{
    // 验证输入是否为有效整数,避免非数字输入导致报错
    if (int.TryParse(txtLength.Text, out int length) && int.TryParse(txtWidth.Text, out int width))
    {
        // 确保长和宽至少为2(至少需要两个点才能构成一条边)
        if (length >= 2 && width >= 2)
        {
            // 核心计算逻辑
            int totalPerimeterPoints = 2 * (length + width) - 4;
            txtResult.Text = totalPerimeterPoints.ToString();
        }
        else
        {
            txtResult.Text = "提示:长和宽必须至少为2个点";
        }
    }
    else
    {
        txtResult.Text = "请输入有效的整数数值";
    }
}

额外说明

  • 输入验证是为了避免用户输入非数字内容导致程序崩溃,这是WinForm项目里的常规容错处理。
  • 长和宽的最小值判断是因为如果小于2的话,没法形成有效的矩形边(比如长为1的话,只有一个点,构不成边)。

内容的提问来源于stack exchange,提问作者Tempest725

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 20:53:08