挑战在于根据给定的投入计算一顿饭的总成本:
餐费(不含税或小费)(双倍)
小费百分比(以整数表示)
税率(以整数表示)
注意:默认情况下,这些数据类型必须保持这种方式。我不能将他们的初始声明改为double而不是int
给出的步骤如下:
读取3个值的输入
使用tip = mealCost x (tipPercent / 100)计算小费
使用tax = mealCost x (taxPercent / 100)计算税款
通过添加mealCosttiptax计算总膳食成本。
把最后的答案四舍五入并打印出来(如“总餐费totalCost美元。”)
所以我的计划是这样的:

using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.Collections;
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.Serialization;
using System.Text.RegularExpressions;
using System.Text;
using System;

class Solution {

    // Complete the solve function below.
    static void solve(double meal_cost, int tip_percent, int tax_percent) {
        double tip = meal_cost * (tip_percent / 100.0);
        double tax = meal_cost * (tax_percent / 100.0);

        double totalCost = (meal_cost + tip + tax);

        Console.WriteLine("The total meal cost is {0} dollars", Convert.ToInt32(totalCost));
    }

    static void Main(string[] args) {
        double meal_cost = Convert.ToDouble(Console.ReadLine());

        int tip_percent = Convert.ToInt32(Console.ReadLine());

        int tax_percent = Convert.ToInt32(Console.ReadLine());

        solve(meal_cost, tip_percent, tax_percent);
    }
}

然而,尽管我的输出是相同的(甚至在舍入之前),hackerrank仍然将我的解决方案标识为它的测试用例上的“失败”,而不是我的自定义测试用例。对此有什么解释吗?
注:HackerRank提供的公式实际上是(餐费)x税百分比/100我刚刚写下了实施方案

最佳答案

你犯了个小错误。你本该使用dollars的时候却使用了dollars.
对代码进行更改后,它在https://www.hackerrank.com/challenges/30-operators/problem处传递。

09-07 00:03