Programming basics май 2016 - Bonus Score - грешка в точките..
Това е моят код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication14
{
class Program
{
static void Main()
{
int number = int.Parse(Console.ReadLine());
double bonus = 0;
if (number <= 100)
{
bonus = 5;
}
else if (number > 100)
{
bonus = (20 / 100) * number;
}
else if (number > 1000)
{
bonus = (10 / 100 * number);
}
Console.WriteLine(bonus);
}
}
}
Когато напиша число по-малко от 100 ми дава бонус точки 5 (нормално), но ако e число над 100 ми дава бонус 0.. В джъджа дава 0 от 100 верни. Изключително нов съм в програмирането и мн неща не са ми ясни.. Къде бъркам?
Направих ги на 20.0 и 10.0, като пусна програмата на 136 число ми дава 27.2 точки, но в джъджа пак гърмя...
Добави във втория ти if : if (score > 100 && score <= 1000), тъй като трябва да се прави проверка за това дали точките са по-големи от 100, но и по-малки или равни на 1000, в противен случай ако числото е по-голямо от 1000, пак ще се изпълни този if и ще бъде грешно. Също така пропускаш и другото условие от задачата за допълнителни бонус точки:
if (score % 2 == 0)
{
bonusScore += 1;
}
else if (score % 5 == 0)
{
bonusScore += 2;
}