![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Cards de Cards de Hidrologia |
||
|
||
|
|
||
Python ::: Dicas & Truques ::: Lista (List) |
Como excluir e retornar um item da lista Python baseado em seu índice usando a função pop()Quantidade de visualizações: 9665 vezes |
|
Nesta dica mostrarei como é possível usar o método pop() do objeto List da linguagem Python para excluir e retornar um item de uma lista baseado em seu índice. Tudo que precisamos fazer é informar o índice do elemento a ser excluído e retornado. Veja o exemplo Python completo:
"""
Este exemplo mostra como excluir e retornar
um determinado item em uma lista
"""
def main():
# cria uma lista de inteiros
valores = [4, 23, 7, 1, 0, 54]
# imprime a lista
print(valores)
# remove um determinado item
# vamos remover o terceiro item (7)
valor = valores.pop(2)
print("Item removido:", valor)
# exibe a lista novamente
print(valores)
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: [4, 23, 7, 1, 0, 54] Item removido: 7 [4, 23, 1, 0, 54] É importante ficarmos atentos aos erros que podem ocorrer com chamadas à função pop(). Por exemplo, se a List estiver vazia, o seguinte erro será exibido: Exception has occurred: IndexError pop from empty list Se, por exemplo, fornecermos ao método pop() um índice inexistente, o seguinte erro ocorrerá: Exception has occurred: IndexError pop index out of range |
C ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como pesquisar um valor em um vetor de inteiros em CQuantidade de visualizações: 9808 vezes |
Em algumas situações precisamos verificar se um determinado valor está contido em uma matriz de inteiros em C. Nesta dica eu mostro como isso pode ser feito usando a pesquisa ou busca linear. Veja o código completo comentado:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
// vamos declarar e inicializar uma matriz de cinco inteiros
int valores[] = {3, 8, 2, 1, 4};
int encontrei = 0; // vamos inicializar encontrei como falso
int i; // variável de controle do laço
int valor = 2; // valor a ser pesquisado
// vamos percorrer os elementos da matriz e verificar se o valor
// informado está contido na mesma
for(i = 0; i < 5; i++){
// o valor pesquisado é igual ao valor do elemento atual?
if(valores[i] == valor){
encontrei = 1; // encontrei agora é verdadeiro
break; // vamos sair do laço
}
}
// vamos mostrar o resultado
if(encontrei)
printf("O valor pesquisado esta contido na matriz");
else
printf("O valor pesquisado NAO esta contido na matriz");
printf("\n\n");
system("pause");
return 0;
}
Ao executar este trecho de código teremos o seguinte resultado: O valor pesquisado está contido na matriz. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Como resolver o problema da Subsequência de Soma Máxima em Java usando o Algorítmo de KadaneQuantidade de visualizações: 961 vezes |
|
Pergunta/Tarefa: O problema do Subvetor Contíguo de Soma Máxima, ou Subarray ou Subsequência de Soma Máxima é um dos algorítmos mais populares na programação dinâmica. Este problema envolve encontrar um subvetor, ou seja, um sub-array contíguo de maior soma possível. Por contíguo entendemos que os elementos da subsequência deverão estar consecutivos no vetor original. O Algorítmo de Kadane, inventado por Jay Kadane em 1977, é um dos favoritos para a resolução deste problema, e deverá ser aplicado na resolução deste exercício. Dado o vetor [-2, 1, -3, 4, -1, 2, 1, -5, 4], encontre a soma máxima da subsequência contígua. Não é exigido mostrar os elementos da sub-sequência, apenas o valor da soma máxima. Sua saída deverá ser parecida com: A soma maxima é: 6 Veja a resolução comentada deste exercício usando Java:
package estudos;
public class Estudos {
public static void main(String[] args) {
// vamos criar um array com 9 elementos
int valores[] = {-2, 1, -3, 4, -1, 2, 1, -5, 4};
// agora usamos o algoritmo de Kadane para encontrar
// a maior soma consecutiva
int soma_maxima = kadane(valores);
System.out.println("A soma maxima é: " + soma_maxima);
}
// método que recebe um array e usa o algoritmo de Kadane
// para retornar a maior soma consecutiva
public static int kadane(int vetor[]){
// ajustamos max_atual para 0 e max_total para -1
int max_atual = 0, max_total = -1;
// um laço for que percorre todos os elementos do
// vetor, do primeiro até o último
for(int i = 0; i < vetor.length; i++){
// max_atual recebe ele mesmo mais o valor
// do elemento no índice i
max_atual = max_atual + vetor[i];
// se max_atual for negativo nós o ajustamos
// para zero novamente
if(max_atual < 0){
max_atual = 0;
}
// se max_atual for maior que max_total então
// max_total recebe o valor de max_atual
if(max_atual > max_total){
max_total = max_atual;
}
}
// e retornamos a soma máxima
return max_total;
}
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Como testar se um número é perfeito usando JavaQuantidade de visualizações: 1122 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que pede para o usuário informar um número inteiro e informa se este número é um número perfeito. Um número perfeito é aquele cuja soma dos seus divisores, exceto ele próprio, é igual ao número. Por exemplo, o número 6 é perfeito, pois 1 + 2 + 3 = 6. Sua saída deverá ser parecida com: Informe um número inteiro: 6 O número informado é um número perfeito. Veja a resolução completa para o exercício em Java, comentada linha a linha:
package estudos;
import java.util.Scanner;
public class Estudos{
public static void main(String[] args){
int numero; // número informado pelo usuário
int soma = 0; // vai guardar a soma dos dígitos
// para efetuar a leitura da entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos pedir para o usuário informar o valor inteiro
System.out.print("Informe um número inteiro: ");
// lê o número informado
numero = Integer.parseInt(entrada.nextLine());
// um laço que começa em 1 e até o número informado - 1
for(int i = 1; i < numero; i++){
// o número é divisível pelo valor de i?
if(numero % i == 0){
soma = soma + i; // aumenta a soma
}
}
// a soma é igual ao número informado?
if(soma == numero){
System.out.println("O número informado é um número perfeito.");
}
else{
System.out.println("O número informado não é um número perfeito.");
}
}
}
|
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes) |
Como multiplicar um vetor ou uma matriz por um escalar no NumPy do Python - Python NumPy para EngenhariaQuantidade de visualizações: 4827 vezes |
|
Esta dica de Python e NumPy é direcionada, principalmente, aos estudantes de Engenharia Civil, que se deparam, logo no início do curso, com o estudo da Geometria Analítica e gostariam de entender melhor a multiplicação de vetores por um escalar. Lembre-se de que um escalar é um valor único, enquanto vetores e matrizes são estruturas que guardam vários valores ao mesmo tempo. Nosso primeiro exemplo será feito em cima de um vetor com os seguintes valores: [3, -5, 4, 1, 9]. O escalar usado será o valor 2, ou seja, temos que multiplicar cada valor no vetor pelo valor 2 e, dessa forma, obtermos um novo vetor. Veja como a linguagem Python facilita esta operação:
# importamos a bibliteca NumPy
import numpy as np
def main():
# declara e cria o vetor
vetor = np.array([3, -5, 4, 1, 9])
# agora vamos multiplicar este vetor pelo escalar 2
escalar = 2
novoVetor = vetor * escalar
# vamos exibir o resultado
print("Vetor inicial: ", vetor)
print("Valor do escalar: ", escalar)
print("Novo vetor: ", novoVetor)
if __name__== "__main__":
main()
Este código Python vai gerar o seguinte resultado: Vetor inicial: [3 -5 4 1 9] Valor do escalar: 2 Novo vetor: [6 -10 8 2 18] Veja agora como podemos efetuar a mesma operação em uma matriz de 2 linhas e 3 colunas (recorde que, em Python, uma matriz nada mais é que um vetor de vetores, ou seja, cada elemento do vetor contém outro vetor):
# importamos a bibliteca NumPy
import numpy as np
def main():
# declara e cria a matriz
matriz = np.array([(4, 12, 50), (5, 3, 1), (11, 9, 7)])
# agora vamos multiplicar esta matriz pelo escalar 2
escalar = 2
novaMatriz = matriz * escalar
# vamos exibir o resultado
print("Matriz inicial: ", matriz)
print("Valor do escalar: ", escalar)
print("Nova matriz: ", novaMatriz)
if __name__== "__main__":
main()
Ao executarmos este código Python nós teremos o seguinte resultado: Matriz inicial: [[4 12 50] [5 3 1] [11 9 7]] Valor do escalar: 2 Nova matriz: [[8 24 100] [10 6 2] [22 18 14]] |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




