Você está aqui: C++ ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o seno de um número ou ângulo em C++ usando a função sin()

Quantidade de visualizações: 3106 vezes
Em geral, quando falamos de seno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função seno disponível nas linguagens de programação para calcular o seno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria.

No entanto, é sempre importante entender o que é a função seno. Veja a seguinte imagem:



Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles.

Assim, o seno é a razão entre o cateto oposto (oposto ao ângulo theta) e a hipotenusa, ou seja, o cateto oposto dividido pela hipotenusa. Veja a fórmula:

\[\text{Seno} = \frac{\text{Cateto oposto}}{\text{Hipotenusa}} \]

Então, se dividirmos 20 por 36.056 (na figura eu arredondei) nós teremos 0.5547, que é a razão entre o cateto oposto e a hipotenusa (em radianos).

Agora, experimente calcular o arco-cosseno de 0.5547. O resultado será 0.9828 (em radianos). Convertendo 0.9828 radianos para graus, nós obtemos 56.31º, que é exatamente o ângulo em graus entre o cateto oposto e a hipotenusa na figura acima.

Pronto! Agora que já sabemos o que é seno na trigonometria, vamos entender mais sobre a função sin() da linguagem C++. Esta função, disponível no header math.h, recebe um valor numérico e retorna um valor, também numérico) entre -1 até 1 (ambos inclusos). Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <iostream>
#include <math.h>
#include <cstdlib>
 
using namespace std;
 
int main(int argc, char *argv[]){
  cout << "Seno de 0 = " << sin(0) << "\n";
  cout << "Seno de 0 = " << sin(1) << "\n";
  cout << "Seno de 0 = " << sin(2) << "\n\n"; 
 
  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}

Ao executar este código C++ nós teremos o seguinte resultado:

Seno de 0 = 0
Seno de 0 = 0.841471
Seno de 0 = 0.909297

Note que calculamos os senos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função seno mostrada abaixo:



Link para compartilhar na Internet ou com seus amigos:

C++ ::: Dicas & Truques ::: Strings e Caracteres

Como acessar os caracteres individuais de uma string em C++ usando a função at()

Quantidade de visualizações: 7252 vezes
Nesta dica mostrarei como podemos usar a função at() para percorrer os caracteres individuais de uma palavra, frase ou texto em C++.

Esta função recebe o índice do caractere que queremos acessar e retorna o caractere correspondente. Note que o índice começa em 0.

Veja o código C++ completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <iostream>
#include <string>

using namespace std;

// função principal do programa
int main(int argc, char *argv[]){
  // vamos criar uma nova string
  string palavra("PYTHON");
    
  // vamos percorrer os caracteres um de cada vez  
  for(int i = 0; i < palavra.size(); i++){
    cout << palavra.at(i) << "\n";              
  }
  
  cout << "\n\n";
  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}

Ao executar este código C++ nós teremos o seguinte resultado:

P
Y
T
H
O
N


C++ ::: Dicas & Truques ::: Strings e Caracteres

Como embaralhar os caracteres de uma string em C++ usando a função random_shuffle()

Quantidade de visualizações: 12839 vezes
Em algumas situações, tais como o desenvolvimento de um gerador de senhas aleatórias, pode ser necessário embaralharmos as letras de uma palavra. Em C++ isso pode ser feito por meio do uso da função random_shuffle() da STL (Standard Template Library). Não se esqueça de efetuar uma chamada a srand() antes do código que embaralha os caracteres da string.

Veja o código C++ completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <string>
#include <iostream>
#include <algorithm>
#include <time.h>

using namespace std;

int main(int argc, char *argv[]){
  // vamos iniciar o gerador de números
  // aleatórios
  srand(time(NULL));

  // vamos criar uma string
  string palavra = "JAVASCRIPT";
  cout << "Palavra original: " << palavra << endl;
  
  // vamos embaralhar as palavras da string
  random_shuffle(palavra.begin(), palavra.end());

  // exibe o resultado
  cout << "Palavra com caracteres embaralhados: " << palavra << "\n\n";

  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}

Ao executar este código C++ nós teremos o seguinte resultado:

Palavra original: JAVASCRIPT
Palavra com caracteres embaralhados: RPSAITCVAJ


C++ ::: Dicas & Truques ::: Strings e Caracteres

Como acessar os caracteres de uma string individualmente em C++ usando o operador []

Quantidade de visualizações: 7496 vezes
Em várias situações nós precisamos retornar os caracteres de uma string individualmente, um de cada vez. Para isso nós podemos acessá-los using o operador [] e o índice desejado. Lembre-se de que, em C++, os índices começam sempre em 0.

Veja o código C++ completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <iostream>
#include <string>

using namespace std;
 
// função principal do programa 
int main(int argc, char *argv[]){
  // vamos criar uma nova string
  string palavra("FACULDADE");
   
  // agora vamos percorrer os caracteres individualmente  
  for(int i = 0; i < palavra.size(); i++){
    cout << palavra[i] << "\n";             
  }
   
  cout << "\n" << endl;
  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}

Ao executar este código C++ nós teremos o seguinte resultado:

F
A
C
U
L
D
A
D
E


Desafios, Exercícios e Algoritmos Resolvidos de C++

Veja mais Dicas e truques de C++

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 60 usuários muito felizes estudando em nosso site.