![]() |
|
|
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 Hidrostática |
||
|
||
|
|
||
Laravel ::: Dicas de Estudo e Anotações ::: Passos Iniciais |
Como efetuar uma instalação do Laravel no Windows usando o ComposerQuantidade de visualizações: 3106 vezes |
|
O Laravel é um framework PHP livre e open-source criado por Taylor B. Otwell para o desenvolvimento de sistemas web que utilizam o padrão MVC (model, view, controller) ou seja, o padrão Modelo-Visão-Controlador. Algumas características proeminentes do Laravel são sua sintaxe simples e concisa, um sistema modular com gerenciador de dependências dedicado, várias formas de acesso a banco de dados relacionais e vários utilitários indispensáveis no auxílio ao desenvolvimento e manutenção de sistemas. De acordo com uma pesquisa feita em Março de 2015 com desenvolvedores, o Laravel foi listado como o framework PHP mais popular de 2015, seguido pelo Symfony2, Nette, CodeIgniter, Yii2 e outros. Em Agosto de 2015, o Laravel já era o principal framework de projetos PHP no GitHub. Laravel foi desenvolvido sob o MIT License, tendo seu código-fonte hospedado no GitHub. Atualmente encontra-se na versão 7.3.0. Como baixar e instalar o Laravel Para instalar o framework Laravel, direcione o seu navegador para https://getcomposer.org. Esta é a página do Composer, um gerenciador de dependências para o PHP. Para esta dica eu baixei o instalador para o Windows Composer-Setup.exe. Durante o processo de instalação, tenha o cuidado de informar o caminho do php.exe no seu sistema. Concluída a instalação do Composer, abra uma janela de terminal e digite: composer Pressione Enter e você verá um resultado parecido com: C:\Users\samsung>composer ... why-not Shows which packages prevent the given package from being installed. Isso é um bom sinal. O Composer está pronto e já podemos continuar com a instalação do Laravel. Na mesma janela de terminal, digite o comando abaixo: composer global require laravel/installer Aguarde alguns minutos e você terá o seguinte resultado: Changed current directory to C:/Users/samsung/AppData/Roaming/Composer Using version ^3.1 for laravel/installer ... Writing lock file Generating autoload files 8 packages you are using are looking for funding. Use the `composer fund` command to find out more! Para testar se sua instalação do Laravel está pronta para uso, use a mesma janela de terminal ou abra uma nova e digite: laravel --version O resultado será algo como Laravel Installer 3.1.0. Agora, para finalizar, crie um diretório em um local de sua preferência, entre nele e dispare o comando a seguir: C:\Users\samsung>cd c:\estudos_laravel c:\estudos_laravel>laravel new cadastroclientes Pressione Enter, aguarde alguns segundos e então verifique que uma instalação fresquinha do Laravel foi feita no diretório que você indicou, e ela contém, já instaladas, todas as dependências necessárias para a criação do seu projeto. |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de C - Usando um laço for para percorrer os elementos de uma matriz e exibir a soma dos valores positivos e a quantidade de valores negativosQuantidade de visualizações: 12186 vezes |
|
Exercícios Resolvidos de C - Usando um laço for para percorrer os elementos de uma matriz e exibir a soma dos valores positivos e a quantidade de valores negativos Pergunta/Tarefa: Considere a seguinte matriz de inteiros:
// uma matriz de inteiros contendo sete elementos
int valores[] = {-3, 9, 12, -34, -2, 20, 10};
Escreva um programa C que usa um laço for para percorrer todos os elementos desta matriz e exibir a soma dos valores positivos e a quantidade de valores negativos. Seu programa deverá exibir uma saída com a mensagem: A soma dos valores positivos é: 51 A quantidade de valores negativos é: 3 Resposta/Solução: Veja abaixo a resolução completa para esta tarefa:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
// uma matriz de inteiros contendo sete elementos
int valores[] = {-3, 9, 12, -34, -2, 20, 10};
// o primeiro passo é criar uma variável que vai receber a soma
// dos valores positivos
int soma_positivos = 0;
// agora uma variável para receber a quantidade de valores negativos
int quant_negativos = 0;
int i;
// agora vamos usar uma laço for para percorrer todos os elementos
// da matriz
for(i = 0; i < 7; i++){
// vamos verificar se o valor do elemento atual é negativo
if(valores[i] < 0){
quant_negativos++;
}
else{ // o valor é positivo
soma_positivos = soma_positivos + valores[i];
}
}
// vamos exibir a soma dos valores positivos
printf("A soma dos valores positivos é: %d\n", soma_positivos);
// vamos exibir a quantidade de valores negativos
printf("A quantidade de valores negativos é: %d\n", quant_negativos);
system("PAUSE");
return 0;
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Exercícios Resolvidos de Java - Um método recursivo que recebe uma String e retorna a quantidade de letras maiúsculas encontradasQuantidade de visualizações: 6323 vezes |
|
Pergunta/Tarefa: Escreva um método recursivo que recebe uma palavra ou frase e retorna a quantidade de caracteres (letras) maiúsculos. Seu método deverá possuir a seguinte assinatura:
public static int contarMaiusculas(String frase){
// sua implementação aqui
}
Sua saída deverá ser parecida com: Digite uma palavra ou frase: Arquivo de Códigos A palavra ou frase contém 2 letras maiúsculas Veja a resolução comentada deste exercício usando Java console: Observação importante: Este código criará uma cadeia de chamadas recursivas. Cada chamada ao método contarMaiusculas() receberá uma cópia menor da palavra ou frase fornecida. Quando a última chamada recursiva do método receber uma string vazia, a cadeia começa a retornar. Note que os valores acumulados nas várias chamadas ao método vão sendo acumulados na variável quantidade.
package exercicio;
import java.util.Scanner;
public class Exercicio {
public static void main(String[] args) {
// cria um novo objeto da classe Scanner
Scanner entrada = new Scanner(System.in);
// solicita uma palavra ou frase ao usuário
System.out.print("Digite uma palavra ou frase: ");
// lê a palavra ou frase
String frase = entrada.nextLine();
int quantMaiusculas = contarMaiusculas(frase);
System.out.println("A palavra ou frase contém " + quantMaiusculas +
" letras maiúsculas");
}
// método recursivo que recebe uma palavra ou frase e retorna
// a quantidade de letras maiúsculas
public static int contarMaiusculas(String frase){
/* Este código criará uma cadeia de chamadas recursivas. Cada
* chamada ao método contarMaiusculas() receberá uma cópia menor
* da palavra ou frase fornecida. Quando a última chamada recursiva do
* método receber uma string vazia, a cadeia começa a retornar. Note
* que os valores acumulados nas várias chamadas ao método vão sendo
* acumulados na variável quantidade
*/
int quantidade = 0;
// o tamanho da string é maior que 0?
if(frase.length() > 0){
if(Character.isUpperCase(frase.charAt(0))){
quantidade = 1 + contarMaiusculas(frase.substring(1));
}
else{
quantidade = contarMaiusculas(frase.substring(1));
}
}
return quantidade;
}
}
|
TypeScript ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o coeficiente angular de uma reta em TypeScript dados dois pontos no plano cartesianoQuantidade de visualizações: 1810 vezes |
|
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x. Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano: ![]() Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é: \[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \] Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente. Veja agora o trecho de código na linguagem TypeScript que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos:
// x e y do primeiro ponto
var x1:number = 3;
var y1:number = 6;
// x e y do segundo ponto
var x2:number = 9;
var y2:number = 10;
var m:number = (y2 - y1) / (x2 - x1);
// mostramos o resultado
console.log("O coeficiente angular é: " + m);
Ao executar este código TypeScript nós teremos o seguinte resultado: O coeficiente angular é: 0.6666666666666666 Veja agora como podemos calcular o coeficiente angular da reta que passa pelos dois pontos usando o Teorema de Pitágoras. Note que agora nós estamos tirando proveito da tangente do ângulo Theta (__$\theta__$), também chamado de ângulo Alfa ou Alpha (__$\alpha__$):
// x e y do primeiro ponto
var x1:number = 3;
var y1:number = 6;
// x e y do segundo ponto
var x2:number = 9;
var y2:number = 10;
// vamos obter o comprimento do cateto oposto
var cateto_oposto:number = y2 - y1;
// e agora o cateto adjascente
var cateto_adjascente:number = x2 - x1;
// vamos obter o ângulo tetha, ou seja, a inclinação da hipotenusa
// (em radianos, não se esqueça)
var tetha:number = Math.atan2(cateto_oposto, cateto_adjascente);
// e finalmente usamos a tangente desse ângulo para calcular
// o coeficiente angular
var tangente:number = Math.tan(tetha);
// mostramos o resultado
console.log("O coeficiente angular é: " + tangente);
Ao executar este código você verá que o resultado é o mesmo. No entanto, fique atento às propriedades do coeficiente angular da reta: 1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0; 2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0; 3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0). 4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe. |
Java ::: Dicas & Truques ::: Data e Hora |
Java para iniciantes - Como usar a classe Date em suas aplicações JavaQuantidade de visualizações: 14535 vezes |
A classe Date pertence ao pacote java.util, e, embora muitos de seus métodos estejam em desuso (Deprecated), ainda encontraremos muito código Java que usa esta classe para trabalhar com datas e horas. Veja sua posição na hierarquia de classes Java:java.lang.Object java.util.Date Esta classe implementa as interfaces Serializable, Cloneable e Comparable<Date> e suas subclasses conhecidas são Date, Time, Timestamp (todas do pacote java.sql). As informações abaixo podem ser encontradas na documentação da classe Date. A classe Date representa um momento específico no tempo, com uma precisão de milisegundos. Antes do JDK 1.1, esta classe tinha duas funções adicionais. Ela permitia a interpretação de datas como valores de ano, mês, dia, hora, minuto e segundo. Também permitia a formatação e parsing de strings de datas. Infelizmente, a API para estas funções não facilitava a internacionalização. Assim, a partir do JDK 1.1, a classe Calendar deve ser usada para converter entre campos de datas e horas e a classe DateFormat deve ser usada para formatar e fazer o parsing de strings de datas. Os métodos correspondentes a estas funções estão em desuso (Deprecated) na classe Date. Embora a classe Date tenha sido projetada para refletir a hora universal coordenada (Coordinated Universal Time - UTC), ela pode não ser capaz de fazer isso corretamente, dependendo do sistema no qual a Java Virtual Machine esteja sendo executada. A grande maioria dos sistemas operacionais modernos assume que 1 dia = 24 × 60 × 60 = 86400 segundos em todos os casos. No UTC, contudo, de dois em dois anos, aproximadamente, há um segundo extra, chamado de "leap second" (a mesma idéia do ano bissexto). O leap second é sempre adicionado como o último segundo do dia e sempre nos dias 31 de dezembro ou 30 de junho. Por exemplo, o último minuto do ano de 1995 teve 61 segundos, graças ao segundo extra que foi adicionado. A maioria dos relógios dos computadores não são precisos o suficiente para refletir a distinção do leap second. Alguns padrões de computadores são definidos em termos da hora de Greenwich (Greenwich mean time - GMT), que é o equivalente ao Universal Time (UT). GMT é o nome "civil" para o padrão, UT é o nome "científico" para o mesmo padrão. A distinção entre UTC e UT é que UTC é baseado em um relógio atômico e UT é baseado em observações astronômicas, o que para todos os propósitos práticos não traz diferença significativa. Devido à rotação da terra não ser uniforme (ela desacelera ou acelera de formas complicadas), O UT nem sempre flui uniformente. Segundos extras (Leap seconds) são inseridos conforme necessário no UTC de forma a mantê-lo dentro dos 0.9 segundos do UT1, que é uma versão do UT com algumas correções aplicadas. Há outros sistemas de datas e horas também; por exemplo, a escala de tempo pelo sistema de posicionamento global baseado em satélite (satellite-based global positioning system - GPS) é sincronizado com o UTC mas não é ajustado para os segundos extras. Em todos os métodos da classe Date que aceitam ou retornam valores de ano, mês, dia, hora, minuto e segundos, as seguintes representações são usadas:
|
Desafios, 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 |





