Introdução à raiz quadrada em C ++
Hoje aqui, vamos aprender sobre um dos conhecidos cálculos matemáticos, a Raiz Quadrada. E vamos usar a programação C ++ para encontrar a raiz quadrada de um determinado número. Como já se sabe, o C ++ é uma extensão da linguagem de programação C, com o conceito de OOPS sendo introduzido; vamos começar criando nossa própria função de raiz quadrada em C ++.
Lógica da raiz quadrada em C ++
Para ter nossa função de raiz quadrada, precisamos entender a lógica apropriada de como essa raiz quadrada está sendo calculada.
Na verdade, existem muitas maneiras de entender a lógica também, mas começaríamos primeiro a partir do nível básico.
- Sabemos que o quadrado de um número é uma potência de 2. Da mesma forma que a raiz quadrada, um número seria a potência de ½. Para isso, podemos usar uma função pow na biblioteca de pacotes h.
Vamos ver como podemos representar isso em 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;
)
Resultado:
- Em outro método, podemos ter lógica de maneira inversa. Assim, o quadrado do resultado final obtido deve ser o número que escolhemos.
Vamos ver como podemos representar isso em 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;
)
Não considerarei o anterior perfeito, pois a saída é adequada, apenas se for um quadrado perfeito. Isto é porque; estamos aumentando o valor do resultado diretamente por um número inteiro 1. Portanto, se não for um quadrado perfeito, podemos mostrar a saída como abaixo.
Podemos até escrever a mesma lógica de forma que também calcule a raiz quadrada exata com decimais. Encontre-o abaixo.
Encontrando Raiz
Portanto, obviamente, existem muitas maneiras de encontrar a raiz quadrada de um número. Os dois métodos acima também podem ser usados na obtenção da raiz. Agora, vamos ver como podemos escrever o código lógico da raiz quadrada de maneira mais precisa e lógica.
#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 " < )
)
Sim, o código parece curto e simples. Aqui está a lógica:
- Estamos declarando nossos dois valores, um número que é tomado como entrada e um é o nosso resultado.
- Solicitando que o usuário insira um número para o qual precisamos escrever a raiz quadrada.
- No loop for, iniciaremos o valor i para 0, 01, pois precisamos que nossos resultados estejam em pontos decimais.
- Em seguida, executaremos isso para um loop até que o valor do quadrado de i seja menor que o valor inserido pelo usuário.
- E vamos aumentar o valor de i com 0, 01 apenas, pois precisamos de pontos decimais e precisamos aumentar o valor de i proporcionalmente, conforme a declaração.
- Se observado, mantivemos um ponto-e-vírgula no final do loop for, o que faz com que o loop seja executado sem executar nenhuma instrução interna até que a condição seja satisfeita.
- Agora, podemos determinar se uma condição para o valor inserido é zero e retornar 0 instantaneamente.
- Da mesma maneira, dê a saída como 1, se o valor inserido for um.
- Na próxima condição if, fornecemos uma condição de qualquer valor negativo fornecido como entrada do usuário.
- Na condição else, vamos gerar o valor i.
- Aqui, usamos um método de precisão definido e fixamos o número de casas decimais até 3 dígitos, para que a saída obtida seja uniformemente obtida.
Nota: A declaração do pacote iomanip e a inclusão no programa são obrigatórias para usar este método de precisão definido.
A saída está anexada abaixo:
Dessa forma, podemos calcular facilmente a raiz quadrada de um número perfeitamente. Como exercício, você pode tentar encontrar a raiz quadrada de um número de qualquer outra maneira?
Conclusão
Portanto, dessa maneira, podemos ter nossa própria função de raiz quadrada em C ++. Podemos até encontrar raiz quadrada usando euclidiano, bayesiano e até através de técnicas de classificação. E como todos sabem, podemos calcular diretamente a raiz quadrada usando a função sqrt.
Artigos recomendados
Este é um guia para a raiz quadrada em C ++. Aqui discutimos a introdução e a lógica da raiz quadrada em C ++, juntamente com a localização de raiz. Você também pode consultar os seguintes artigos para saber mais -
- Padrões de estrelas em c ++
- Funções de seqüência de caracteres C ++
- Matrizes em C ++
- Construtor em C ++
- Guia de raiz quadrada em Java