Проблем със задача 06. The Most Powerful Word от изпита 6/7 Юли 2019
Проблем с кода на задача 06. The Most Powerful Word от изпита на 6/7 Юли 2019
Задача 6. Най-силната дума
За Лора думите притежават голяма сила. Тя те моли да измислиш алгоритъм, с който да откриеш коя е "най-силната" дума. До получаване на команда "End of words" ще се четат от конзолата думи. За да се открие силата на всяка една, трябва да се намери сборът от ASCII стойностите на символите, от които се състои думата. Ако започва с гласна буква - 'a', 'e', 'i', 'o', 'u', 'y' (или техните еквивалентни главни букви), полученият сбор трябва да се умножи по дължината на думата, в противен случай, да се раздели на дължината и да се закръгли до най-близкото цяло число надолу.
Вход
До получаване на команда "End of words" се чете по един ред от конзолата:
- дума – текст
Изход
След приключване на програмата се печата на един ред думата с "най-голяма сила":
- "The most powerful word is {думата с най-голяма сила} - {силата на думата}"
В Judge ми дава 60/100 и не мога да си хвана грешката, защото примерните входове са ок и вървят във Visual studio. Моля някой да помогне като ми каже къде е грешката в моя код, не искам готово решение.
Ето го и моя код :
using System;
namespace TheMostPowerfulWord
{
class Program
{
static void Main(string[] args)
{
double sum = 0;
double maxSum = double.MinValue;
string mostPowerful = "";
while (true)
{
string word = Console.ReadLine();
if (word == "End of words")
{
break;
}
sum = 0;
for (int i = 0; i < word.Length; i++)
{
sum += word[i];
}
if (word[0] == 'a' || word[0] == 'e' || word[0] == 'i' || word[0] == '0' || word[0] == 'u' || word[0] == 'y' || word[0] == 'A' || word[0] == 'E' || word[0] == 'I' || word[0] == 'O' || word[0] == 'U' || word[0] == 'Y')
{
sum = sum * word.Length;
}
else
{
sum = Math.Floor(sum / word.Length);
}
if (sum > maxSum)
{
maxSum = sum;
mostPowerful = word;
}
}
Console.WriteLine($"The most powerful word is {mostPowerful} - {maxSum}");
}
}
}
Здравей,
Много благодаря за бързия отговор! Изпита ми за C# Basics е на 21/22 Ноември и гледам да изреша всичко налично, за да съм максимално подготвен. Засега има светлина в тунела (поне относно логиката) :) Имам да поизчистя дребни детайли и смятам, че ще съм готов. Благодарности още веднъж. Хубава вечер!