Como fazer calculos de raiz quadrada com linguagem c

Como fazer calculos de raiz quadrada com linguagem c

conjunto de instruções para realizar uma operação que refere-se a uma necessidade comum de outros usuários, investigue se já existe uma função antes de tentar implementar a sua. 7.2.1 Funções matemáticas A biblioteca math disponibiliza várias funções matemáticas, como funções trigonomé- tricas para o cálculo do cosseno, função cos, função para cálculo de logaritmo, como a função log, entre outras, contudo, apenas duas funções serão discutidas, a função para cálculo de raiz quadrada, sqrt() e a função para cálculo de potência, pow(x, y). 7.2.1.1 Função para cálculo da raiz quadrada Como já mencionado, não há um operador nativo na linguagem C que permita calcular a raiz quadrada de um número, contudo, podemos utilizar a função, sqrt(), disponibili- zada pela biblioteca math para fazer este cálculo (SCHILDT, 1996). A seguir a sintaxe da função sqrt(). 1 //Sintaxe: 2 #include <math.h> 3 double sqrt(double num); 1 Contudo nesta aula serão apresentadas apenas algumas funções que serão úteis nas aulas seguintes. 7.2. Funções presentes na linguagem C 113 Conforme pode ser visto na sintaxe, a função retorna um double, que no caso será o resultado do cálculo da raiz quadrada do número que foi passado como argumento na invocação da função. O número passado como argumento também é do tipo double, contudo, tanto o retorno, quanto o argumento podem ser do tipo float, visto que um double pode assumir valores do tipo float. Veja a seguir um exemplo em forma de exercício. 7.2.2 Exercício de Exemplo Faça um programa em C que leia um número e após a leitura, calcule e imprima a raiz quadrada deste número. 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <math.h> 4 5 void main() 6 { 7 float numero, raiz; 8 printf("Informe um numero: \n"); 9 scanf("%f", &numero); 10 11 raiz = sqrt(numero); 12 13 printf("A raiz quadrada do numero e: %f \n", raiz); 14 } Na resposta proposta para o exercício foi adicionada a biblioteca math na linha 3, sempre que precisar utilizar uma função de alguma biblioteca, será necessário adicionar o arquivo cabeçalho correspondente no início do código. Na linha 7 foram declaradas as variáveis numero, para armazenar o número lido, e raiz para armazenar o resultado do cálculo da raiz quadrada. As linhas 8 e 9 são responsáveis pela leitura do número. A linha 11 é o ponto de interesse neste exercício, veja que a variável raiz recebe a função sqrt(numero), isso, porque a função sqrt() retorna um valor e requer um argumento, desta forma, a função irá calcular a raiz quadrada do número passado como argumento e retornar à instrução que a invocou o resultado do cálculo, neste caso, a atribuição à variável raiz é que foi responsável pela invocação da função. 7.2.2.1 Função para cálculo da potência A função para cálculo da potência, pow(), requer dois argumentos conforme pode ser visto na sintaxe a seguir. O primeiro argumento é a base, ou seja, o número que deseja-se que seja calculado a sua potência, e o segundo argumento é o expoente, que é o valor no qual, o número da base será elevado (SCHILDT, 1996). Assim como na função sqrt(), a função pow() também retorna um double, no caso, o valor calculado, e também admite valores do tipo float. Veja na sequência um exercício de exemplo do uso da função pow(). 1 //Sintaxe: 2 #include <math.h> 3 double pow(double base, double exp); 114 Aula 7. Funções 7.2.3 Exercício de Exemplo Faça um programa em C que leia um número e um expoente, após a leitura, calcule e imprima a potência do número lido em relação ao expoente também lido. 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <math.h> 4 5 void main() 6 { 7 float base, expoente, potencia; 8 printf("Informe a base: \n"); 9 scanf("%f", &base); 10 printf("Informe o expoente: \n"); 11 scanf("%f", &expoente); 12 13 potencia = pow(base, expoente); 14 15 printf("A potencia do numero e: %f \n", potencia); 16 } Assim como no exemplo anterior, a biblioteca math foi incluída na linha 3. Na linha 7 foram declaradas as variáveis necessárias, base, para armazenar o número que será elevado a uma potência, expoente, que será utilizada para armazenar a potência desejada e potencia para armazenar o resultado do cálculo. Entre as linhas 8 e 11 os valores foram lidos e armazenados nas respectivas variáveis. Na linha 13 temos o uso da função pow(), veja que, o acionamento da função foi realizado pela uso da atribuição à variável potencia, e a função recebeu dois argumentos, o primeiro argumento é o valor da base e o segundo argumento é o valor do expoente. Com esses dois valores a função retornará o resultado do cálculo que será atribuído à variável potencia. Na linha 15 a função printf() se encarrega de apresentar o resultado do cálculo. 7.2.4 Funções de tratamento de texto A linguagem C não dispõe, nativamente, do tipo string, como é comum em outras linguagens, desta forma, para armazenar texto, é preciso utilizar um vetor do tipo char, como se trata de um vetor, então, algumas operações não são possíveis de forma direta, como é possível com outros tipos nativos. Duas operações em especial são as de maior uso, atribuição e comparação. A seguir serão discutidas duas funções da biblioteca string que facilitam essas tarefas. 7.2.4.1 Função para atribuição de texto 1 void main() 2 { 3 char nome[30], novoNome[30]; 4 nome = novoNome; 5 . 6 . 7 . 7.2. Funções presentes na linguagem C 115 Em linguagem C, a operação na linha 4 do código-fonte apresentado neste início de tópico não é permitida, porque como nome e novoNome são dois vetores, não há como garantir, por exemplo, que os dois vetores tenham a mesma dimensão, ou que as dimensões sejam compatíveis, então, não é possível fazer a atribuição direta, como na linha 4 do trecho de código à seguir. É necessário então, percorrer o vetor de origem e, a cada posição, atribuir o valor ao vetor de destino, contudo, várias validações devem ser previamente realizadas, como a compatibilidade de tamanho entre os vetores. Realizar essas operações requer um bom trabalho, além disso, trata-se de uma operação recorrente em programação, desta forma, é conveniente ter uma função que facilite esta operação. A biblioteca string disponibiliza a função strcpy() que faz a atribuição de um vetor do tipo char a outro vetor, também do tipo char. Além disso, faz as verificações necessárias, lançando as exceções quando for o caso. A seguir a sintaxe da função e um exemplo de uso. 1 //Sintaxe: 2 #include <string.h> 3 char *strcpy(char *str1, const char *str2); Como pode-se ver na sintaxe, a biblioteca string.h deve ser incluída no código-fonte. Outro detalhe é que a função strcpy() recebe dois parâmetros, o primeiro, str1, é o vetor que receberá os valores do segundo vetor, que no caso é o segundo argumento, str2, ambos os argumentos devem ser do tipo char (SCHILDT, 1996). Como a função recebe como argumento os dois vetores envolvidos na operação, então não há necessidade da atribuição tradicional, como pode ser visto no exemplo a seguir, na linha 11, a função é invocada com os dois argumentos necessários e ela se encarregará de fazer o restante do trabalho. 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 5 void main() 6 { 7 char nome[30], novoNome[30]; 8 printf("Informe o novo nome: \n"); 9 scanf("%s", &novoNome); 10 11 strcpy(nome, novoNome); 12 13 printf("O novo nome e: %s \n", nome); 14 } 7.2.4.2 Função para comparação de texto Comparar texto de forma direta, por exemplo, utilizando o sinal de igualdade, é outra ação indisponível na linguagem C, pois, novamente, o uso de vetores, impede isso, visto que, comparar dois vetores, implica em analisar cada posição comparando com a posição correspondente do outro vetor e novamente, é uma operação recorrente que demanda uma função para isso, desta forma, a biblioteca string disponibiliza uma função para facilitar

Como fazer calculos de raiz quadrada com linguagem c
Como fazer calculos de raiz quadrada com linguagem c
Como fazer calculos de raiz quadrada com linguagem c

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais