Почему возведение в степень работает не так как я думаю
using System;
namespace ConsoleApp2
{
class Program
{
static void Main(string[] args)
{
int x = 2, n = 3;
int num;
num = x;
for (int i = 0; i < n; i++)
{
num *= x;
}
Console.WriteLine(num);
}
}
}
Доброго времени суток, простите за глупый вопрос, подскажите почему результат возведения в степень 16 а не 8
Ответы (1 шт):
Автор решения: aepot
→ Ссылка
Можно так исправить
int x = 2, n = 3;
int num;
num = 1;
for (int i = 0; i < n; i++)
{
num *= x;
}
А можно так
int x = 2, n = 3;
int num;
num = x;
for (int i = 1; i < n; i++)
{
num *= x;
}
Разберите оба варианта используя отладку.
Чем эти варианты отличаются? Какой из них лучше и почему?