![]() |
|
|
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 |
||
|
||
|
|
||
C++ ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cosseno de um ângulo em C++ usando a função cos() do header math.h - Calculadora de cosseno em C++Quantidade de visualizações: 2570 vezes |
|
Em geral, quando falamos de cosseno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função cosseno disponível nas linguagens de programação para calcular o cosseno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria. No entanto, é sempre importante entender o que é a função cosseno. Veja a seguinte imagem: ![]() Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles. Assim, o cosseno é a razão entre o cateto adjascente e a hipotenusa, ou seja, o cateto adjascente dividido pela hipotenusa. Veja a fórmula: \[\text{Cosseno} = \frac{\text{Cateto adjascente}}{\text{Hipotenusa}} \] Então, se dividirmos 30 por 36.056 (na figura eu arredondei) nós teremos 0.8320, que é a razão entre o cateto adjascente e a hipotenusa (em radianos). Agora, experimente calcular o arco-cosseno de 0.8320. O resultado será 0.5881 (em radianos). Convertendo 0.5881 radianos para graus, nós obtemos 33.69º, que é exatamente o ângulo em graus entre o cateto adjascente e a hipotenusa na figura acima. Pronto! Agora que já sabemos o que é cosseno na trigonometria, vamos entender mais sobre a função cos() da linguagem C++. Esta função, que faz parte do header math.h, recebe um valor numérico double e retorna um valor double, ou seja, também numérico) entre -1 até 1 (ambos inclusos). Veja:
#include <iostream>
#include <math.h>
#include <cstdlib>
using namespace std;
int main(int argc, char *argv[]){
// vamos gerar o cosseno de três números
cout << "Cosseno de 0 = " << cos(0) << "\n";
cout << "Cosseno de 1 = " << cos(1) << "\n";
cout << "Cosseno de 2 = " << cos(2) << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: Cosseno de 0 = 1 Cosseno de 1 = 0.540302 Cosseno de 2 = -0.416147 Note que calculamos os cossenos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função cosseno mostrada abaixo: ![]() |
C ::: C para Engenharia ::: Física - Mecânica |
Como calcular a altura da queda livre de um corpo dado o tempo de queda e a aceleração da gravidade usando a linguagem CQuantidade de visualizações: 2235 vezes |
|
A Queda livre é um movimento unidimensional e uniformemente acelerado. Tal movimento ocorre quando algum corpo é solto do repouso a partir de certa altura. Uma vez que a aceleração da gravidade é constante, se desconsiderarmos a ação de forças dissipativas, o tempo de descida nesse movimento será sempre igual. Na prática, o movimento de queda livre ideal é bastante próximo daquele em que um objeto é solto a uma pequena altura em relação ao chão. No entanto, rigorosamente, esse movimento só acontece quando algum objeto é solto no vácuo. De acordo com as equações do movimento de queda livre, o tempo de queda não depende da massa dos objetos, mas da aceleração da gravidade e da altura em que esse objeto é solto. A queda livre é um movimento vertical que ocorre com aceleração constante, de modo que a velocidade de queda do corpo aumenta a cada segundo em relação ao centro da Terra, de acordo com a aceleração da gravidade local. Quando soltos no vácuo, corpos de massas diferentes chegarão no mesmo tempo ao chão. O fato de uma pena não chegar ao chão no mesmo tempo em que uma bola de boliche, quando soltas na superfície da Terra, está associado ao atrito com o ar, que é quase desprezível para objetos pesados e aerodinâmicos, como a bola de boliche. A altura da queda livre de um objeto, quando temos apenas o tempo (duração da queda), pode ser obtida por meio da seguinte fórmula: \[ \text{H} = \frac{\text{g} \cdot t^2}{2} \] Onde: H ? altura em metros na qual o corpo é abandonado. g ? aceleração da gravidade (m/s2). t ? tempo da queda (em segundos). Em alguns livros de Física esta fórmula é encontrada também na forma: \[ \text{h} = \frac{1}{2} \text{g} \cdot t^2 \] Vamos ver um exemplo? Veja o seguinte enunciado: 1) Sabendo que um corpo leva 2s para chegar ao chão após ter sido abandonado a uma altura H em relação ao solo, calcule a altura em que esse corpo foi abandonado, em metros. Note que o tempo de queda é de 2 segundos. Então, como sabemos que a aceleração da gravidade terrestre é 9.80665, só precisamos jogar na fórmula. Veja o código C completo para o exemplo:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char *argv[]){
// gravidade terrestre em m/s2
float gravidade = 9.80665;
// tempo da queda
float segundos = 2; // em segundos
// vamos calcular a altura da queda
float altura = (gravidade * pow(segundos, 2)) / 2;
// mostramos o resultado
printf("A altura da queda livre é: %f metros",
altura);
printf("\n\n");
system("PAUSE");
return 0;
}
Ao executar este código C nós teremos o seguinte resultado: A altura da queda livre é: 19.613300 metros. |
Java ::: Dicas & Truques ::: Arquivos e Diretórios |
Manipulação de arquivos em Java - Como ler o conteúdo de um arquivo um byte de cada vezQuantidade de visualizações: 7 vezes |
|
Nesta dica mostrarei como ler texto de um arquivo um byte de cada vez. Para isso vamos usar o método readByte() da classe DataInputStream, do pacote java.io. Note que este método retorna um inteiro com sinal na faixa de -128 até 127. Neste exemplo faremos um cast do byte lido para um char, já que estaremos lendo um arquivo de texto. Sim, é isso mesmo que você pensou. Se houver caracteres acentuados no arquivo texto, os mesmo não serão exibidos corretamente. A idéia do exemplo é mostrar o funcionamento do método readByte(). Veja o código Java completo:
package arquivodecodigos;
import java.io.*;
public class Estudos{
public static void main(String[] args){
try {
DataInputStream in = new DataInputStream(new BufferedInputStream(
new FileInputStream("C:\\java\\conteudo.txt")));
while (in.available() != 0){
System.out.print((char) in.readByte());
}
}
catch (IOException e){
System.out.println("Erro: " + e.getMessage());
}
System.exit(0);
}
}
Ao executarmos este código nós teremos o seguinte resultado: Primeira linha do arquivo Segunda linha do arquivo Terceira linha do arquivo |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Exercício Resolvido de VisuAlg - Escreva um programa VisuAlg que leia um número inteiro e informe se ele é par ou ímparQuantidade de visualizações: 1573 vezes |
|
Pergunta/Tarefa: Escreva um algorítmo em VisuAlg que pede para o usuário informar um número inteiro. Depois da leitura do número digitado, informe se ele é par ou ímpar. Sua saída deverá ser parecida com: Informe um número: 14 O número é par Veja a resolução comentada deste exercício usando VisuAlg:
Algoritmo "Um algorítmo para tstar se um número é par ou ímpar"
Var
// variáveis usadas na resolução do problema
numero: inteiro
Inicio
// vamos pedir para o usuário informar o número
escreva("Informe um número: ")
leia(numero)
// vamos testar se o número é par ou ímpar
se numero mod 2 = 0 entao
escreval("O número é par")
senao
escreval("O número é ímpar")
fimse
Fimalgoritmo
Na versão 3.0.7.0 do VisuAlg nós podemos usar "mod" ou "%" para representar o operador de módulo. Por favor, verifique qual o operador suportado pela sua versão. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de Java - Escreva um programa Java que leia os elementos de um vetor A de dez elementos inteiros e construa outro vetor BQuantidade de visualizações: 736 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que leia os elementos de um vetor A de dez elementos inteiros e construa outro vetor B com seus elementos distribuídos da seguinte forma: Vetor A = [8, 5, 4, 1, 2, 3, 4, 6, 9, 7] Vetor B = [24, 10, 12, 2, 6, 6, 12, 12, 27, 14] Note que os elementos do vetor B seguem um padrão. Se o elemento do vetor A estiver em uma posição par, então o elemento do vetor B será o triplo do elemento do vetor A. Caso contrário o elemento do vetor B será o dobro do elemento do vetor A. Neste exercício a primeira posição/índice dos vetores é assumida como sendo zero. Em algumas linguagens de programação o primeiro índice é um e não zero. Sua saída deverá ser parecida com: Informe o valor do 1.o elemento: 8 Informe o valor do 2.o elemento: 5 Informe o valor do 3.o elemento: 4 Informe o valor do 4.o elemento: 1 Informe o valor do 5.o elemento: 2 Informe o valor do 6.o elemento: 3 Informe o valor do 7.o elemento: 4 Informe o valor do 8.o elemento: 6 Informe o valor do 9.o elemento: 9 Informe o valor do 10.o elemento: 7 Elementos do vetor A: 8, 5, 4, 1, 2, 3, 4, 6, 9, 7 Elementos do vetor B: 24, 10, 12, 2, 6, 6, 12, 12, 27, 14 Veja a resolução comentada deste exercício em Java:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// vamos fazer a leitura usando a classe Scanner
Scanner entrada = new Scanner(System.in);
// vamos declarar e construir dois vetores de 10 inteiros
int vetor_a[] = new int[10];
int vetor_b[] = new int[10];
// agora vamos pedir para o usuário informar os valores
// dos elementos do vetor A
for(int i = 0; i < vetor_a.length; i++){
System.out.print("Informe o valor do " + (i + 1) +
".o elemento: ");
vetor_a[i] = Integer.parseInt(entrada.nextLine());
}
// vamos construir o vetor B
for(int i = 0; i < vetor_a.length; i++){
// o índice atual é par?
if(i % 2 == 0){
vetor_b[i] = vetor_a[i] * 3;
}
else{
vetor_b[i] = vetor_a[i] * 2;
}
}
// vamos mostrar os elementos do vetor A
System.out.println("\nElementos do vetor A:\n");
for(int i = 0; i < vetor_a.length; i++){
System.out.print(vetor_a[i] + ", ");
}
// vamos mostrar os elementos do vetor B
System.out.println("\n\nElementos do vetor B:\n");
for(int i = 0; i < vetor_b.length; i++){
System.out.print(vetor_b[i] + ", ");
}
System.out.println();
}
}
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






