Você está aqui: Cards de Engenharia Civil - Fundações |
||
|
||
|
|
||
C++ ::: Dicas & Truques ::: Matemática e Estatística |
Como testar se um número é primo em C++Quantidade de visualizações: 3384 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:
#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 |
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular porcentagem em Python - Como efetuar cálculos de porcentagem em PythonQuantidade de visualizações: 26447 vezes |
|
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em Python. Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas. Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em Python:
# Algoritmo que calcula porcentagem em Python
def main():
valor = 178.00 # valor original
percentual = 15.0 / 100.0 # 15%
valor_final = valor + (percentual * valor)
# mostra o resultado
print("O valor final do produto é: {0}".format(valor_final))
# O resultado será 204,70
if __name__== "__main__":
main()
Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em Python:
# Algoritmo que calcula porcentagem em Python
def main():
valor = 250.00 # valor original
percentual = 8.0 / 100.0 # 8%
valor_final = valor - (percentual * valor)
# mostra o resultado
print("O valor final do produto é: {0}".format(valor_final))
# O resultado será 230,00
if __name__== "__main__":
main()
Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em Python:
# Algoritmo que calcula porcentagem em Python
def main():
perguntas = 90.0
acertos = 72.0
# mostra a porcentagem de acertos
print("Porcentagem de acertos: {0}%".format((acertos / perguntas) * 100))
# mostra a porcentagem de erros
print("Porcentagem de erros: {0}%".format(((perguntas - acertos) / perguntas) * 100))
# Os resultados serão 80% e 20%
if __name__== "__main__":
main()
Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em Python:
# Algoritmo que calcula porcentagem em Python
def main():
valor_anterior = 300.0 # valor anterior
novo_valor = 340.0 # valor novo
# calcula a porcentagem de lucro
# efetua o cálculo
porcentagem_lucro = ((novo_valor * 100) / valor_anterior) - 100
print("A porcentagem de lucro foi de: {0}%".format(porcentagem_lucro))
# O resultado será 13,33
if __name__== "__main__":
main()
Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em Python:
# Algoritmo que calcula porcentagem em Python
def main():
valor = 70.0 # valor do produto
percentual = 5.0 / 100.0 # 5%
# calcula a comissão
comissao = percentual * valor
# mostra o resultado
print("O valor repassado ao vendedor é: {0}".format(comissao))
# O resultado será 3,5
if __name__== "__main__":
main()
|
MySQL ::: Dicas & Truques ::: Chaves, Índices e Restrições de Integridade Referencial |
Como criar chaves primárias compostas em uma tabela do MySQLQuantidade de visualizações: 1884 vezes |
|
Sabemos que o uso do atributo PRIMARY KEY (PK) permite marcar um campo de uma tabela MySQL como chave primária. Assim, este campo não poderá ter valores repetidos nem conter o valor NULL. Há, no entanto, situações nas quais precisamos marcar mais de um campo como chave primária, ou seja, a chave primária é composta de dois ou mais campos. Estas situações surgem nos cenários em que temos relacionamentos N x N (muitos para muitos) e uma tabela associativa que represente o relacionamento. Um exemplo disso é a relação autor-livro: um autor pode escrever vários livros e um livro pode ser escrito por mais um autor (vários autores em conjunto). Mas, o mesmo autor não pode aparecer no mesmo livro mais de uma vez. Vamos representar isso passo-a-passo. Comece criando a tabela autores. Veja o comando CREATE TABLE completo para esta tarefa: CREATE TABLE autores( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, nome VARCHAR(45) NOT NULL, email VARCHAR(45) NOT NULL, PRIMARY KEY(id) ) ENGINE = InnoDB; Este comando CREATE TABLE vai gerar a seguinte estrutura: Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment nome varchar(45) NO - email varchar(45) NO - Vamos agora criar a tabela livros. Veja o comando CREATE TABLE completo: CREATE TABLE livros( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, titulo VARCHAR(45) NOT NULL, paginas INTEGER UNSIGNED NOT NULL, PRIMARY KEY (id) ) ENGINE = InnoDB; Este comando CREATE TABLE vai gerar a seguinte estrutura: Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment titulo varchar(45) NO - paginas int(10) unsigned NO - CREATE TABLE autores_livros( id_autor int(10) unsigned NOT NULL, id_livro int(10) unsigned NOT NULL, PRIMARY KEY(id_autor,id_livro), KEY FK_autores_livros_2(id_livro), CONSTRAINT FK_autores_livros_2 FOREIGN KEY(id_livro) REFERENCES livros(id), CONSTRAINT FK_autores_livros_1 FOREIGN KEY(id_autor) REFERENCES autores(id) ) ENGINE=InnoDB Este comando CREATE TABLE vai gerar a seguinte estrutura: Field Type Null Key Default Extra id_autor int(10) unsigned NO PRI - - id_livro int(10) unsigned NO PRI - - Agora experimente inserir dados nas tabelas autores e livros. Em seguida faça o relaciomento na tabela autores_livros. Tente repetir o id do autor para o mesmo livro. Imediatamente o MySQL recusará a inserção com a mensagem de erro: Error 1062: Duplicate entry '2-2' for key 1 E, como usamos chaves estrangeiras na tabela autores_livros, ao tentarmos excluir um livro já relacionado com um autor, teremos a seguinte mensagem de erro: Cannot delete or update a parent row: a foreign key constraint fails (`estudos/autores_livros`, CONSTRAINT `FK_autores_livros_2` FOREIGN KEY (`id_livro`) REFERENCES `livros` (`id`)) Veja mais dicas nesta seção para aprender mais sobre chaves estrangeiras e restrições de integridade referencial. |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes) |
Como gerar um vetor com valores igualmente espaçados usando a função linspace() da biblioteca NumPy do Python - Python NumPy para EngenhariaQuantidade de visualizações: 2765 vezes |
|
Em algumas situações nós precisamos de vetores e matrizes com valores igualmente espaçados entre um determinado intervalo. Para isso nós podemos usar a função linspace() da biblioteca NumPy do Python. Esta função exige, entre vários argumentos, o início e o fim do intervalo. Vamos ver um exemplo? Observe o trecho de código a seguir:
# vamos importar a biblioteca NumPy
import numpy as np
def main():
valores = np.linspace(2, 5, num=10)
print("O vetor gerado foi: ", valores)
if __name__== "__main__":
main()
Este código Python vai gerar o seguinte resultado: O vetor gerado foi: [2. 2.33333333 2.66666667 3. 3.33333333 3.66666667 4. 4.33333333 4.66666667 5. ] Note que informamos o valor inicial como 2 e o valor final como 5, e definimos a quantidade de elementos gerados como 10 (se omitida, 50 valores serão gerados). Se não quisermos que o valor final do intervalo seja incluído na amostra, basta informamos endpoint=False como argumento para a função linspace(). |
Ruby ::: Dicas & Truques ::: Data e Hora |
Como retornar a data e hora atual em Ruby usando os métodos new e now da classe TimeQuantidade de visualizações: 9731 vezes |
|
Quando precisamos obter a data e hora atual, o Ruby nos fornece dois métodos muito úteis e presentes na classe Time: new e now. Ambos retornam um objeto da classe Time representando a data e hora atual no sistema no qual o programa Ruby está sendo executado. Veja uma demonstração destes métodos no trecho de código a seguir:
# obtém a data e hora atual usando o método new
agora = Time.new
# exibe o resultado
puts "Usando new: " + agora.strftime("%d/%m/%Y - %H:%M:%S")
# obtém a data e hora atual usando o método now
agora = Time.now
# exibe o resultado
puts "Usando now: " + agora.strftime("%d/%m/%Y - %H:%M:%S")
Ao executar este código Ruby nós teremos o seguinte resultado: Usando new: 21/03/2021 - 17:00:09 Usando now: 21/03/2021 - 17:00:09 |
Desafios, Exercícios e Algoritmos Resolvidos de Ruby |
Veja mais Dicas e truques de Ruby |
Dicas e truques de outras linguagens |
|
Python - Como excluir e retornar um item da lista Python baseado em seu índice usando a função pop() GNU Octave - GNU Octave para Álgebra Linear - Como calcular o determinante de uma matriz usando a função det() do GNU Octave |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




