Você está aqui: C++ ::: C++ para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular o produto escalar entre dois vetores usando C++ - Geometria Analítica e Álgebra Linear usando C++Quantidade de visualizações: 2934 vezes |
O produto escalar (em inglês: dot product) entre dois vetores é um número real que relaciona o comprimento desses dois vetores e o ângulo formado por eles. É importante notar que alguns autores se referem ao produto escalar como produto interno. Obtém-se o produto escalar entre dois vetores, no R2, ou três vetores, no R3, por meio da fórmula a seguir (assumindo dois vetores __$\vec{u} = (a, b)__$ e __$\vec{v} = (c, d)__$ no R2). \[\vec{u} \cdot \vec{v} = a \cdot c + b \cdot d \] Vamos agora a um exemplo prático. Veja a imagem abaixo, na qual temos dois vetores, com suas coordenadas e magnitudes (módulo, comprimento ou norma): ![]() Note que ambos os vetores possuem como origem as coordenadas (0, 0). O primeiro vetor possui as coordenadas finais (4, 10) e magnitude 11, e o segundo vetor possui as coordenadas finais (11, 6) e magnitude 13. Magnitude é o tamanho do vetor, ou seja, seu comprimento, seu módulo ou norma. Veja agora o código C++ completo que lê as coordenadas dos dois vetores e calcula e mostra o produto escalar entre eles: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <string> #include <iostream> using namespace std; int main(int argc, char *argv[]){ // coordenadas dos dois vetores float x1, y1, x2, y2; // guarda o produto escalar float produto_escalar; // vamos ler os valores x e y do primeiro vetor cout << "Informe o valor de x do primeiro vetor: "; cin >> x1; cout << "Informe o valor de y do primeiro vetor: "; cin >> y1; // vamos ler os valores x e y do primeiro vetor cout << "Informe o valor de x do segundo vetor: "; cin >> x2; cout << "Informe o valor de y do segundo vetor: "; cin >> y2; // vamos calcular o produto escalar produto_escalar = (x1 * x2) + (y1 * y2); // mostra o resultado cout << "O produto escalar é: " << produto_escalar; cout << "\n\n"; system("PAUSE"); return 0; } Ao executar este código C++ nós teremos o seguinte resultado: Coordenada x do primeiro vetor: 4 Coordenada y do primeiro vetor: 10 Coordenada x do segundo vetor: 11 Coordenada y do segundo vetor: 6 O produto escalar é: 104.0 |
![]() |
C++ ::: Dicas & Truques ::: Matemática e Estatística |
Como testar se um número é primo em C++Quantidade de visualizações: 3003 vezes |
O Número Primo é o número maior que 1 e que só pode ser dividido por 1 e por ele mesmo, ou seja, números primos não podem ser divididos por outros números, a não ser por ele mesmo e pelo número 1. Dessa forma, 2, 3, 5, 7, 11, 13, 17, etc, são todos números primos. É importante observar que 0 e 1 não são números primos, e que o número 2 é o único número primo par. Veja agora um código C++ completo que pede para o usuário informar um número inteiro positivo e mostra uma mensagem indicando se o número informado é primo ou não: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <iostream> #include <cstdlib> using namespace std; int main(int argc, char *argv[]){ int numero; bool primo = true; // vamos solicitar um número inteiro positivo cout << "Informe um número inteiro positivo: "; cin >> numero; // o número é negativo? if(numero < 0){ cout << "Número inválido.\n\n"; } // é 0 ou 1? else if((numero == 0) || (numero == 1)){ cout << "Número válido, mas não é primo.\n\n"; } // passou até aqui. Vamos testar se o número é primo else{ for (int i = 2; i <= (numero / 2); i++){ // se passar no teste, não é primo if (numero % i == 0) { primo = false; break; } } if(primo){ cout << "O número informado é primo\n\n"; } else{ cout << "O número informado não é primo\n\n"; } } system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: Informe um número inteiro positivo: 9 O número informado não é primo |
C++ ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação Orientada a Objetos em C++ - Como controlar o acesso a membros de uma classe C++ usando o modificar publicQuantidade de visualizações: 8163 vezes |
Membros de uma classe são suas funções e variáveis. A visibilidade de tais membros pode ser controlada, ou seja, algumas funções e variáveis podem ser ocultadas do mundo externo. Este é o princípio de encapsulamento da programação orientada a objetos. O modificador public define que os membros de uma classe estarão acessíveis a qualquer função fora da classe. Veja um exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <iostream> using namespace std; class Cliente{ public: char *nome; }; int main(int argc, char *argv[]) { // Cria uma instância da classe Cliente Cliente *cliente = new Cliente(); // Define o nome do cliente cliente->nome = "Osmar J. Silva"; // Obtém o nome do cliente cout << "Nome do cliente: " << cliente->nome << "\n\n"; system("PAUSE"); return EXIT_SUCCESS; } Como o atributo nome foi declarado na seção public, o código da função main possui acesso a ele sem a necessidade de métodos acessórios (get) ou mutatórios (set). Quando usamos o modificador public antes do nome de uma classe base (durante a herança), estamos definindo que os membros public e protected da classe base serão public e protected na classe derivada. O acesso padrão (sem modificador) dos membros de uma classe é private. Em uniões (union) e estruturas (structure), o acesso padrão é public. O acesso padrão de uma classe base (durante a herança) é private para classes e public para estruturas. Uniões não podem possuir classes bases. |
C++ ::: STL (Standard Template Library) ::: Vector C++ |
Como excluir todos os elementos de um vector C++ usando a função clear()Quantidade de visualizações: 17773 vezes |
Em algumas situações precisamos remover todos os elementos de um vector. Para isso podemos usar a função clear(). Esta função não requer nenhum argumento e possui retorno void. À medida que os elementos vão sendo removidos, seus destrutores são chamados (no caso de os elementos no vector serem referências e não tipos primitivos). 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 <vector> using namespace std; int main(int argc, char *argv[]){ // um vector vazio que conterá inteiros vector<int> valores; // vamos inserir três elementos valores.push_back(54); valores.push_back(13); valores.push_back(87); // vamos obter a quantidade de elementos no vector cout << "Quantidade de elementos: " << valores.size() << endl; // vamos remover todos os elementos, ou seja, limpar o vector valores.clear(); // vamos obter a quantidade de elementos no vector novamente cout << "Quantidade de elementos: " << valores.size() << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: Quantidade de elementos: 3 Quantidade de elementos: 0 |
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
Java - Como converter Metros Quadrados em Quilômetros Quadrados em Java - Java para Física e Engenharia |
Códigos Fonte |
![]() 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 |
![]() 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 |