![]() |
|
|
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 Cards de Hidrologia |
||
|
||
|
|
||
Python ::: Tkinter GUI Toolkit ::: Círculos, Ovais e Elípses |
Como desenhar círculos no Tkinter usando a função create_oval() do componente CanvasQuantidade de visualizações: 1542 vezes |
|
Em várias situações nós precisamos desenhar círculos não preenchidos e preenchidos em Tkinter. Para isso nós podemos usar a função create_oval() do componente Canvas. Em sua forma mais simples, a função create_oval() requer as coordenadas x e y a partir das quais o círculo ou elípse será desenhada e a largura e a altura do retângulo dentro do qual o círculo estará contido. Para desenhar uma oval ou elípse, basta manipular a largura ou altura desse retângulo. Veja um trecho de código no qual usamos a função create_oval() para desenhar um círculo com 5 pixels de largura da linha de desenho:
# vamos importar o módulo Tkinter
from tkinter import *
from tkinter.ttk import *
# método principal
def main():
# cria a janela principal da aplicação
janela_principal = Tk()
# define as dimensões da janela
janela_principal.geometry("400x350")
# define o título da janela
janela_principal.title("Uso do controle Canvas")
# vamos criar o objeto Canvas
canvas = Canvas(janela_principal, bg="white", width=400, height=350)
# colocamos o Canvas na janela principal
canvas.grid(row=0, column=0)
# agora vamos desenhar um círculo no Canvas começando nas
# coordenadas x=20 e y=30 centro de um retângulo de largura
# 150 pixels por uma altura de 150 pixels e largura da linha
# de 5 pixels
canvas.create_oval(20, 30, 150, 150, width="5")
# entramos no loop de eventos
janela_principal.mainloop()
if __name__== "__main__":
main()
Note que a largura da linha de desenho foi informada por meio do parâmetro width. Se quisermos definir também a cor da linha do desenho, basta usarmos o parâmetro outline e fornecer a cor desejada. |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como renomear um diretório em PHP usando a função rename()Quantidade de visualizações: 12291 vezes |
|
Diretórios podem ser renomeados usando a função rename() da linguagem PHP. Esta função recebe o nome atual do diretório e o novo nome e retorna um valor boolean (true ou false) informando o sucesso ou não da operação. Antes de usar esta função verifique se você possui as permissões adequadas para renomear o diretório. Veja um trecho de código no qual renomeamos um diretório no diretório public_html:
<?php
// renomeia o diretório "recentes" para "atuais"
$diretorio_antigo = "/site/public_html/recentes";
$diretorio_novo = "/site/public_html/atuais";
if(rename($diretorio_antigo, $diretorio_novo)){
echo "Diretório renomeado com sucesso.";
}
else{
echo "Não foi possível renomear o diretório.";
}
?>
Ao executar este código nós teremos o seguinte resultado: Diretório renomeado com sucesso. Seja cuidadoso. Se você não tiver as permissões adequadas para renomear um diretório, a seguinte mensagem de erro será exibida: Warning: rename(imagens,imagens_novas) [function.rename]: Permission denied in /site/public_html/testes.php on line 9 Não foi possível renomear o diretório. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Exercícios Resolvidos de Java - Um método recursivo que recebe um valor inteiro e o exibe na ordem inversaQuantidade de visualizações: 5071 vezes |
|
Pergunta/Tarefa: Escreva um método recursivo que recebe um valor inteiro (com qualquer quantidade de dígitos) e o exibe na ordem inversa. Se o método receber o valor 467, o valor inverso será 764. Seu método deverá possuir a seguinte assinatura:
public static void exibirInverso(int valor){
// sua implementação aqui
}
Sua saída deverá ser parecida com: Informe um valor inteiro: 932 O valor invertido é: 239 Veja a resolução comentada deste exercício usando Java console:
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 um valor inteiro ao usuário
System.out.print("Informe um valor inteiro: ");
// lê o valor informado
int numero = Integer.parseInt(entrada.nextLine());
// exibe o valor na ordem invertida
System.out.print("O valor invertido é: ");
exibirInverso(numero);
System.out.println("\n");
}
// método recursivo que recebe um valor inteiro e o exibe na ordem
// inversa
public static void exibirInverso(int valor){
// a parada da recursividade é o valor igual a 0
if(valor != 0){
System.out.print(valor % 10);
valor = valor / 10;
exibirInverso(valor); // efetua uma nova chamada recursiva
}
}
}
|
C++ ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar true e false em C e C++Quantidade de visualizações: 15409 vezes |
|
Em praticamente todas as linguagens de programação nós encontramos expressões condicionais que definem o fluxo de execução. Expressões condicionais são aquelas que, quando avaliadas, resultam em um valor true (verdadeiro) ou false (falso). Muitas linguagens de programação possuem um tipo booleano que armazena os valores true ou false. Enquanto o C++ possui o tipo bool, o C possui uma forma bem interessante de definir true ou false. Em C, um valor true é qualquer valor diferente de 0, incluindo numeros negativos. Veja:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int pode = 1; // verdadeiro
int nao_pode = 0; // falso
if(pode)
printf("Teste resultou verdadeiro\n\n");
if(!nao_pode)
printf("Teste resultou verdadeiro\n\n");
system("PAUSE");
return 0;
}
Lembre-se então. False em C é o valor zero. Qualquer outro valor é true. Embora C++ já possua o tipo bool, é possível usar a abordagem do zero para false e qualquer outro valor para true em C++ também. Você verá muito código legado usando este artifício. Quer ver algo interessante agora? Execute o seguinte código C++:
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char *argv[]){
bool pode = true;
bool nao_pode = false;
cout << pode << "\n";
cout << nao_pode << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Nos compiladores que obedecem o C++ padrão você verá os valores 1 e 0 serem impressos. |
JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como remover elementos duplicados de um array em JavaScript usando as funções filter() e indexOf() do objeto ArrayQuantidade de visualizações: 5447 vezes |
|
Em várias ocasições temos códigos JavaScript envolvendo arrays (vetores, matrizes) e gostaríamos de eliminar os valores duplicados, ou seja, retornar um novo vetor sem elementos repetidos. Para isso podemos usar os métodos filter() e indexOf(). Como pode ser visto em dicas nesta mesma seção, o método filter() é usado para retornar apenas os elementos do vetor que se encaixem em uma determinada condição. O método indexOf(), por sua vez, retorna o índice da primeira ocorrência do elemento no vetor. Assim, a combinação desses dois métodos é perfeita para esta situação, ainda que você consiga fazer de outras formas. Veja o trecho de código a seguir:
<script type="text/javascript">
function removerDuplicados(valor, indice, vetor){
// o índice desse elemento é o primeiro encontrado
// no vetor?
if(indice == vetor.indexOf(valor)){
return true;
}
return false;
}
var valores = new Array(6, 6, 1, 7, 3, 7, 1, 7, 4, 3, 5);
// vamos obter um vetor sem repetições
var novoVetor = valores.filter(removerDuplicados);
// vamos mostrar o resultado
window.alert(novoVetor);
</script>
Execute este código e veja que apenas os valores únicos serão retornados. Note agora como o mesmo código pode ser escrito de forma mais reduzida:
<script type="text/javascript">
var valores = new Array(8, 8, 1, 7, 3, 7, 1, 7, 8, 3, 5);
// vamos obter um vetor sem repetições
var novoVetor = valores.filter(function(val, ind, vet){
return vet.indexOf(val) == ind;
});
// vamos mostrar o resultado
window.alert(novoVetor);
</script>
|
Desafios, Exercícios e Algoritmos Resolvidos de JavaScript |
Veja mais Dicas e truques de JavaScript |
Dicas e truques de outras linguagens |
|
AutoCAD VBA - Como criar uma linha no AutoCAD usando Autocad VBA e a função AddLine() do objeto ModelSpace |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





