Како записујете експонент у Ц?

How Do You Write An Exponent C



У језику Ц, вредност експонента се може израчунати помоћу НС () функција. Овај чланак ће научити како се користи НС () функцију за извођење операције експоненције. Такође ћемо научити како се користи оператор померања битова да бисте извршили операцију експоненције. Покушаћемо да напишемо кориснички дефинисану функцију за израчунавање експонената. Дакле, почнимо.

Синтакса

дупло НС ( дупло база, дупло екп);







Тхе НС () функција је дефинисана у матх.х заглавна датотека.



Аргументс

Ова функција има два аргумента, база и екп, за израчунавање вредности база подигнута на власт екп . Ево база и екп обоје су двоструки.



Повратне вредности

О успеху, НС () функција враћа вредност база подигнута на власт екп .





Ако је вредност од екп је 0, НС () функција враћа 1.

Ако база је негативан и екп није интегрално, НС () функција се враћа НаН (Није-А-број).



Примери

//Екампле1.ц
#инцлуде
#инцлуде

интглавни()
{

интрезултат;
резултат= (инт) НС (3,5);
принтф (' нпов (3,5) => %д ',резултат);
принтф (' нпов (3, -5) => %лф ', НС (3, -5));
принтф (' нпов (-3, -5) => %лф ', НС (-3, -5));
принтф (' нпов (3,5.1) => %лф ', НС (3,5.1));
принтф (' нпов (-3,5.1) => %лф ', НС (-3,5.1));
принтф (' нпов (-3, -5.1) => %лф н', НС (-3, -5.1));

повратак 0;
}

У Примеру 1.ц видели смо излаз датотеке НС () функција. Овде користимо -лм параметар командне линије за повезивање у математичкој библиотеци. Од редова 10 до 13 имамо излаз према очекивањима. За редове 14 и 15 имамо -нан (Није број) јер други аргумент није интегрални.

Експонент помоћу помака бита

Ако желимо да израчунамо експонент на степен 2, онда то можемо учинити помоћу помака битова.

Померање улево за м еквивалентно је првом члану, а 2 степену м.

н<< m = н*пов (2, м)

Десни помак за м еквивалентан је дељењу првог члана и 2 степену м.

н >> м = н/пов (2, м)

Ради се само ако је м позитивно.

//Екампле2.ц
#инцлуде

интглавни()
{
принтф (' н1<%d',1<<3);
принтф (' н5<%d',5<<3);
принтф (' н-5<%d', -53 => %д', 40 >> 3);
принтф ('
н40>>3 => %д', 40 >> 3);
принтф ('
н-40>>3 => %д н', -40 >> 3);

ретурн 0;
}

У Примеру 2.ц смо видели како се оператор помака бита може користити за експонент степена 2. Веома је корисно смањити сложеност кода.

Експонент помоћу функције коју дефинише корисник

Можемо написати кориснички дефинисану функцију за израчунавање експонената. У Примеру3.ц, написаћемо кориснички дефинисану функцију експонент (), који узима два аргумента заснована и екп типа флоат ант интегер.

//Екампле3.ц
#инцлуде

пловакекспонент(пловакбаза, инт екп )
{
пловакрезултат=1.0;
пловаки;
ако( екп < 0)
{
екп = -1 * екп ;
за(и=1;и<= екп ;и++)
резултат=резултат*база;

резултат= 1.0/резултат;
}
елсе
{
за(и=1;и%ф', експонент (3,0));
принтф ('
некпонент(3, -5) => %ф', експонент (3, -5));
принтф ('
некпонент(-3, -5) => %ф', експонент (-3, -5));

ретурн 0;
}

Пример3.ц видели смо излаз кориснички дефинисане функције експонент () . Ова функција ради када је експонент интегрални. За прави експонент морамо користити НС () функција.

Закључак

У овом чланку смо видели коришћење НС () функција и Бит схифт оператор како се експонент може израчунати у језику Ц. Такође смо научили како да напишемо сопствену функцију за израчунавање експонената. Сада можемо без икакве сумње користити ове технике у нашем Ц програму.