Dúvidas, comentários e doaçoes: +55 62 9 8513 2505

Planilha de Dimensionamento de Tubulações Hidráulicas Água Fria e Água Quente Completa
Nossa 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.

Python ::: Python para Engenharia ::: Engenharia Civil - Concreto, Concreto Armado e Concretos Especiais

Cálculo de estribos em vigas de concreto armado usando Python - Armadura mínima transversal normativa

Quantidade de visualizações: 1206 vezes
A ABNT NBR 6118 (Projeto de estruturas de concreto armado) define uma taxa de armadura mínima para os estribos das vigas de concreto armado, e, a partir dessa taxa mínima nós podemos facilmente calcular a área de aço mínima a ser usada.

A fórmula para o cálculo da taxa mínima de armadura tranversal pode ser definida como:

\[\rho_\text{sw} = 0,2 \cdot \frac{f_\text{ck,m}}{f_\text{ywk}} \]
Onde:

ρsw é um número adimensional representando a taxa de armadura mínima transversal de acordo com recomendações da norma NBR 6118;

fctk,m é a resistência à tração média do concreto em Mpa;

fymk é a resistência à tração do aço em Mpa. Em geral, esse valor é fixado em 500 (CA 50), mesmo que o aço usado seja CA 60 ou superior;

Após calculada a taxa de armadura transversal mínima, podemos calcular a área de aço mínima transversal por meio da seguinte fórmula:

\[A_\text{sw,min} = \rho_\text{sw} \cdot b_w \cdot S \cdot sen(\alpha) \]
Onde:

Asw,min é a área de aço mínima a ser usada, em cm2/m;

ρsw é um número adimensional representando a taxa de armadura mínima transversal de acordo com recomendações da norma NBR 6118;

bw é a largura da viga em centímetros;

S é o espaçamento a ser considerado. Informamos o valor de 100 para considerar um espaçamento de 1 metro;

α é a inclinação dos estribos, em geral 90º.

Veja agora o código Python :

# 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 pedir para o usuário informar a largura da viga em cm
  largura = float(input("Informe a largura da viga em cm: "))
 
  # vamos calcular a taxa de armadura transversal mínima
  fywk = 500 # vamos considerar aço CA 50
  psw = 0.2 * (fctk_m / fywk)

  # agora vamos calcular a área mínima de aço para a armadura
  # tranversal, ou seja, os estribos
  S = 100 # considerando 1 metro de viga
  inclinacao = 90 # inclinação em graus dos estribos
  aws_min = psw * largura * S * math.sin(math.radians(inclinacao))

  # e mostramos os resultados
  print("\n-------RESULTADOS--------------------------------------")
  print("A resistência à tração média do concreto é: {0} Mpa".
    format(round(fctk_m, 5)))
  print("A taxa de armadura transversal mínima é: {0}".format(
    round(psw, 5)))
  print("A área mínima de aço é: {0} cm2/m".format(round(aws_min, 5)))
  
if __name__ == "__main__":
  main()

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

Informe o FCK do concreto em Mpa: 25
Informe a largura da viga em cm: 19

-------RESULTADOS--------------------------------------
A resistência à tração média do concreto é: 2.56496 Mpa
A taxa de armadura transversal mínima é: 0.00103
A área mínima de aço é: 1.94937 cm2/m


Java ::: Coleções (Collections) ::: HashMap

Como adicionar novos mapeamentos chave-valor a um HashMap do Java usando o método put()

Quantidade de visualizações: 10126 vezes
Novos mapeamentos chave-valor são adicionados a um HashMap da linguagem Java usando-se o método put(). Veja sua assinatura:

public V put(K key, V value)


Note que este método recebe a chave e o valor a ser inserido e retorna um objeto do mesmo tipo daquele fornecido no segundo argumento. Este retorno é muito útil para sabermos se o novo valor não sobrepôs um valor já existente. Se o retorno for null, o novo valor foi inserido. Caso contrário o retorno será o valor existente antes da sobreposição. Apenas tenha cuidado com valores null existentes como chaves ou valores. Nestes casos o retorno do método put não ajudará em nada.

