Сега към задачата.
#include<iostream>
using namespace std;
int main()
Започваме писането с тези три реда, след което добавяме две променливи, чиято стойност ще се въвежда от клавиатурата. Или:
double a, n;
cin >> a >> n;
Задължително е променливите ни да са въведени с ключова дума... (или както там му се казваше) double, за да може програмата да степенува с отрицателни степени, но за това после.
След като си въведем променливите трябва да въведем още две такива, чиято стойност ще я напишем още в кода или:
int i = 0, d = 1;
Променливата "i" може и да не се пише, но с нея задачата се пише малко по-лесно.
След като сме си въвели променливите сега трябва да проверим дали "n" ни е положително или отрицателно. Това става с оператора if-else или:
if ( n > 0 )
{
...
}
else
{
...
}
Разбира се на мястото на точките ще напишем какво трябва да се случва когато едно то двете условия е изпълнено. Първо с if:
Трябва да добавим цикъл, който да отмерва стойноста на n спрямо нула и докато тя е по-голяма числото a да се умножава по себе си. Тук ще ни послужат "i" и "d".
while ( n > i)
{
d = d * a;
i++;
}
След като цикълът е приключил, просто след него напишете:
cout << d;
И програмата ще ви изведе степенуваното число.
Сега обаче трябва да направим така, че да може да се степенува и с отрицателна степен. Това е почти същото.
След else трябва просто да обърнем стойността на n от отрицателна в положителна, да го умножим по -1, след това просто трябва да повторим същия цикъл и накрая да разделим едно на степенуваното число или:
else
{
n = n * (-1);
while ( n > i)
{
d = d * a;
i++;
}
cout << 1 / d;
}
Та това беше обяснението на програмата. Пълният й вид е ето това:
#include<iostream>
using namespace std;
int main()
{
double a, n, i = 0, d = 1;
cin >> a >> n;
if ( n > 0 )
{
while ( n > i)
{
d = d * a;
i++;
}
cout << d;
}
else
{
n = n * (-1);
while ( n > i)
{
d = d * a;
i++;
}
cout << 1 / d;
}
return 0;
}