![]() |
|
|
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 |
||
|
||
|
|
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Como calcular lucro mensal de uma empresa em Java - O lucro de uma empresa é dado por L(x) = 10x - 5000, onde x é a quantidadeQuantidade de visualizações: 1078 vezes |
|
Pergunta/Tarefa: O lucro de uma empresa é dado por L(x) = 10x - 5000, onde x é a quantidade de produtos vendidos num determinado mês e 5000 são os custos de execução do trabalho da empresa. Escreva um programa Java que leia a quantidade de produtos vendidos como um número inteiro e calcule e mostre o lucro mensal dessa empresa. Sua saída deverá ser parecida com: Informe a quantidade de produtos vendidos: 950 O lucro da empresa foi: R$ 4500.0 Veja a resolução comentada deste exercício usando Java:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// variáveis usadas na resolução do problema
int quant_produtos_vendidos;
double lucro;
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos pedir a quantidade de produtos vendidos
System.out.print("Informe a quantidade de produtos vendidos: ");
quant_produtos_vendidos = Integer.parseInt(entrada.nextLine());
// vamos calcular o lucro da empresa
lucro = (10 * quant_produtos_vendidos) - 5000;
// e mostramos o resultado
System.out.println("O lucro da empresa foi: R$ " + lucro);
}
}
|
Delphi ::: Data Access Controls (Controles de Acesso a Dados) ::: TClientDataSet |
Como usar o componente TClientDataSet do Delphi em suas aplicações de banco de dadosQuantidade de visualizações: 16427 vezes |
|
Um objeto da classe TClientDataSet implementa um conjunto de dados independente de banco de dados. Este controle representa um conjunto de dados em memória (in-memory). Antes de prosseguirmos, veja a posição desta classe na hierarquia de classes do Delphi:
System.TObject
Classes.TPersistent
Classes.TComponent
DB.TDataSet
DBClient.TCustomClientDataSet
DBClient.TClientDataSet
Um controle TClientDataSet pode ser usado das seguintes formas: a) Um conjunto de dados baseado em arquivo, único e totalmente funcional direcionado a aplicações compostas de apenas uma camada. Quando usado desta forma, o client dataset representa os dados armazenados em um arquivo dedicado na máquina do usuário. b) Um buffer em memória local dos registros de um outro conjunto de dados. O outro conjunto de dados (a fonte dos dados) pode residir no mesmo formulário ou data module que o client dataset (por exemplo, quando o client dataset fornece navegação e edição para os dados de um conjunto de dados unidirecional). O conjunto de dados fonte pode também residir em um sistema separado quando o client dataset apoia a parte cliente de uma aplicação de bancos de dados de múltiplas camadas. A forma mais comum de se usar um controle TClientDataSet é acessando a aba Data Acccess da Tool Palette (Paleta de Ferramentas) e arrastando-o para o seu formulário. Em seguida ajustamos algumas de suas propriedades em tempo de design e pronto. Veja o passo-a-passo para configurar um TClientDataSet para representar uma tabela no banco de dados MySQL (outras dicas minhas mostram como efetuar a conexão com outros bancos de dados): 1) Certifique-se de que o banco de dados MySQL está devidamente configurado e funcionando. Inicie-o, anote o nome de usuário e senha e vamos começar. 2) Vá até a aba de componentes dbExpress e arraste um componente TSQLConnection para o formulário. Este é o componente responsável pela conexão com o banco de dados. Selecione o componente no formulário de forma a acessar suas propriedades no Object Inspector. Em seguida siga atentamente as observações a seguir: a) Vá na propriedade ConnectioName e selecione MySQLConnection. Automaticamente a propriedade Driver é definida como MySQL. A propriedade LibrayName será definida como dbxmys.dll. O mesmo acontece com a propriedade VendorLib, que é definida como libmysql.dll. dbxmys.dll é fornecida com o Delphi enquanto libmysql.dll vem com a instalação do MySQL e deverá estar em C:\Windows\System para que sua aplicação seja executada com sucesso. b) O simples fato de definirmos o valor MySQL para a propriedade ConnectionName faz com que os parâmetros de conexão sejam criados com os valores padrões e guardados na propriedade Params. O próximo passo é alterar estes valores de forma a refletir a realidade do banco de dados que vamos usar. Vá em Params e acione o editor Value List Editor. Em HostName você deverá informar o nome ou IP do servidor MySQL. Se estiver rodando localmente use apenas "localhost". Em Database informe o nome da base de dados, por exemplo, "estoque". Em User_Name informe o usuário do banco de dados. Geralmente é "root". Em Password informe a senha do banco de dados. Pressione OK. c) Vá na propriedade LoginPrompt e altere seu valor para False. Isso evita que a tela de login seja exibida quando tentarmos efetuar a conexão. Agora vá na propriedade Connected e altere seu valor para True. Se correr tudo bem você já estará conectado ao banco de dados MySQL. 3) Agora coloque um componente TSQLDataSet no formulário e defina sua propriedade SQLConnection para o componente TSQLConnection que representa a conexão com o banco de dados. Em seguida defina o valor "ctTable" para a propriedade CommandType. Na propriedade CommandText você deverá informar o nome da tabela que será representada por este TSQLDataSet. Finalmente ajuste a propriedade Active para True. 4) O próximo passo é colocar no formulário um componente TDataSetProvider (na aba Data Access). Este componente é responsável por fazer a conexão com o conjunto de dados (dataset), extrair os dados do SQLDataSet e gerar os comandos de atualização SQL adequados. Assim, informe o valor "SQLDataSet1" para a sua propriedade DataSet. 5) Finalmente chegamos ao componente TClientDataSet. Vá na aba Data Acccess e arraste um TClientDataSet para o formulário. Em seguida informe o valor "DataSetProvider1" para sua propriedade ProviderName. Ajuste sua propriedade Active para True. 6) Hora de exibir e manipular os dados. Vá na aba Data Access e arraste um controle TDataSource para o formulário. Aponte sua propriedade DataSet para "ClientDataSet1". Agora vá na aba Data Controls e arraste um TDBGrid para o formulário. Ajuste sua propriedade DataSource para "DataSource1". Se tudo correu bem, você já verá os registros da tabela serem exibidos no DBGrid. 7) Hora de executar a aplicação. Pressione F9 e vamos ao resultado. Experimente navegar e editar os registros no DBGrid. A aplicação permitirá que você faça isso. No entanto, ao fechar a aplicação e abrí-la novamente você perceberá que as alterações não foram refletidas no banco de dados. Para que isso aconteça, coloque o código abaixo no evento Click de um botão:
procedure TForm3.Button1Click(Sender: TObject);
begin
if (ClientDataSet1.ChangeCount > 0) then
ClientDataSet1.ApplyUpdates(-1);
end;
Pronto. Execute a aplicação novamente e faça modificações nos dados exibidos no DBGrid (é preciso sair da linha de edição para que os dados sejam atualizados no DBGrid). Clique no botão para atualizar os dados na tabela do banco de dados. Feche a aplicação a abra-a novamente. Note que agora os dados foram atualizados com sucesso. Esta dica foi escrita e testada no Delphi 2009. |
Ruby ::: Dicas & Truques ::: Data e Hora |
Como construir uma data e hora em Ruby usando os métodos mktime() e local() da classe TimeQuantidade de visualizações: 7848 vezes |
|
Há situações em que precisamos trabalhar com datas e horas no passado ou futuro em Ruby. Para estas situações nós precisamos construir a data ou a data e a hora. Nesta dica mostrarei como usar os métodos mktime() e local() para esta finalidade. Os métodos mktime() e local() são sinônimos e ambos aceitam os seguintes argumentos: # argumentos para mktime Time.mktime(year [, month, day, hour, min, sec, usec) => time #argumentos para local Time.local(year [, month, day, hour, min, sec, usec]) => time Estes métodos criam um novo objeto Time baseado nos parâmetros fornecidos. As unidades de tempo são fornecidas em ordem inversa do mais longo para o mais curto: ano, mês, dia, horas, minutos, segundos e microsegundos. Todos os parâmetros, exceto ano, são opcionais. Quando não fornecidos, estes parâmetros são automaticamente inicializados com seus menores valores possíveis. O parâmetro de microsegundos (usec) pode ser ignorado em muitas arquiteturas. O valor para as horas deve estar na faixa 0..23 (formato 24 horas). Veja um trecho de código no qual usamos os métodos mktime() e local() para construir uma data e uma data e hora: # constrói uma data usando o método mktime # passando o ano, mês e dia hoje = Time.mktime(2008, 11, 22) # exibe o resultado puts "A data é: " + hoje.to_s # constrói uma data e hora usando o método mktime # passando o ano, mês, dia, horas, minutos e segundos hoje = Time.mktime(2008, 11, 22, 20, 25, 10) # exibe o resultado puts "A data e hora é: " + hoje.to_s Ao executar este código Ruby nós teremos o seguinte resultado: A data é: 2008-11-22 00:00:00 -0300 A data e hora é: 2008-11-22 20:25:10 -0300 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Como testar se um número é positivo ou negativo em JavaQuantidade de visualizações: 14050 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que pede para o usuário informar um número inteiro. Em seguida seu código deverá informar se o número informado é positivo, negativo ou neutro. O zero não é um número positivo nem negativo, já que não é maior nem menor que si mesmo. Por essa razão dizemos que ele é um número neutro. Sua saída deve ser parecida com: Informe um número inteiro: 3 O número 3 é positivo. Informe um número inteiro: -5 O número -5 é negativo. Informe um número inteiro: 0 O número 0 é neutro. Veja a solução comentada deste exercício usando a linguagem Java:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
// vamos ler o número
System.out.print("Informe um número inteiro: ");
int numero = Integer.parseInt(entrada.nextLine());
// o número é positivo?
if(numero > 0){
System.out.println("O número " + numero + " é positivo.");
}
// o número é negativo?
else if(numero < 0){
System.out.println("O número " + numero + " é negativo.");
}
else{ // o número é neutro
System.out.println("O número " + numero + " é neutro.");
}
}
}
|
LISP ::: Desafios e Lista de Exercícios Resolvidos ::: Lisp Básico |
Exercícios Resolvidos de Lisp - Como multiplicar dois números em Lisp - Escreva um programa em Lisp para ler dois números inteiros informadosQuantidade de visualizações: 2296 vezes |
|
Exercício Resolvido de Lisp - Como multiplicar dois números em Lisp - Escreva um programa em Lisp para ler dois números inteiros informados Pergunta/Tarefa: Escreva um programa Common Lisp que solicita ao usuário dois números inteiros e mostre a multiplicação dos dois valores, ou seja, o primeiro valor multiplicado pelo segundo. Sua saída deverá ser parecida com: Informe o primeiro valor: 3 Informe o segundo valor: 7 3 vezes 7 é 21 Veja a resolução completa para o exercício em Common Lisp usando o compilador Steel Bank Common Lisp (SBCL), comentada linha a linha:
; Vamos definir as variáveis que vamos
; usar no programa
(defvar n1)
(defvar n2)
(defvar produto)
; Este o programa principal
(defun Multiplicacao()
; Vamos ler o primeiro valor
(princ "Informe o primeiro valor: ")
; talvez o seu compilador não precise disso
(force-output)
(setq n1 (read))
; Vamos ler o segundo valor
(princ "Informe o segundo valor: ")
; talvez o seu compilador não precise disso
(force-output)
(setq n2 (read))
; Agora vamos efetuar a multiplicação dos
; dois valores informados
(setq produto (* n1 n2))
; E mostramos o resultado
(format t "~D vezes ~D é ~D" n1 n2
produto)
)
; Auto-executa a função Multiplicacao()
(Multiplicacao)
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de LISP |
Veja mais Dicas e truques de LISP |
Dicas e truques de outras linguagens |
|
Java - Java Swing - Como colorir as células de uma JTable individualmente ao passar o mouse sobre elas |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |



