![]() |
|
|
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 Concreto Armado |
||
|
||
|
|
||
Java ::: Dicas & Truques ::: Ordenação e Pesquisa (Busca) |
Como implementar a ordenação Quicksort em Java - Apostila de Java para iniciantesQuantidade de visualizações: 737 vezes |
|
A ordenação Quicksort é um dos algorítmos de ordenação mais encontrados em aplicações reais de programação. No Delphi esta ordenação é encontrada no objeto TList. No Java podemos encontrá-lo no método Arrays.sort(). Na linguagem C a ordenação Quicksort é implementada na função qsort() da biblioteca padrão. O algoritmo de ordenação Quicksort é do tipo dividir para conquistar (divide-and-conquer principle). Neste tipo de algoritmo o problema é dividido em sub-problemas e a solução é concatenada quando as chamadas recursivas atingirem o caso base. O vetor (ou array) a ser ordenado é dividido em duas sub-listas por um elemento chamado pivô, resultando em uma lista com elementos menores que o pivô e outra lista com os elementos maiores que o pivô. Esse processo é repetido para cada chamada recursiva. Sim, a ordenação Quicksort faz uso extensivo de recursividade, razão pela qual devemos ter muito cuidado para não estourar a pilha do sistema. Existem muitos estudos sobre o pivô ideal para a ordenação Quicksort. Nessa dica adotarei o último elemento do array ou sub-array como pivô. Em vetores não ordenados essa estratégia, em geral, resulta em uma boa escolha. Vamos ao código Java então? Veja um programa Java completo demonstrando o uso da ordenação Quicksort para um array de 10 elementos inteiros:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// vamos declarar um array de 10 elementos
int valores[] = new int[10];
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos pedir ao usuário para informar os valores para o vetor
for(int i = 0; i < valores.length; i++){
System.out.print("Informe o valor do elemento " + i + ": ");
valores[i] = Integer.parseInt(entrada.nextLine());
}
// vamos mostrar o array informado
System.out.println("\nO array informado foi:\n");
for(int i = 0; i < valores.length; i++){
System.out.print(valores[i] + " ");
}
// vamos ordenar o vetor usando a ordenação Quicksort
quickSort(valores, 0, valores.length - 1);
System.out.println("\n\nO array ordenado é:\n");
for(int i = 0; i < valores.length; i++){
System.out.print(valores[i] + " ");
}
System.out.println("\n\n");
}
// função de implementação da ordenação Quicksort
public static void quickSort(int vetor[], int inicio, int fim) {
// o início é menor que o fim?
if (inicio < fim) {
// vamos obter o novo índice da partição
int indiceParticao = particionar(vetor, inicio, fim);
// efetuamos novas chamadas recursivas
quickSort(vetor, inicio, indiceParticao - 1);
quickSort(vetor, indiceParticao + 1, fim);
}
}
// função que retorna o índice de partição
private static int particionar(int vetor[], int inicio, int fim) {
// para guardar o pivô
int pivot = vetor[fim];
int i = (inicio - 1);
for (int j = inicio; j < fim; j++) {
if (vetor[j] <= pivot) {
i++;
// fazemos a troca
int temp = vetor[i];
vetor[i] = vetor[j];
vetor[j] = temp;
}
}
// efetua a troca
int temp = vetor[i + 1];
vetor[i + 1] = vetor[fim];
vetor[fim] = temp;
return i + 1;
}
}
Ao executar este código Java nós teremos o seguinte resultado: Informe o valor do elemento 0: 7 Informe o valor do elemento 1: 2 Informe o valor do elemento 2: 43 Informe o valor do elemento 3: 1 Informe o valor do elemento 4: 9 Informe o valor do elemento 5: 6 Informe o valor do elemento 6: 22 Informe o valor do elemento 7: 3 Informe o valor do elemento 8: 37 Informe o valor do elemento 9: 5 O array informado foi: 7 2 43 1 9 6 22 3 37 5 O array ordenado é: 1 2 3 5 6 7 9 22 37 43 |
PHP ::: PHP + MySQL ::: MySQL Improved Extension (mysqli) |
Como obter a quantidade de colunas de uma tabela - Como usar a função mysqli_field_count() para contar os campos de uma tabela - RevisadoQuantidade de visualizações: 11452 vezes |
|
Em algumas situações nós precisamos obter a quantidade de campos retornados como resultado de uma consulta SQL DML SELECT a uma determinada tabela do banco de dados. Para isso nós podemos usar o atributo field_count e a função mysqli_field_count(). A função mysqli_field_count() é usada no modo procedural, enquanto field_count é usada no modo orientado a objetos. Vamos começar com mysqli_field_count(). Veja o exemplo a seguir:
<?
// vamos efetuar a conexão com o banco
$con = new mysqli("localhost", "root",
"osmar1234", "estudos");
// conexão efetuada com sucesso?
if($con->connect_errno){
echo "Não foi possível efetuar a conexão: " .
$mysqli->connect_error;
exit(); // vamos sair daqui
}
// obtém a quantidade de colunas de uma determinada tabela
$query = "SELECT * FROM produtos";
$result = mysqli_query($con, $query);
echo "Esta tabela (retornada) possui " .
mysqli_field_count($con) . " colunas";
// vamos fechar a conexão
mysqli_close($con);
?>
Ao executarmos este código nós teremos um resultado parecido com: Esta tabela (retornada) possui 4 colunas Veja agora o mesmo exemplo usando a abordagem de programação orientada a objetos:
<?
// vamos efetuar a conexão com o banco
$con = new mysqli("localhost", "root",
"osmar1234", "estudos");
// conexão efetuada com sucesso?
if($con->connect_errno){
echo "Não foi possível efetuar a conexão: " .
$con->connect_error;
exit(); // vamos sair daqui
}
// obtém a quantidade de colunas de uma determinada tabela
$con->query("SELECT * FROM produtos");
echo "Esta tabela possui " . $con->field_count .
" colunas";
// vamos fechar a conexão
$con->close();
?>
Esta dica foi revisada e atualizada para o PHP 8. |
PHP ::: Dicas & Truques ::: Data e Hora |
Como retornar o dia da semana em PHP na forma abreviada e em português usando a função gmstrftime() e o sinalizador "%a"Quantidade de visualizações: 1 vezes |
|
Como retornar o dia da semana em PHP na forma abreviada e em português usando a função gmstrftime() e o sinalizador "%a" Nesta dica mostrarei um código que retorna o nome do dia da semana de forma abreviada e em português usando a função gmstrftime() combinada com o sinalizador "%a". O resultado será agora como "seg", "ter", "qua", etc. Veja o código PHP completo para o exemplo:
<?php
// obtemos o locale padrão
$locale_anterior = setlocale(LC_ALL, NULL);
// ajustamos o locale para português brasileiro
setlocale(LC_ALL, "pt_BR");
// obtemos o dia da semana
$dia_semana = gmstrftime("%a", time());
// voltamos o locale anterior
setlocale(LC_ALL, $locale_anterior);
// e mostramos o resultado
echo "O dia da semana é: " . $dia_semana;
?>
Ao executar este código PHP nós teremos o seguinte resultado: O dia da semana é: dom |
Python ::: Dicas & Truques ::: Strings e Caracteres |
Como transformar em letra maiúscula apenas o primeiro caractere de uma palavra ou frase usando a função capitalize() do PythonQuantidade de visualizações: 12153 vezes |
|
Nesta dica mostrarei como podemos usar o método capitalize() do objeto string da linguagem Python para transformar em letra maiúscula apenas a primeira letra de uma palavra, frase ou texto. Veja o trecho de código a seguir:
def main():
frase1 = "trabalho, Estudo e toco Guitarra."
# converte a primeira letra para maiúsculas e as demais
# para letras minúsculas
frase2 = frase1.capitalize()
# mostra os resultados
print("Frase original:", frase1)
print("Apenas a primeira letra maiúscula:", frase2)
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: Frase original: trabalho, Estudo e toco Guitarra. Apenas a primeira letra maiúscula: Trabalho, estudo e toco guitarra. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística |
Exercício Resolvido de Java - Como simplificar frações em JavaQuantidade de visualizações: 1105 vezes |
|
Pergunta/Tarefa: Simplificar uma fração consiste em reduzir o numerador e o denominador por meio da divisão pelo máximo divisor comum aos dois números. Uma fração está totalmente simplificada quando verificamos que seus termos estão totalmente reduzidos a números que não possuem termos divisíveis entre si. Uma fração simplificada sofre alteração do numerador e do denominador, mas seu valor matemático não é alterado, pois a fração, quando tem seus termos reduzidos, torna-se uma fração equivalente. Escreva um programa Java que pede para o usuário informar o numerador e o denominador de uma fração e mostre a fração simplificada. Use uma classe Fracao para a operação de simplificação. Em outras seções do nosso site você encontra o cálculo do MDC para encontrar o Máximo Divisor Comum. Sua saída deverá ser parecida com: Informe o numerador: 32 Informe o denominador: 40 A fração gerada foi: 32/40 A fração simplificada é: 4/5 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) {
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos pedir para o usuário informar o numerador
System.out.print("Informe o numerador: ");
int numerador = Integer.parseInt(entrada.nextLine());
// vamos pedir para o usuário informar o denominador
System.out.print("Informe o denominador: ");
int denominador = Integer.parseInt(entrada.nextLine());
// vamos criar um objeto da classe Fracao
Fracao f = new Fracao(numerador, denominador);
// vamos mostrar a fração gerada
System.out.println("A fração gerada foi: " + f.toString());
// agora vamos simplificar esta fração
System.out.println("A fração simplificada é: " +
f.simplificar().toString());
}
}
// classe usada para representar uma Fração
class Fracao{
int numerador;
int denominador;
// construtor da classe
public Fracao(int numerador, int denominador) {
this.numerador = numerador;
this.denominador = denominador;
}
// método que simplifica a fração atual e retorna o
// resultado como uma fração
public Fracao simplificar(){
// cria uma fração temporária
Fracao temp = new Fracao(this.numerador, this.denominador);
// descobrimos que é maior, o numerador ou o
// denominador
int n = temp.numerador, d = temp.denominador, maior;
// o numerador é menor que 0?
if (temp.numerador < 0) {
n = -temp.numerador;
}
// descobrimos o maior
if (n > d) {
maior = n;
}
else {
maior = d;
}
// encontramos o maior número que divide o numerador e o
// denominador
int mdc = 0;
for (int i = maior; i >= 2; i--) {
if ((temp.numerador % i == 0) && (temp.denominador % i == 0)) {
mdc = i;
break;
}
}
// agora dividimos tanto o numerador quanto o denominador
// pelo mdc encontrado
if (mdc != 0) {
temp.numerador = temp.numerador / mdc;
temp.denominador = temp.denominador / mdc;
}
// retorna a fração temporária
return temp;
}
// retorna uma representação textual dessa fração
@Override
public String toString() {
return this.numerador + "/" + this.denominador;
}
}
|
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 |
|
Delphi - Como obter a quantidade de registros em um TClientDataSet do Delphi usando a propriedade RecordCount |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





