![]() |
|
|
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. |
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Exercícios Resolvidos de Java - Como resolver o problema da Torre de Hanói recursivamenteQuantidade de visualizações: 3346 vezes |
|
Pergunta/Tarefa: Torre de Hanói, ou The Towers of Hanoi, é um "quebra-cabeça" que consiste em uma base contendo três pinos, em um dos quais são dispostos alguns discos uns sobre os outros, em ordem crescente de diâmetro, de cima para baixo. O problema consiste em passar todos os discos de um pino para outro qualquer, usando um dos pinos como auxiliar, de maneira que um disco maior nunca fique em cima de outro menor em nenhuma situação. O número de discos pode variar sendo que o mais simples contém apenas três. A solução da Torre de Hanói (The Towers of Hanoi) pode ser feita recursivamente da seguinte forma: O caso base (parada da recursão) é quando n = 1. Se n = 1 nós podemos simplesmente mover o disco de A para B, sem precisar passar pelo pino C. Quando n > 1 nós podemos dividir o problema original em três sub-problemas e resolvê-los sequencialmente. 1) Mova os primeiros n - 1 discos de A para C com a ajuda do pino B; 2) Mova o disco n de A para B; 3) Mova n - 1 discos do pino C para o pino B com a ajuda do pino A. Além de resolver o problema, seu programa deverá informar quantas chamadas recursivas foram feitas. Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console:
package arquivodecodigos;
import java.util.Scanner;
public class Estudos {
static int quantChamadasRecursivas = 0; // registra as chamadas recursivas
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
// vamos ler a quantidade de discos a serem usados na simulação
System.out.print("Informe a quantidade de discos: ");
int discos = Integer.parseInt(entrada.nextLine());
// resolve o problema recusivamente
System.out.println("\nOs movimentos para resolver o problema foram:\n");
moverDiscos(discos, 'A', 'B', 'C');
System.out.println("\nForam feitas " + quantChamadasRecursivas +
" chamadas recursivas");
System.out.println();
}
// método recursivo que resolve o problema da Torre de Hanói
public static void moverDiscos(int n, char daTorre, char paraTorre,
char torreAux) {
quantChamadasRecursivas++; // registra mais uma chamada recursiva
if(n == 1){ // condição de parada
System.out.println("Movendo o disco " + n + " de " + daTorre + " para " +
paraTorre);
}
else{ // faz mais uma chamada recursiva
moverDiscos(n - 1, daTorre, torreAux, paraTorre);
System.out.println("Movendo o disco " + n + " de " + daTorre + " para " +
paraTorre);
moverDiscos(n - 1, torreAux, paraTorre, daTorre);
}
}
}
|
Portugol ::: Desafios e Lista de Exercícios Resolvidos ::: Portugol Básico |
Exercícios Resolvidos de Portugol - Como calcular salário líquido em Portugol - Calculando o salário líquido de um professorQuantidade de visualizações: 1993 vezes |
|
Pergunta/Tarefa: Escreva um algoritmo Portugol ou VisuAlg que calcule o salário líquido de um professor. Seu programa deverá solicitar que o usuário informe o valor da hora aula (como real), o número de horas trabalhadas no mês (como inteiro) e o percentual de desconto do INSS (como real). Em seguida mostre o salário líquido. Sua saída deverá ser parecida com: Informe o valor da hora aula: 28 Informe o número de horas trabalhadas no mês: 12 Informe o percentual de desconto do INSS: 8 Salário Bruto: R$ 336,00 Total de Descontos: R$ 26,88 Salário Líquido: R$ 309,12 Veja a resolução comentada deste exercício usando Portugol (na versão Portugol Webstudio):
// Cálculo de Salário Bruto e Líquido em Portugol
programa {
funcao inicio() {
// variáveis usadas para resolver o problema
real valor_hora_aula
inteiro horas_trabalhadas
real percentual_desconto_inss
real salario_bruto
real salario_liquido
real total_desconto
// vamos ler o valor do hora aula
escreva("Informe o valor da hora aula: ")
leia(valor_hora_aula)
// vamos ler o número de horas trabalhadas no mês
escreva("Informe o número de horas trabalhadas no mês: ")
leia(horas_trabalhadas)
// vamos ler o percentual de desconto do INSS
escreva("Informe o percentual de desconto do INSS: ")
leia(percentual_desconto_inss)
// vamos calcular o salário bruto
salario_bruto = valor_hora_aula * horas_trabalhadas
// agora calculamos o total do desconto
total_desconto = (percentual_desconto_inss / 100) * salario_bruto
// finalmente calculamos o salário líquido
salario_liquido = salario_bruto - total_desconto
// mostramos o resultado
escreva("\nSalário Bruto: R$ ", salario_bruto)
escreva("\nTotal de Descontos: R$ ", total_desconto)
escreva("\nSalário Líquido: R$ ", salario_liquido)
}
}
|
PHP ::: PHP + XML ::: SimpleXML |
Como usar a função simplexml_load_file() do PHP para carregar um arquivo XML e convertê-lo em um objeto SimpleXMLElementQuantidade de visualizações: 5360 vezes |
A função simplexml_load_file() pode ser usada quando queremos carregar um arquivo XML e convertê-lo em um objeto da classe SimpleXMLElement. Veja a assinatura desta função:SimpleXMLElement simplexml_load_file(string $filename [, string $class_name = "SimpleXMLElement" [, int $options = 0 [, string $ns = "" [, bool $is_prefix = false]]]]) Este método possui alguns parâmetros que são opcionais. O único parâmetro exigido é o nome e/ou caminho do arquivo XML a ser carregado. Código para clientes.xml:
<?xml version="1.0" encoding="iso-8859-1"?>
<cadastro>
<cliente id="14" ativo="true">
<nome>Osmar J. Silva</nome>
<email>osmar@arquivodecodigos.com.br</email>
</cliente>
<cliente id="75" ativo="false">
<nome>Cintia Gomes Arantes</nome>
<email>cintia@arquivodecodigos.com.br</email>
</cliente>
</cadastro>
Veja agora como carregar o conteúdo deste arquivo e convertê-lo em um objeto SimpleXMLElement:
<?
$xml = simplexml_load_file("clientes.xml");
print_r($xml);
?>
Ao executarmos este código teremos o seguinte resultado: SimpleXMLElement Object ( [cliente] => Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [id] => 14 [ativo] => true ) [nome] => Osmar J. Silva [email] => osmar@arquivodecodigos.net ) [1] => SimpleXMLElement Object ( [@attributes] => Array ( [id] => 75 [ativo] => false ) [nome] => Cintia Gomes Arantes [email] => cintia@arquivodecodigos.net ) ) ) Neste documento XML nós temos dois clientes, ou seja, temos um objeto SimpleXMLElement que contém um array de outros dois objetos SimpleXMLElement (um para cada cliente). Para verificarmos se isso é realmente verdade, veja o trecho de código abaixo:
<?
// carrega o arquivo XML e o converte em um objeto SimpleXMLElement
$xml = simplexml_load_file("clientes.xml");
// vamos mostrar os dados do primeiro cliente
echo "Nome: " . $xml->cliente[0]->nome . "<br>";
echo "E-Mail: " . $xml->cliente[0]->email;
?>
Ao executarmos este código teremos o seguinte resultado: Nome: Osmar J. Silva E-Mail: osmar@arquivodecodigos.com.br |
JavaScript ::: Dicas & Truques ::: Cookies |
Cookies em JavaScript - Como excluir um cookie usando JavaScriptQuantidade de visualizações: 6 vezes |
|
Nesta dica mostrarei como podemos escrever uma função JavaScript excluirCookie() que recebe o nome do cookie e o remove do navegador. Em alguns browsers pode ser necessário reiniciar para que o cookie seja realmente excluído. Note que coloquei também uma função obterCookie() que permite verificar se o cookie foi realmente excluído. Veja o código JavaScript completo, incluindo o código HTML da página de teste:
<html>
<head>
<title>Estudando JavaScript</title>
<script type="text/javascript">
// função que permite excluir um cookie. Pode
// ser necessário reiniciar o navegador
function excluirCookie(nome){
var exdate = new Date();
exdate.setTime(exdate.getTime() + (-1 * 24 * 3600
* 1000));
document.cookie = nome + "=" + escape("")+ ((-1
== null) ? "" : "; expires=" + exdate);
}
// função que permite obter um cookie
function obterCookie(nome){
if(document.cookie.length > 0){
c_start = document.cookie.indexOf(nome + "=");
if(c_start != -1){
c_start = c_start + nome.length + 1;
c_end = document.cookie.indexOf(";", c_start);
if(c_end == -1){
c_end = document.cookie.length;
}
return unescape(document.cookie.substring(
c_start, c_end));
}
}
return null;
}
</script>
</head>
<body>
<script type="text/javascript">
// vamos excluir o cookie
excluirCookie('nome_visitante');
// verifica se o cookie "nome_visitante" existe
// e obtém seu valor
var nome_visitante = obterCookie('nome_visitante');
if(nome_visitante != null){
document.writeln("O cookie nome_visitante existe. " +
"Seu valor é: " + nome_visitante);
}
else{
document.writeln("O cookie nome_visitante não existe");
}
</script>
</body>
</html>
Ao executar este código, sabendo que o cookie "nome_visitante" existia anteriormente, nós teremos o seguinte resultado: O cookie nome_visitante não existe |
Nossas 20 dicas & truques de programação mais populares |
|
Delphi - Como obter a quantidade de caracteres em uma palavra ou texto usando a função Length() do Delphi JavaScript - JavaScript Avançado - Como remover todas as ocorrências de uma substring em uma string usando uma função recursiva |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Java - Como inserir uma substring em uma string em Java usando o método insert() da classe StringBuffer JavaScript - Como obter entrada do usuário em seus códigos JavaScript usando a função prompt() do objeto window |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






