![]() |
|
|
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 Python |
||
|
||
|
|
||
Delphi ::: Data Access Controls (Controles de Acesso a Dados) ::: TClientDataSet |
Como obter o número do registro atual em um TClientDataSet do Delphi usando a propriedade RecNoQuantidade de visualizações: 13623 vezes |
|
Em algumas situações gostaríamos de obter o número do registro atual enquanto navegamos pelos registros de um TClientDataSet. Isso pode ser feito por meio da propriedade RecNo (implementada na classe TDataSet e reimplementada na classe TClientDataSet). O retorno da propriedade é sempre um valor inteiro representando o registro atual. Na implementação da classe TClientDataSet, esta propriedade retorna o valor -1 se o componente estiver no estado (State) dsInsert (um novo registro estiver sendo inserido). Veja um trecho de código no qual usamos o evento OnClick de um botão para exibir o número do registro atual em um TClientDataSet:
procedure TForm3.Button3Click(Sender: TObject);
var
nRegistro: Integer;
begin
// obtém o número do registro atual no TClientDataSet
nRegistro := ClientDataSet1.RecNo;
// mostra o resultado
ShowMessage('O número do registro atual é: ' + IntToStr(nRegistro));
end;
Ao executar o código e clicar no botão você verá uma mensagem parecida com: "O número do registro atual é: 5". Esta dica foi escrita e testada no Delphi 2009. |
LISP ::: Desafios e Lista de Exercícios Resolvidos ::: Lisp Básico |
Exercícios Resolvidos de Lisp - Como converter quilômetros em metros, centímetros e milímetros usando LispQuantidade de visualizações: 1426 vezes |
|
Pergunta/Tarefa: Escreva um programa em Common Lisp para converter quilômetros em metros, centímetros e milímetros. Seu programa deverá pedir para o usuário informar a quantidade de quilômetros e exibir as conversões solicitadas. Como sabemos, um Quilômetro = 1000 Metros, 100.000 Centímetros ou 1.000.000 Milímetros. Seu programa deverá exibir uma saída parecida com: Informe a distância em quilômetros: 2.5 Distância em Quilômetros: 2.5 Distância em Metros: 2500.0 Distância em Centímetros: 250000.0 Distância em Milímetros: 2500000.0 Veja a resolução comentada deste exercício usando Common Lisp: ; Variáveis usadas na resolução do problema (let ((quilometros)(metros)(centimetros)(milimetros)) ; vamos ler a quantidade de quilômetros (princ "Informe a distância em quilômetros: ") ; talvez o seu compilador não precise disso (force-output) ; atribui o valor lido à variável quilometros (setq quilometros (read)) ; vamos calcular a distância em metros (setq metros (* quilometros 1000.0)) ; vamos calcular a distância em centímetros (setq centimetros (* quilometros 100000.0)) ; e agora a distância em milímetros (setq milimetros (* quilometros 1000000.0)) ; E mostramos o resultado (format t "Distância em Quilômetros: ~F" quilometros) (format t "~%Distância em Metros: ~F" metros) (format t "~%Distância em Centímetros: ~F" centimetros) (format t "~%Distância em Milímetros: ~F" milimetros) ) |
Python ::: Fundamentos da Linguagem ::: Métodos, Procedimentos e Funções |
Aprenda a programar em Python - Como criar suas próprias funções em PythonQuantidade de visualizações: 18303 vezes |
Funções em Python são definidas usando a palavra-chave def. Tal palavra é seguida pelo nome da função, seguida de um par de parênteses que podem conter os parâmetros da função. Finalmente os dois-pontos (:) finalizam a definição da função. Veja um exemplo:def minhaFuncao(): print "Fui chamada" # chama a função minhaFuncao() Veja agora um exemplo de função com um parâmetro:
def escrever(texto):
print texto
# chama a função
escrever("Gosto de programar em Python")
Em Python, funções podem retornar um resultado para o código chamador usando a palavra-chave return. Veja:
def maior(x, y):
if x > y:
return x
else:
return y
# chama a função
print maior(43, 6)
|
Java ::: Java Swing - Componentes Visuais ::: JList |
Como retornar os índices dos itens selecionados em uma JList de seleção múltipla do Java SwingQuantidade de visualizações: 8775 vezes |
|
Em outra dica desta seção nós vimos como obter e retornar os valores selecionados em uma JList de múltipla seleção do Java Swing. Agora veremos como retornar os índices dos valores selecionados. Para isso nós vamos usar o método getSelectedIndices(), que retorna um vetor (array) de inteiros. Note o uso da constante ListSelectionModel.MULTIPLE_INTERVAL_SELECTION fornecida para o método setSelectionMode() da JList para indicar a forma de seleção que estamos usando no exemplo. Veja o código Java Swing completo para o exemplo:
package estudos;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Estudos extends JFrame{
JList lista;
public Estudos() {
super("A classe JList");
Container c = getContentPane();
c.setLayout(new FlowLayout(FlowLayout.LEFT));
// Cria os itens da lista
String nomes[] = {"Carlos", "Marcelo", "Fabiana",
"Carolina", "Osmar"};
// Cria a JList
lista = new JList(nomes);
// Define a seleção múltipla para a lista
lista.setSelectionMode(
ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
// Um botão que permite obter os índices do itens
// selecionados
JButton btn = new JButton("Obter índices selecionados");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
int[] indices = lista.getSelectedIndices();
String res = "Índices selecionados:\n";
for(int i = 0; i < indices.length; i++)
res += indices[i] + "\n";
JOptionPane.showMessageDialog(null, res);
}
}
);
// Adiciona a lista à janela
c.add(new JScrollPane(lista));
// Adiciona o botão à janela
c.add(btn);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Lembre-se que as teclas Ctrl ou Shift devem estar pressionadas enquanto escolhemos os itens de uma JList de seleção múltipla. |
C++ ::: Win32 API (Windows API) ::: Processos |
Como usar a função EnumProcesses() da WinAPI em seus códigos C++ para obter os identificadores de cada processo ativo no WindowsQuantidade de visualizações: 8990 vezes |
A função EnumProcesses() pode ser usada quando queremos obter os ids de todos os processos sendo executados no momento no Windows. Veja o protótipo desta função:BOOL WINAPI EnumProcesses( DWORD* pProcessIds, DWORD cb, DWORD* pBytesReturned ); Esta função possui três parâmetros: a) DWORD* pProcessIds - Um ponteiro para uma matriz que receberá a lista de identificadores dos processos. É importante definir uma matriz um pouco grande, visto que não sabemos de antemão quantos processos serão retornados. b) DWORD cb - O tamanho da matriz pProcessIds em bytes. c) DWORD* pBytesReturned - O números de bytes retornados na matriz pProcessIds. Podemos facilmente saber quantos processos foram encontrados simplesmente dividindo o número de bytes retornados pela quantidade de bytes em um DWORD. Veja um trecho de código no qual listamos os ids de todos os processos sendo executados atualmente.
#include <cstdlib>
#include <iostream>
#include <windows.h>
#include <psapi.h>
/*
Este exemplo usa o header <psapi.h>
É necessário fazer uma referência à psapi.lib
*/
using namespace std;
int main(int argc, char *argv[]){
DWORD processos[1024]; // vamos listar até 1024 processos
DWORD pBytesReturned; // bytes retornados pela função EnumProcesses()
// vamos listar os processos
EnumProcesses(processos, sizeof(processos), &pBytesReturned);
// quantidade de processos retornados
int retornados = pBytesReturned / sizeof(DWORD);
// agora vamos listar os ids dos processos retornados
for(int i = 0; i < retornados; i++){
if(!processos[i] == 0){
cout << "Processo " << (i + 1) << ": " << processos[i] << endl;
}
}
system("PAUSE");
return EXIT_SUCCESS;
}
O id de um processo pode ser fornecido para muitas funções úteis do Windows, entre elas OpenProcess(). Veja um trecho de código no qual fechamos (forçadamente) um processo mediante o fornecimento de seu id:
#include <cstdlib>
#include <iostream>
#include <windows.h>
using namespace std;
int main(int argc, char *argv[]){
// vamos fechar o processo com o id 3040
// CUIDADO: Verifique o id do processo antes de fechá-lo
// pode ser que você esteja fechando processos essenciais
// para o bom funcionamento do Windows
// vamos abrir o processo desejado
// vai retornar ERROR_INVALID_HANDLE se o processo não
// puder ser aberto
HANDLE hProcesso = OpenProcess(PROCESS_TERMINATE, 0, 3040);
// vamos fechar o processo
if(TerminateProcess(hProcesso, 0)){
cout << "Processo finalizado com sucesso." << endl;
}
else{
cout << "Erro ao finalizar o processo: " <<
GetLastError() << endl;
}
// vamos fechar o handle do processo
CloseHandle(hProcesso);
system("PAUSE");
return EXIT_SUCCESS;
}
|
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




