![]() |
|
|
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 Engenharia Civil - Estruturas de Aço e Madeira |
||
|
||
|
|
||
Python ::: Dicas & Truques ::: Lista (List) |
Apostila de Python - Como ordenar uma lista de inteiros em ordem crescente ou decrescente usando o método sort() do objeto List do PythonQuantidade de visualizações: 18843 vezes |
|
Nesta dica veremos como usar a função sort() do objeto List da linguagem Python para ordenar um vetor de inteiros em ordem crescente ou decrescente. Veja que, para ordenar o vetor em ordem descrecente, tudo que fiz foi fornecer o valor "reverse=True" para a função sort(). Veja o código completo para o exemplo: def main(): # cria uma lista de inteiros valores = [2, 5, 12, 2, 3, 32, 18] # exibe a lista na ordem original print(valores) # ordena a lista em ordem crescente valores.sort() # exibe a lista ordenada em ordem crescente print(valores) # ordena a lista em ordem decrescente valores.sort(reverse=True) # exibe a lista ordenada em ordem decrescente print(valores) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: [2, 5, 12, 2, 3, 32, 18] [2, 2, 3, 5, 12, 18, 32] [32, 18, 12, 5, 3, 2, 2] |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Exercícios Resolvidos de Java - Métodos - Um método estático que recebe um vetor de inteiros e o exibeQuantidade de visualizações: 2953 vezes |
|
Exercício Resolvido de Java - Métodos - Um método estático que recebe um vetor de inteiros e o exibe Pergunta/Tarefa: Escreva um método Java que recebe um vetor de inteiros e o exibe. Este método deverá ter a seguinte assinatura:
public static void exibirVetor(int[] vetor){
// sua implementação aqui
}
Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
// vamos declarar e construir um vetor de 5 inteiros
int valores[] = new int[5];
// agora vamos pedir que o usuário informe os valores
for(int i = 0; i < valores.length; i++){
System.out.print("Informe o valor para o " + (i + 1) + " elemento: ");
valores[i] = Integer.parseInt(entrada.nextLine());
}
// e agora vamos passar o vetor para o método exibirVetor()
System.out.println("\nOs elementos do vetor são:\n");
exibirVetor(valores);
System.out.println("\n");
}
// um método estático que recebe um vetor de inteiros e o exibe
public static void exibirVetor(int[] vetor){
// vamos percorrer os elementos do vetor e exibir cada um
for(int i = 0; i < vetor.length; i++){
System.out.print(vetor[i] + " ");
}
}
}
|
C# ::: Coleções (Collections) ::: List<T> |
Como usar a classe genérica List<T> do C# em suas aplicaçõesQuantidade de visualizações: 16079 vezes |
A classe genérica List<T> da linguagem C# representa uma lista fortemente tipada de objetos que podem ser acessados por índices. Esta classe fornece métodos para pesquisar, ordenar e manipular seus elementos. Veja sua posição na hierarquia de classes da plataforma .NET:
System.Object
System.Collections.Generic.List<T>
System.ServiceModel.Install.Configuration.
ServiceModelConfigurationSectionCollection
System.ServiceModel.Install.Configuration.
ServiceModelConfigurationSectionGroupCollection
System.Workflow.ComponentModel.ActivityCollection
System.Workflow.Activities.WorkflowRoleCollection
System.Workflow.Activities.OperationParameterInfoCollection
System.Workflow.ComponentModel.Design.
ActivityDesignerGlyphCollection
System.Workflow.Runtime.Tracking.ExtractCollection
System.Workflow.Runtime.Tracking.TrackingAnnotationCollection
System.Workflow.Runtime.Tracking.TrackingConditionCollection
System.Workflow.Runtime.Tracking.ActivityTrackingLocationCollection
System.Workflow.Runtime.Tracking.UserTrackingLocationCollection
System.Workflow.Runtime.Tracking.ActivityTrackPointCollection
System.Workflow.Runtime.Tracking.UserTrackPointCollection
System.Workflow.Runtime.Tracking.WorkflowTrackPointCollection
Esta classe implementa também as interfaces IList<T>, ICollection<T>, IEnumerable<T>, IList, ICollection e IEnumerable. A classe List<T> é a equivalente genérica da classe ArrayList. Ela implementa a interface genérica IList<T> usando um array (matriz) cujo tamanho é dinamicamente aumentado de acordo com a necessidade. Esta classe usa tanto um comparador de igualdade quanto um de ordenação. Os métodos tais como Contains(), IndexOf(), LastIndexOf() e Remove() usam um comparador de igualdade para os elementos da lista. O comparador de igualdade padrão para o tipo T é definido segundo as seguintes regras: Se o tipo T implementar a interface genérica IEquatable<T>, então o comparador de igualdade é o método Equals(T) dessa interface. Caso contrário, o comparador de igualdade padrão é Object.Equals(Object). Os métodos tais como BinarySearch() e Sort() usam um comparador de ordenação para os elementos da lista. O comparador padrão para o tipo T é definido da seguinte forma: Se o tipo T implementar a interface genérica IComparable<T>, então o comparador padrão é o método CompareTo(T) dessa interface. Caso contrário, se o tipo T implementar a interface não-genérica IComparable, então o comparador padrão é o método CompareTo(Object) dessa interface. Se o tipo T não implementar nenhuma destas duas interfaces, então não haverá comparador padrão, e um comparador ou delegate de comparação deve ser fornecido explicitamente. Uma lista List<T> não fornece garantias quanto à sua ordenação. Devemos ordená-la por conta própria antes de efetuar algumas operações (tais como BinarySearch) que exigem que a List<T> esteja ordenada. Os elementos em uma coleção do tipo List<T> podem ser acessados usando índices (que começam a partir de 0). Uma List<T> aceita o valor null como valor válido para tipos referência e aceita elementos duplicados. Em relação à performance, a documentação do .NET afirma que, embora List<T> e ArrayList possuam funcionalidade semelhante, a classe List<T> possui uma performance melhor na maioria dos casos, além de ser type safe (oferece segurança de tipos). Veja um trecho de código no qual criamos uma List<T> de inteiros, inserimos alguns valores e usamos o laço foreach para percorrer a lista e exibir os valores dos elementos:
static void Main(string[] args){
// vamos criar um objeto da classe List<T>
List<int> valores = new List<int>();
// vamos inserir três valores na lista
valores.Add(5);
valores.Add(2);
valores.Add(9);
// vamos usar o laço foreach para percorrer os elementos
// na lista
foreach(int v in valores){
Console.WriteLine(v);
}
// vamos pausar a execução
Console.ReadKey();
}
|
C# ::: Dicas & Truques ::: Gráficos |
Como desenhar linhas em C# usando o método DrawLine() da classe Graphics - Computação Gráfica usando C#Quantidade de visualizações: 13776 vezes |
|
Uma das tarefas mais simples que realizamos quando estamos desenhando em C# é o desenho de linhas. Para isso usamos o método DrawLine() da classe Graphics. Este método recebe um objeto da classe Pen (representando a cor e espessura da caneta de desenho) e as coordenadas iniciais e finais da linha a ser desenhada. Veja um trecho de código no qual desenhamos uma linha na cor vermelha e com a espessura de dois pixels:
private void button1_Click(object sender, EventArgs e){
// vamos obter o Graphics do formulário
Graphics g = this.CreateGraphics();
// vamos desenhar uma linha na cor vermelha e com espessura
// de dois pixels
g.DrawLine(new Pen(Color.Red, 2), new Point(100, 150),
new Point(400, 450));
// vamos liberar o objeto Graphics
g.Dispose();
}
Execute este código e verá uma linha vermelha na vertical ser desenhada quando você clicar no botão. Aqui nós usamos dois objetos da classe Point. Um para as coordenadas iniciais (x = 100; y = 150) e outro para as coordenadas finais (x = 400; y = 450). É possível fornecer os valores das coordenadas diretamente. Veja: g.DrawLine(new Pen(Color.Red, 2), 100, 150, 400, 450); É possível também desenhar múltiplas linhas de uma só vez. Para isso podemos usar o método DrawLines(). Este método recebe um objeto da classe Pen e um array de objetos da classe Point representando as diversas coordenadas. Desta forma, todas as linhas serão conectadas. Veja um exemplo:
private void button1_Click(object sender, EventArgs e){
// vamos obter o Graphics do formulário
Graphics g = this.CreateGraphics();
// vamos criar várias coordenadas x e y
Point[] coordenadas = {new Point(15, 20), new Point(15, 300),
new Point(400, 300), new Point(400, 20), new Point(15, 20)};
// vamos desenhar todas as linhas conectadas usando a cor azul e a
// espessura de um pixel
g.DrawLines(new Pen(Color.Blue, 1), coordenadas);
// vamos liberar o objeto Graphics
g.Dispose();
}
Execute este código e clique no botão. Você verá um retângulo azul e com a espessura de 1 pixel ser desenhado no formulário. |
Python ::: Python para Engenharia ::: Engenharia Civil - Concreto, Concreto Armado e Concretos Especiais |
Como calcular a Resistência à Tração do Concreto usando Python - Python para Engenharia Civil e Cálculo EstruturalQuantidade de visualizações: 704 vezes |
|
A resistência à tração do concreto é a capacidade máxima de tensão de tração que o material pode suportar antes de se romper. Ela é menor que a resistência à compressão do concreto, podendo representar cerca de 10% dela. O concreto pode falhar rapidamente quando submetido a força de tração, como dobramento ou alongamento. Isso acontece porque o concreto é composto por agregados e pasta de cimento, e sua estrutura nunca é completamente homogênea. A resistência à tração direta do concreto é muito útil na determinação da armadura de tração mínima em uma viga de concreto armado, e usada também nos cálculos estruturais em geral (ABNT NBR 6118). Assim, a resistência à tração média do concreto pode ser calculada pela seguinte fórmula: \[f_\text{ctk,m} = 0,3 \cdot \sqrt[3]{{f_\text{ck}}^2}\] Onde: fctk,m é a resistência à tração média do concreto em Mpa; fck é a resistência à compressão do concreto em Mpa. Note que, uma vez obtida a resistência à tração média do concreto (que é um método estatístico), podemos obter seus limites inferior e superior usando as seguintes fórmulas: \[f_\text{ctk,inf} = 0,7 \cdot f_\text{ctk,m}\]\[f_\text{ctk,sup} = 1,3 \cdot f_\text{ctk,m}\] Veja agora o código Python que pede para o usuário informar o FCK do concreto e calcula o fctk,m, fctk,inf e fctk,sup:
# vamos importar o módulo Math
import math
# função principal do programa
def main():
# vamos pedir para o usuário informar o FCK do concreto
fck = float(input("Informe o FCK do concreto em Mpa: "))
# agora vamos calcular a resistência à tração média
# do concreto
fctk_m = 0.3 * math.pow(fck, 2.0 / 3.0)
# vamos calcular o limite inferior
fctk_inf = 0.7 * fctk_m
# vamos calcular o limite superior
fctk_sup = 1.3 * fctk_m
# e mostramos os resultados
print("\nO fctk,m é: {0} Mpa ({1} kN/cm2)".format(round(fctk_m, 5),
round(fctk_m / 10.0, 5)))
print("O fctk,inf é: {0} Mpa ({1} kN/cm2)".format(round(fctk_inf, 5),
round(fctk_inf / 10.0, 5)))
print("O fctk,sup é: {0} Mpa ({1} kN/cm2)".format(round(fctk_sup, 5),
round(fctk_sup / 10.0, 5)))
if __name__ == "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: Informe o FCK do concreto em Mpa: 30 O fctk,m é: 2.89647 Mpa (0.28965 kN/cm2) O fctk,inf é: 2.02753 Mpa (0.20275 kN/cm2) O fctk,sup é: 3.76541 Mpa (0.37654 kN/cm2) |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
|
C++ - Como definir a cor de fundo para um Edit Control em tempo de execução usando C++ e a API do Windows |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





