![]() |
|
|
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 - Fundações |
||
|
||
|
|
||
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de Python - Escreva um programa Python que leia os elementos de um vetor A de dez elementos inteiros e construa outro vetor BQuantidade de visualizações: 637 vezes |
|
Pergunta/Tarefa: Escreva um programa Python que leia os elementos de um vetor A de dez elementos inteiros e construa outro vetor B com seus elementos distribuídos da seguinte forma: Vetor A = [8, 5, 4, 1, 2, 3, 4, 6, 9, 7] Vetor B = [24, 10, 12, 2, 6, 6, 12, 12, 27, 14] Note que os elementos do vetor B seguem um padrão. Se o elemento do vetor A estiver em uma posição par, então o elemento do vetor B será o triplo do elemento do vetor A. Caso contrário o elemento do vetor B será o dobro do elemento do vetor A. Neste exercício a primeira posição/índice dos vetores é assumida como sendo zero. Em algumas linguagens de programação o primeiro índice é um e não zero. Sua saída deverá ser parecida com: Informe o valor do 1.o elemento: 8 Informe o valor do 2.o elemento: 5 Informe o valor do 3.o elemento: 4 Informe o valor do 4.o elemento: 1 Informe o valor do 5.o elemento: 2 Informe o valor do 6.o elemento: 3 Informe o valor do 7.o elemento: 4 Informe o valor do 8.o elemento: 6 Informe o valor do 9.o elemento: 9 Informe o valor do 10.o elemento: 7 Elementos do vetor A: 8, 5, 4, 1, 2, 3, 4, 6, 9, 7 Elementos do vetor B: 24, 10, 12, 2, 6, 6, 12, 12, 27, 14 Veja a resolução comentada deste exercício em Python:
# função principal do programa
def main():
# vamos declarar e construir dois vetores de 10 inteiros
vetor_a = [0 for x in range(10)]
vetor_b = [0 for x in range(10)]
# agora vamos pedir para o usuário informar os valores
# dos elementos do vetor A
for i in range(len(vetor_a)):
vetor_a[i] = int(input("Valor do %d.o elemento: " % ((i + 1))))
# vamos construir o vetor B
for i in range(len(vetor_b)):
# o índice atual é par?
if i % 2 == 0:
vetor_b[i] = vetor_a[i] * 3
else:
vetor_b[i] = vetor_a[i] * 2
# vamos mostrar os elementos do vetor A
print("\nElementos do vetor A:\n")
for i in range(len(vetor_a)):
print("%d, " % vetor_a[i], end=' ')
# vamos mostrar os elementos do vetor B
print("\n\nElementos do vetor B:\n")
for i in range(len(vetor_b)):
print("%d, " % vetor_b[i], end=' ')
if __name__== "__main__":
main()
|
C++ ::: Dicas & Truques ::: Input e Output (Entrada e Saída) |
Como ler entrada do usuário em C++ usando a função global getline() da classe stringQuantidade de visualizações: 13162 vezes |
|
Nesta dica mostrarei como é possível usar a função global getline() da classe string da linguagem C++ para ler a entrada do usuário. Veja a assinatura que usaremos: istream& getline(istream& is, string& str); Esta função extrai os caracteres do fluxo de entrada (is) e os armazena na string fornecida como argumento (str). Veja o código completo:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
string nome;
cout << "Por favor, informe o seu nome: ";
getline(cin, nome);
cout << "Seu nome é: " << nome << "\n\n";
system("PAUSE"); // pausa o programa
return 0;
}
Ao executarmos este código nós teremos o seguinte resultado: Por favor, informe o seu nome: Osmar J. Silva Seu nome é: Osmar J. Silva Pressione qualquer tecla para continuar... |
PHP ::: Dicas & Truques ::: Data e Hora |
Como adicionar ou somar dias a uma data usando a função mktime() do PHPQuantidade de visualizações: 15 vezes |
|
Nesta dica que mostrarei como é possível usar a função mktime() do PHP para adicionar dias a uma data. O truque aqui é construir uma nova data a partir da data atual e somar a quantidade de dias que queremos ao quinto argumento fornecido para a função mktime(). Quando fazemos isso, a própria função de encarrega de montar todo o resto e nos fornecer a nova data. Veja o código completo para o exemplo:
<html>
<head>
<title>Estudos PHP</title>
</head>
<body>
<?php
echo "Hoje é: " . date("d/m/Y") . "<br>";
$proxima_data = mktime(0, 0, 0, date("m"),
date("d") + 20, date("Y"));
echo "Daqui 20 dias será: " . date("d/m/Y",
$proxima_data);
?>
</body>
</html>
Ao executar este código nós teremos o seguinte resultado: Hoje é: 10/03/2021 Daqui 20 dias será: 30/03/2021 |
C++ ::: Dicas & Truques ::: Arquivos e Diretórios |
Como criar diretórios em C++ usando a função mkdir()Quantidade de visualizações: 10938 vezes |
Em algumas situações nossos códigos C++ precisam criar diretórios. Isso pode ser feito com o auxílio da função mkdir(), disponível no header direct.h (trazido da linguagem C). Veja a assinatura desta função:int _mkdir(const char *pathname); Veja um trecho de código C++ no qual criamos um diretório no mesmo diretório do executável.
#include <iostream>
#include <direct.h>
using namespace std;
int main(int argc, char *argv[]){
// vamos criar o diretório
char diretorio[] = "estudos";
// vamos testar se houve erro na criação do diretório
if(mkdir(diretorio) == -1){
cout << "Erro: " << strerror(errno) << endl;
}
else{
cout << "Diretório criado com sucesso" << endl;
}
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
É possível usar a versão Unicode de mkdir(), ou _mkdir(). O método _wmkdir(), também presente em direct.h é útil quando precisamos internacionalizar nossas aplicações. Veja o exemplo:
#include <iostream>
#include <direct.h>
using namespace std;
int main(int argc, char *argv[]){
// vamos criar o diretório
wchar_t diretorio[] = L"C:\\Dev-Cpp\\estudos";
// vamos testar se houve erro na criação do diretório
if(_wmkdir(diretorio) == -1){
cout << "Erro: " << strerror(errno) << endl;
}
else{
cout << "Diretório criado com sucesso" << endl;
}
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Note que agora eu troquei o tipo char por wchar_t e usei o sinalizado L antes da atribuição da string. |
Java ::: Java Swing - Gerenciadores de Layout ::: GridBagLayout |
Como criar uma tela de login usando o gerenciador de layout GridBagLayout do Java SwingQuantidade de visualizações: 36537 vezes |
|
Temos que aceitar o fato de que o uso de uma IDE visual facilita muito o trabalho de criação de interfaces gráficas (GUI). Contudo, é muito bom poder escrever telas via código mesmo. E o gerenciador de layout GridBagLayout possibilita a criação de layouts realmente avançados. O trecho de código abaixo mostra como criar uma tela de login usando este gerenciador. Guarde este código. Ele poder ser útil na criação de outros formulários:
package arquivodecodigos;
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
public class Estudos extends JFrame{
public Estudos(){
super("Tela de login usando GridBagLayout");
// define o layout
setLayout(new GridBagLayout());
// define uma borda para aumentar o espaço
// entre as bordas da janela e o gerenciador
// de layout
((JComponent)getContentPane()).setBorder(
new EmptyBorder(5, 8, 8, 8));
// cria o GridBagConstraints
GridBagConstraints gbc = new GridBagConstraints();
// controla o espaço entre os componentes
// e as linhas do GridBagLayout.
// aqui nós definimos 3 pixels para os
// lados de cima, esquerda, inferior e direita
gbc.insets = new Insets(3, 3, 3, 3);
// adiciona componentes à janela
// esta primeira JLabel ocupará duas células
// na primeira linha
gbc.gridy = 0; // linha
gbc.gridx = 0; // coluna
gbc.gridwidth = 2; // duas células na linha
// alinha o label à esquerda
gbc.anchor = GridBagConstraints.WEST;
JLabel infoLabel = new JLabel("Dados do Usuário:");
// vamos aumentar a fonte da JLabel
infoLabel.setFont(new Font("SansSerif",
Font.BOLD, 14));
// vamos adicionar um espaço extra na parte
// inferior da JLabel
infoLabel.setBorder(
new EmptyBorder(0, 0, 5, 0));
add(infoLabel, gbc);
gbc.gridy = 1; // linha
gbc.gridx = 0; // coluna
gbc.gridwidth = 1;
// cria a label do usuário
JLabel usuarioLabel = new JLabel("Usuário:");
add(usuarioLabel, gbc);
gbc.gridy = 1; // linha
gbc.gridx = 1; // coluna
// cria a JTextField do usuário
JTextField usuarioTxt = new JTextField(13);
add(usuarioTxt, gbc);
gbc.gridy = 2; // linha
gbc.gridx = 0; // coluna
// cria a label da senha
JLabel usuarioSenha = new JLabel("Senha:");
add(usuarioSenha, gbc);
gbc.gridy = 2; // linha
gbc.gridx = 1; // coluna
// cria a JPasswordField da senha
JPasswordField senhaTxt = new JPasswordField(13);
add(senhaTxt, gbc);
gbc.gridy = 3; // linha
gbc.gridx = 1; // coluna
gbc.gridwidth = 2; // duas células na linha
// alinha os botões à direita
gbc.anchor = GridBagConstraints.EAST;
JPanel botoesPanel = new JPanel();
botoesPanel.add(new JButton("Cancelar"));
botoesPanel.add(new JButton("OK"));
add(botoesPanel, gbc);
pack(); // ajusta o tamanho da janela ao
// dos componentes
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Ao executar este código Java Swing nós teremos o seguinte resultado: ![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
JavaScript - Formulários HTML - Como marcar ou desmarcar todas as checkboxes de um formulário HTML de uma só vez usando JavaScript Java - Estruturas de Dados em Java - Como inserir nós no final de uma lista singularmente ligada em Java |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