Veja um exemplo do uso do método put():

package estudos;

import java.util.*;

public class Estudos{
  public static void main(String[] args){
    
    // vamos criar uma instância de HashMap
    HashMap<Integer, String> clientes = new HashMap<Integer, String>();

    // vamos adicionar três chaves e seus valores
    clientes.put(new Integer(1), "Osmar J. Silva");
    clientes.put(new Integer(2), "Salvador Miranda de Andrade");
    clientes.put(new Integer(3), "Marcos da Costa Santos");

    // é possível também referenciar o valor adicionado
    // ao HashMap, uma vez que este é o retorno do métoto put()
    String nome = clientes.put(new Integer(2), "Carlos"); 

    if(nome == null){
      System.out.println("Novo valor inserido com sucesso");
    }
    else{
      System.out.println("Valor já existia. Houve sopreposição"); 
    }

    System.exit(0);
  }
}

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

Valor já existia. Houve sopreposição


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Exceções e Tratamentos de Erros

Exercício Resolvido de Java - Como forçar o usuário a informar dois inteiros válidos antes de efetuar sua soma - Exceções e Tratamentos de Erros em Java

Quantidade de visualizações: 4031 vezes
Pergunta/Tarefa:

Escreva um programa Java que usa tratamento de erros try...catch para forçar o usuário a informar dois valores inteiros válidos antes de tentar somá-los. Caso o usuário informe um ou os dois valores inválidos, o programa deverá exibir uma mensagem de erro e solicitar os valores novamente.

Sua saída deverá ser parecida com:

Informe o primeiro valor: M
Dados inválidos: java.lang.NumberFormatException: 
For input string: "M"
Por favor, informe os dois números novamente
Informe o primeiro valor: 7
Informe o segundo valor: %
Dados inválidos: java.lang.NumberFormatException: 
For input string: "%"
Por favor, informe os dois números novamente
Informe o primeiro valor: 5
Informe o segundo valor: 3
A soma dos valores é: 8
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);  
    
    // para verificar se os valores são inteiros válidos
    boolean validos = false; 
    int n1, n2, soma; 

    // solicita que o usuário informe os dois valores
    while(!validos) {
      try {
        System.out.print("Informe o primeiro valor: ");
        // tenta fazer a conversão
        n1 = Integer.parseInt(entrada.nextLine());
        System.out.print("Informe o segundo valor: ");
        // tenta fazer a conversão
        n2 = Integer.parseInt(entrada.nextLine());
        // se chegou até aqui é porque não houve erros na conversão,
        // ou seja, o usuário informou inteiros válidos
        soma = n1 + n2;
        System.out.println("A soma dos valores é: " + soma);
        validos = true;
      }
      catch (Exception ex) { // houve erro na conversão?
        System.out.println("Dados inválidos: " + ex.toString());
        System.out.println("Por favor, informe os dois números novamente");
      }
    }
  }
}



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

Como comparar strings em C++ usando o método compare() da classe String

Quantidade de visualizações: 23429 vezes
Nesta dica mostrarei como podemos usar a função compare() da classe String da linguagem C++ para comparar duas palavras, frases ou textos.

Se as duas strings forem iguais, o valor 0 é retornado. Um valor diferente de 0 indica que as duas strings não são iguais. Lembre-se de que esta função distingue entre maiúsculas e minúsculas.

Veja como esta função pode ser usada:

int compare(const string& str) const;
int compare(const char* s) const;

Podemos chamar esta função de duas formas:

a) Fornecendo uma variável como parâmetro;
b) Fornecendo uma string entre aspas.

Veja agora um exemplo C++ completo demonstrando o seu uso:

#include <string>
#include <iostream>

using namespace std;

int main(int argc, char *argv[]){
  string str1("Java");
  string str2("JAVA");

  if(str1.compare(str2) == 0){
    cout << str1 << " é igual a " << str2 << "\n";
  }
  else{
    cout << str1 << " é diferente de " << str2 << "\n";
  }

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

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

Java é diferente de JAVA


Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

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


E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser. Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 32,90

Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.


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