gpt4 book ai didi

c# - 百分比计算不正确

转载 作者:行者123 更新时间:2023-11-30 19:23:46 26 4
gpt4 key购买 nike

我有一道数学题需要为即将到来的 C# 基础考试解决。下面的代码是我到目前为止所完成的。让我解释一下代码:

int capacity 是足球场的容量。 [1..10000]

int fans 是参加的粉丝数 [1..10000]

for 循环中的 var sector 是每个风扇在 4 个扇区 - A、B、V、G 中的分配

我需要计算每个扇区的球迷百分比以及所有球迷相对于体育场容量的百分比。

结果返回0.00是什么原因?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FootballTournament
{
class FootballTournament
{
static void Main(string[] args)
{
int capacity = int.Parse(Console.ReadLine());
int fans = int.Parse(Console.ReadLine());

int sector_A = 0;
int sector_B = 0;
int sector_V = 0;
int sector_G = 0;

for (int i = 0; i < fans; i++)
{
var sector = Console.ReadLine();
if(sector == "A")
{
sector_A++;
}
else if (sector == "B")
{
sector_B++;
}
else if (sector == "V")
{
sector_V++;
}
else if (sector == "G")
{
sector_G++;
}
}

Console.WriteLine("{0:f2}%", (sector_A / fans * 100));
Console.WriteLine("{0:f2}%", (sector_B / fans * 100));
Console.WriteLine("{0:f2}%", (sector_V / fans * 100));
Console.WriteLine("{0:f2}%", (sector_G / fans * 100));
Console.WriteLine("{0:f2}%", (fans / capacity * 100));
}
}
}

输入/输出示例:

Input: 
76
10
A
V
V
V
G
B
A
V
B
B

Output:
20.00%
30.00%
40.00%
10.00%
13.16%

最佳答案

你正在做整数数学。结果也将是一个整数。

将您的类型更改为 double,或将它们转换到您的计算中。

例子

53/631 == 0 //integer
53/631d == 0,0839936608557845 //floating point

关于c# - 百分比计算不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45104981/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com