Merhaba arkadaşlar, bu yazımızda girilen 2 sayı (biri taban biri kuvvet olmak üzere) hesaplanması için gereken program kodlarını paylaşacağım. Örneğin, 2 ve 3 sayıları girildiğinde sonuç 2 üzeri 3 olacak yani 8 olacaktır. İlk olarak temel mantığı anlamamız için örnek kod;

#include<iostream>

using namespace std;
 
int main()
{
	int b, p, i, pow = 1;
	cout << "Taban ve kuvvetini giriniz: "; 
	cin >> b >> p;
	for(i=p;i>0;i--)
	{
		pow=pow*b;
	}
	cout << "Sonuc : " << pow;
	return 0;
}

Tabii ki işler bu kadar basit değil. Kullanıcıdan alınan her sonuç, beraberinde bir takım sorunlar getirebilir. Örneğin, kullanıcı kuvvet değeri için 0 girebilir. Aslında toplamda 5 ihtimal var. Bunlar;

  • Kuvvetin pozitif olması (+)
  • Kuvvetin negatif olması (-)
  • Tabanın pozitif olması (+)
  • Tabanın negatif olması (-)
  • Kuvvetin 0 (sıfır) olması

Tüm bu ihtimalleri bir programda toplamak istersek, şu kodu kullanabiliriz;

#include<iostream>

using namespace std;
 
int main()
{
	float b, p, i, pow = 1;
	cout << "Tabani ve kuvveti giriniz : ";
	cin >> b >> p;
	if(p>0)
	{
		for(i=p;i>0;i--)
		{
			pow=pow*b;
		}
	}
	else if(p<0)
	{
		p=p * -1;
		
		for(i=p;i>0;i--)
		{
			pow=pow*b;
		}
		
		pow=1/pow;
	}
	else if(p==0)
	{
		pow=1;
	}
	cout<<"Sonuc: "<<pow;
	return 0;
}