Úvod do Square Root v C ++

Dnes sa poďme dozvedieť o jednom zo známych matematických výpočtov, Square Root. A budeme používať programovanie v C ++ pri hľadaní druhej odmocniny daného čísla. Ako už bolo známe, C ++ je rozšírením programovacieho jazyka C s predstavením konceptu OOPS; Začnime s tvorbou vlastnej funkcie druhej odmocniny v C ++.

Logika odmocniny v C ++

Aby sme mali funkciu druhej odmocniny, musíme pochopiť správnu logiku toho, ako sa v skutočnosti vypočíta táto odmocnina.

V skutočnosti existuje veľa spôsobov, ako porozumieť logike, ale najskôr by sme mali začať od základnej úrovne.

  • Vieme, že druhá mocnina čísla je mocnina 2. Rovnakým spôsobom by druhá mocnina mala mocninu ½. Na tento účel môžeme použiť funkciu pow v knižnici balíkov h.

Pozrime sa, ako to môžeme reprezentovať v C ++.

#include
#include
using namespace std;
int main()
(
int num;
float result;
cout<<"Enter number: ";
cin >> num;
result = pow(num, 0.5);
cout << "Square root of given number is " << result;
return 0;
)

Výkon:

  • Inou metódou môžeme mať logiku opačným spôsobom. Štvorcom konečného výsledku by malo byť číslo, ktoré sme vybrali.

Pozrime sa, ako to môžeme reprezentovať v C ++.

#include
#include
using namespace std;
int main()
(
int num;
float result =0 ;
double sq;
cout<<"Enter number: ";
cin >> num;
sq = result*result;
while (sq < num)
(
result = result + 1;
sq = result*result;
if(num == sq)
(
cout<< result;
break;
)
)
cout<< " square root lies between "<< result-1 << " and " << result;
return 0;
)

Nebudem považovať vyššie uvedený za perfektný, pretože výstup prichádza správne, iba ak je to perfektný štvorec. To je preto, že; priamo zvyšujeme výslednú hodnotu o celé číslo 1. Takže, ak to nie je dokonalý štvorec, môžeme ukázať výstup ako je uvedené nižšie.

Rovnakú logiku môžeme dokonca napísať tak, že vypočíta presnú odmocninu s desatinnými miestami. Nájdete ho nižšie.

Hľadá sa koreň

Takže, samozrejme, existuje veľa spôsobov, ako nájsť druhú odmocninu čísla. Vyššie uvedené dve metódy sa môžu tiež použiť na získanie koreňa. Teraz sa pozrime, ako môžeme presnejšie a logickejšie zapísať logický kód druhej odmocniny.

#include
#include
using namespace std;
int main()
(
float num, i;
cout<<"Enter number: ";
cin >> num;
for(i=0.01;i*i<=num;i=i+0.01);
if(num==0)
(
cout<<"Square root of given number is 0";
)
else if(num==1)
(
cout<<"Square root of given number is 1";
)
else if( num < 0 )
(
cout<<"Enter a positive number to find square root";
)
else
(
std::cout << std::fixed;
std::cout << std::setprecision(3);
cout<<"Square root of given number is " < )
)
#include
#include
using namespace std;
int main()
(
float num, i;
cout<<"Enter number: ";
cin >> num;
for(i=0.01;i*i<=num;i=i+0.01);
if(num==0)
(
cout<<"Square root of given number is 0";
)
else if(num==1)
(
cout<<"Square root of given number is 1";
)
else if( num < 0 )
(
cout<<"Enter a positive number to find square root";
)
else
(
std::cout << std::fixed;
std::cout << std::setprecision(3);
cout<<"Square root of given number is " < )
)

Áno, kód sa zdá byť krátky a jednoduchý. Tu je logika:

  • Vyhlasujeme naše dve hodnoty, číslo, ktoré sa považuje za vstup a jedna je náš výsledok.
  • Požiadame užívateľa, aby vložil číslo, pre ktoré musíme napísať druhú odmocninu.
  • V cykle inicializujeme hodnotu i na 0, 01, pretože naše výsledky musia byť v desatinných bodoch.
  • Potom to vykonáme pre slučku, kým druhá mocnina hodnoty i nebude menšia ako hodnota zadaná používateľom.
  • A budeme zvyšovať hodnotu i iba s 0, 01, pretože potrebujeme desatinné miesta a musíme hodnotu i zvyšovať úmerne podľa vyhlásenia.
  • Ak sa pozoruje, ponechali sme na konci cyklu bodkočiarku, ktorá umožňuje spustenie slučky bez vykonania akýchkoľvek vnútorných príkazov, až kým nie je splnená podmienka.
  • Teraz môžeme urobiť, ak podmienka pre zadanú hodnotu je nula, a potom okamžite vrátiť 0.
  • Rovnakým spôsobom uveďte výstup ako 1, ak je zadaná hodnota jedna.
  • V ďalšom prípade, ak podmienka, sme dali podmienku akejkoľvek negatívnej hodnoty, ktorá je daná ako vstup užívateľa.
  • Za ostatných podmienok sa chystáme na výstup i hodnoty.
  • Tu sme použili metódu presnosti stanovenia a fixovali počet desatinných miest na 3 číslice, takže výstup, ktorý získame, bude rovnomerne získaný.

Poznámka: Vyhlásenie o balíku iomanip a zahrnutie do programu je povinné, aby ste mohli použiť túto metódu presnosti.

Výstup je pripojený nižšie:

Týmto spôsobom môžeme bez problémov vypočítať druhú odmocninu čísla. Ako cvičenie, môžete skúsiť nájsť druhú odmocninu čísla iným spôsobom?

záver

Týmto spôsobom môžeme mať v C ++ vlastnú funkciu druhej odmocniny. Môžeme dokonca nájsť druhú odmocninu pomocou euklidov, bayesovských a dokonca aj triediacich techník. A ako každý v každom prípade vie, môžeme dokonca priamo vypočítať druhú odmocninu pomocou funkcie sqrt.

Odporúčané články

Toto je príručka pre Square Root v C ++. Tu diskutujeme o zavedení a logike druhej odmocniny v C ++ spolu s nájdením koreňov. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. Vzory hviezd v c ++
  2. Funkcie reťazca C ++
  3. Polia v C ++
  4. Konštruktor v C ++
  5. Sprievodca Square Root v Jave

Kategórie: