Софтуерно Инженерство
Loading...
rado84 avatar rado84 1 Точки

Сбъркана подсказка: Advanced Loops - 3. Числа от 2 на нулева до 2 на n-та степен

В подсказката на задачата пише:

завъртете for-цикъл от 0 до n и започвайки от num = 1 на всяка стъпка умножавайте num по 2.

Само че едно число (да речем 5), умножено по 2 не дава същия резултат като 5 на степен 2. 5х2=10, а 5 на втора е 25. Затова предлагам да оправите подсказката на тази задача, защото заблуждавате студентите. Аз лично напълно пренебрегнах подсказката и я реших както аз си знам и Джъдж ми даде 100 точки веднага:

using System;

namespace FOR_PowerOfTwo
{
    class Program
    {
        static void Main(string[] args)
        {
            int power = int.Parse(Console.ReadLine());
            int i = 0;

            for (i = 0; i <= power; i++)
            { Console.WriteLine(Math.Pow(2, i)); }
        }
    }
}

Edit: ето една ясна подсказка, която аз си направих за тази задача във файла:

Подсказка: Въведеното число n е максималната степен (започвайки от 0), на която се повдига числото 2.

Тагове:
-3
Предложения и проблеми 03/07/2016 15:58:21
rado84 avatar rado84 1 Точки

В условието пише да отпечаташ 2 на N-та степен:

Даже и дадените примери ти подсказват, че става въпрос за степенуване, а не за умножение. Въвеждаш 5 и с FOR цикъл повдигаш 2 на нулева чак до 2 на 5-та - 2 на нулева е 1, 2 на първа е 2, ...... чак до 2 на 5-та, което прави 32. Тези входове и изходи плюс удебелените степенувани двойки в условието и в заглавието на задачата казват достатъчно какво се иска и няма нужда да ти го пише изрично, а именно - че трябва да степенуваш.

-1