Você está aqui: Cards de AutoCAD Civil 3D |
||
|
||
|
|
||
Python ::: Dicas & Truques ::: Data e Hora |
Como obter um datetime da data e hora atual usando o método today() da classe datetime da linguagem PythonQuantidade de visualizações: 10777 vezes |
|
Neste exemplo mostrarei como podemos usar o método today() da classe datetime do Python para retornar a data e hora local. Veja o código completo:
from datetime import datetime
def main():
# Obtém um datetime da data e hora atual
hoje = datetime.today()
# Exibe o conteúdo do datetime
print("Hoje é: " + str(hoje))
if __name__== "__main__":
main()
Ao executar este código nós teremos o seguinte resultado: Hoje é: 2018-03-03 15:54:01.477809 |
CSS ::: Projetos HTML/CSS Completos - Códigos Fonte HTML/CSS/JavaScript ::: Formulários HTML/CSS/JavaScript |
Como criar uma tela de login usando HTML, CSS e JavaScript - Responsivo e com opção de exibir/ocultar senhaQuantidade de visualizações: 7590 vezes |
Nesta dica mostrarei uma combinação muito interessante de HTML5, CSS e JavaScript para a criação de um formulário de login contendo dois campos de texto, um para a inserção do nome de usuário e outro para a inserção da senha: Veja:![]() No final da dica deixei o link para download do arquivo index.html e as imagens usadas no exemplo. Neste código você aprenderá técnicas valiosas de CSS para a criação de formulários HTML, tais como a definição de cores de fundo, espaçamento interno e margens. Além disso, verá como exibir uma imagem ao lado (na verdade dentro) de um campo de senha, de forma que, ao clicar na imagem, a senha digitada pelo usuário seja exibida ou ocultada. Para isso foi usado código JavaScript puro, sem a necessidade de nenhum framework ou biblioteca. Outro detalhe interessante é a responsividade. Ao abrir o exemplo em uma tela reduzida, tal como a tela de um celular, o formulário é ajustado. Para isso você aprenderá a usar as media queries do CSS. Tudo bem simples e comentado. Aqui está a parte do CSS que formata a DIV de recuperação da senha, remove o sublinhado do link e define a sua cor, e a media query que ajusta a largura da DIV principal em telas reduzidas:
/* DIV para recuperar a senha */
.div_recuperar_senha{
margin-top: 12px;
padding: 10px;
background-color: #f1f1f1;
text-align: center;
}
/* retira o sublinhado do link */
.div_recuperar_senha a{
text-decoration: none;
color: black;
}
/* define as regras de responsividade para as
telas menores */
@media screen and (max-width: 600px) {
.div_principal{
width: 100%;
}
}
E aqui está o código JavaScript que permite exibir ou ocultar a senha do usuário:
<script type="text/javascript">
function exibir_ocultar_senha(){
// obtém uma referência ao campo senha
const txt_senha = document.getElementById("senha");
// obtém uma referência à imagem indicativa
const imagem = document.getElementById("
imagem_exibir_ocultar");
// mudamos o type do campo senha
const type = senha.getAttribute('type');
if(type === 'password'){
senha.setAttribute('type', 'text');
imagem.src = "imagens/olho_exibir.png";
}
else{
senha.setAttribute('type', 'password');
imagem.src = "imagens/olho_ocultar.png";
}
}
</script>
Gostou? Agora é só baixar o código completo e adicionar estes recursos às páginas web. Código fonte formulário de login em HTML, CSS e JavaScriptResponsivo 1) FLHCJEOS1 - Código fonte formulário de login em HTML, CSS e JavaScript Responsivo - Faça o download do Código fonte formulário de login em HTML, CSS e JavaScript Responsivo. Não se esqueça: Uma boa forma de estudar o código é fazendo pequenas alterações e rodando para ver os resultados. Outra opção é começar um projeto HTML do zero e ir adicionando trechos do código fonte para melhor entendimento de suas partes. |
LISP ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular MDC em Lisp usando a função GCDQuantidade de visualizações: 960 vezes |
|
Atualmente a definição de Máximo Divisor Comum (MDC) pode ser assim formalizada: Sejam a, b e c números inteiros não nulos, dizemos que c é um divisor comum de a e b se c divide a (escrevemos c|a) e c divide b (c|b). Chamaremos D(a,b) o conjunto de todos os divisores comum de a e b. Podemos calcular o Máximo Divisor Comum na linguagem Common Lisp usando a função GCD. Esta função aceita um número ilimitado de valores inteiros e retorna seu Máximo Divisor Comum. Veja um trecho de código Common Lisp no qual pedimos para o usuário informar dois números inteiros e, em seguida, fazemos uso da função GCD para retornar o MDC: ; variáveis que vamos usar no programa (let ((num1)(num2)(mdc)) ; Vamos ler o primeiro número (princ "Informe o primeiro número: ") ; talvez o seu compilador não precise disso (force-output) ; atribui o valor lido à variável num1 (setq num1 (read)) ; Vamos ler o segundo número (princ "Informe o segundo número: ") ; talvez o seu compilador não precise disso (force-output) ; atribui o valor lido à variável num2 (setq num2 (read)) ; Vamos obter o MDC dos dois números informados (setq mdc (gcd num1 num2)) ; E mostramos o resultado (format t "O Máximo Divisor Comum é: ~D" mdc) ) Ao executarmos este código Common Lisp nós teremos o seguinte resultado: Informe o primeiro número: 9 Informe o segundo número: 12 O Máximo Divisor Comum é: 3 |
Delphi ::: VCL - Visual Component Library ::: TStringGrid |
Como usar o evento OnDrawCell para controlar o desenho das células em um TStringGrid do DelphiQuantidade de visualizações: 16489 vezes |
O evento OnDrawCell, definido originalmente na classe TCustomDrawGrid, é disparado quando uma determinada célula do TStringGrid precisa ser desenhada. Este evento possui a seguinte assinatura:property OnDrawCell: TDrawCellEvent; O tipo Grids.TDrawCellEvent apresenta, no Delphi 2009, a seguinte lista de parâmetros: TDrawCellEvent = procedure(Sender: TObject; ACol, ARow: Longint; Rect: TRect; State: TGridDrawState) of object; Vamos ver cada um destes parâmetros separadamente: Sender - Representa a grid na qual a célula está sendo desenhada; ACol, ARow - Índices da coluna e linha na qual a célula está sendo desenhada; Rect - Localização da célula na área de desenho (canvas); State - Um objeto Grids.TGridDrawState que indica se a célula possui o foco (gdFocused), está selecionada (gdSelected) e se a mesma é uma célula fixa (gdFixed). Células fixas permanecem vísiveis quando as barras de rolagem são acionadas. Veja um trecho de código no qual usamos o evento OnDrawCell para colorir de amarelo o fundo de uma determinada célula do TStringGrid:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
conteudo: String;
begin
// vamos obter o conteúdo da célula
conteudo := StringGrid1.Cells[ACol, ARow];
// vamos colorir a célula na segunda linha e terceira
// coluna com o fundo amarelo
if (ACol = 2) and (ARow = 1) then
begin
StringGrid1.Canvas.Brush.Color := clYellow;
StringGrid1.Canvas.FillRect(Rect);
StringGrid1.Canvas.TextRect(Rect, Rect.Left, Rect.Top,
conteudo);
end;
end;
Para este exemplo deixei o valor da propriedade DefaultDrawing do TStringGrid como true. Isso faz com que o fundo da célula seja pintado antes que o evento DrawCell seja chamado e o efeito 3D das células fixas seja exibido ou o retângulo de foco ao redor da célula que possui o foco no momento seja desenhado após o evento. Experimente executar o exemplo com o valor false para a propriedade DefaultDrawing para ver o resultado. Veja agora um trecho de código no qual definimos a cor vermelha para o texto das células cujo valor inteiro seja menor que 10:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
conteudo: String;
begin
// vamos obter o conteúdo da célula
conteudo := StringGrid1.Cells[ACol, ARow];
// vamos definir a cor vermelha para o texto das células
// contendo valores menores que 10
if (conteudo <> '') and (StrToInt(conteudo) < 10) then
begin
StringGrid1.Canvas.Font.Color := clRed;
StringGrid1.Canvas.FillRect(Rect);
StringGrid1.Canvas.TextRect(Rect, Rect.Left, Rect.Top,
conteudo);
end;
end;
Tenha cuidado para que o valor da célula possa ser convertido para inteiro por meio do uso da função StrToInt(). Caso a conversão não for possível, uma exceção do tipo EConvertError será lançada. |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Fenômenos dos Transportes, Hidráulica e Drenagem |
Exercício Resolvido de Python - Determine a vazão escoada em um canal com seção retangular, com lâmina d´água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por KmQuantidade de visualizações: 712 vezes |
|
Exercício Resolvido de Python - Determine a vazão escoada em um canal com seção retangular, com lâmina d'água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por Km Pergunta/Tarefa: Python para Fenômenos dos Transportes, Hidráulica e Drenagem. Python para cálculo de vazão em condutos livres. Fórmula de Manning para a velocidade de escoamento. Neste exercício em Python veremos como calcular a vazão de um canal com seção retangular. Para isso nós vamos usar a Equação de Manning da velocidade do escoamento. Determine a vazão escoada em um canal com seção retangular, com lâmina d'água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por Km. Utilize η=0,012. ![]() Sua saída deverá ser parecida com: Informe a Largura da Base do Canal (em metros): 3 Informe a Profundidade do Escoamento (em metros): 2 Informe a Declividade do Canal (em metros por km): 0.2 Informe o Coeficiente de Rugosidade do Canal: 0.012 A Área Molhada do Canal é: 6.0 m2 O Perímetro Molhado do Canal é: 7.0 m O Raio Hidráulico do Canal é: 0.8571428571428571 m A Velocidade do Escoamento é: 1.0634144533132281 m/s A Vazão do Canal é: 6.380486719879369 m3/s Veja a resolução completa para o exercício em Python, comentada linha a linha:
# vamos importar o módulo Math
import math
# método principal
def main():
# vamos ler a largura do canal em metros
b = float(input("Informe a Largura da Base do Canal (em metros): "))
# vamos ler a profundida do escoamento em metros
h = float(input("Informe a Profundidade do Escoamento (em metros): "))
# vamos obter a declividade do canal em metros por quilômetros
I = float(input("Informe a Declividade do Canal (em metros por km): "))
# vamos converter a declividade em metro por metro
I = I / 1000.0
# vamos ler o coeficiente de rugosidade do canal
n = float(input("Informe o Coeficiente de Rugosidade do Canal: "))
# vamos calcular a área molhada
am = b * h
# agora vamos calcular o perímetro molhado
pm = b + 2 * h
# finalmente calculamos o raio hidráulico
rh = am / pm
# agora vamos usar a equação de manning para calcular a velocidade do escoamento
v = math.pow(rh, 2.0 / 3.0) * (math.sqrt(I) / n)
# finalmente calculamos a vazão do canal
Q = am * v
# e mostramos os resultados
print("\nA Área Molhada do Canal é: {0} m2".format(am))
print("O Perímetro Molhado do Canal é: {0} m".format(pm))
print("O Raio Hidráulico do Canal é: {0} m".format(rh))
print("A Velocidade do Escoamento é: {0} m/s".format(v))
print("A Vazão do Canal é: {0} m3/s".format(Q))
if __name__== "__main__":
main()
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







