![]() |
|
|
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 Controls (Controles de Dados) ::: TDBGrid |
Como obter a quantidade de linhas em um controle TDBGrid do Delphi (duas formas)Quantidade de visualizações: 11127 vezes |
A quantidade de linhas em um controle TDBGrid pode ser obtida de duas formas diferentes. A primeira consiste em fazer uma conversão de TDBGrid para TStringGrid e usar a propriedade RowCount. Veja:
procedure TForm3.Button3Click(Sender: TObject);
var
quantLinhas: Integer;
begin
// vamos obter a quantidade de linhas no DBGrid
quantLinhas := TStringGrid(DBGrid1).RowCount;
// vamos mostrar o resultado
ShowMessage('O DBGrid possui ' + IntToStr(quantLinhas) + ' linhas.');
end;
Ao executar este código você verá um mensagem parecida com: "O DBGrid possui 5 linhas." Note que a propriedade RowCount inclui a linha reservada aos títulos das colunas do DBGrid, ou seja, uma linha a mais que a quantidade de registros no controle. A segunda forma de se obter a quantidade de linhas no DBGrid consiste em obter a quantidade de registros no TDataSet no qual o DBGrid está conectado por meio de sua propriedade DataSource. Veja como isso pode ser feito:
procedure TForm3.Button3Click(Sender: TObject);
var
quantLinhas: Integer;
begin
// vamos obter a quantidade de linhas no DBGrid
quantLinhas := DBGrid1.DataSource.DataSet.RecordCount;
// vamos mostrar o resultado
ShowMessage('O DBGrid possui ' + IntToStr(quantLinhas) + ' linhas.');
end;
Veja que aqui nós usamos a propriedade RecordCount para obter a quantidade de registros no DataSet. Note que agora a contagem de linhas não inclui a linha reservada para os títulos das colunas. Esta dica foi escrita e testada no Delphi 2009. |
C++ ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar o operador condicional (operador ternário) da linguagem C++ - C++ para iniciantesQuantidade de visualizações: 27337 vezes |
A linguagem C++ fornece um operador condicional, também chamado de operador ternário) que é muito semelhante a um bloco if...else. Este operador aceita três operandos. O primeiro operando é uma condição, o segundo é valor para a expressão condicional se o resultado do teste for true. O terceiro operando é o valor para a expressão condicional caso o resultado do teste for false. Veja um exemplo:int valor = 10; cout << (valor >= 5 ? "Maior ou igual a 5" : "Menor que 5"); Este trecho de código pode ser escrito usando if...else da seguinte forma: int valor = 10; if(valor >= 5) cout << "Maior ou igual a 5"; else cout << "Menor que 5"; O operador condicional pode ser resumido na seguinte estrutura: Exp1 ? Exp2 : Exp3 A expressão Exp1 é avaliada. Se esta resultar verdadeira, a expressão Exp2 se torna o resultado da operação. Se a expressão Exp1 resultar falso, a expressão Exp3 se torna o resultado da operação. Veja mais um exemplo: int valor = 5; // usando o operador condicional I bool res = (valor > 10 ? true : false); // usando o operador condicional II (res ? cout << "Verdadeiro" : cout << "False"); |
C++ ::: Dicas & Truques ::: Ponteiros, Referências e Memória |
Como usar ponteiros em C++ - Apostila de C++ para iniciantesQuantidade de visualizações: 8432 vezes |
|
Antes de pensarmos em ponteiros, é importante nos lembrarmos de alguns aspectos referentes à variáveis. Dependendo do seu conhecimento de programação, você deve saber que variáveis possuem nomes que as identificam durante a execução do programa. Você deve saber também que uma variável armazena um valor (que pode ser fixo, no caso de uma constante, ou pode mudar durante a execução de seus códigos). O que poucos programadores se lembram é que uma variável possui um endereço, e que o nome da variável não é nada mais que um apelido para a localização deste endereço. Desta forma, um ponteiro não é nada mais que um tipo especial de variável que armazena o endereço de outra. Veja um exemplo:
#include <iostream>
using namespace std;
int main(int argc, char *argv[]){
// variável do tipo int
int valor = 10;
// ponteiro para uma variável do tipo int
int *p = &valor;
// exibe o valor da variável "valor", apontada
// pelo ponteiro p
cout << *p << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Neste código nós temos a declaração e definição de duas variáveis: int valor = 10; int *p = &valor; A primeira variável é uma variável do tipo int e a segunda é um ponteiro para uma variável do tipo int. Veja que devemos sempre usar "*" antes do nome de um ponteiro em sua declaração. O símbolo "&" serve para indicar que estamos acessando o endereço de uma variável e não o seu conteúdo. O resultado destas duas linhas é que agora temos um ponteiro que nos permite acessar e manipular a variável valor. Observe a linha: cout << *p << endl; Aqui nós estamos acessando o valor da variável apontada por p. Veja o uso do símbolo "*" para acessar o valor da variável. Isso é chamado de desreferenciamento de ponteiros. Pareceu complicado? Veja uma linha de código que altera indiretamente o valor da variável valor para 30: *p = 30; Ponteiros são ferramentas muito importantes na programação em C++. No entanto, é preciso ter muito cuidado ao lidar com eles. A primeira coisa a ter em mente é que um ponteiro não está apontando para nenhum lugar até que atribuimos a ele o endereço de uma outra variável. E é aí que mora o perigo. Um programa entra em colapso absoluto se tentarmos acessar um ponteiro que aponta para um local de memória que já foi liberado novamente ao sistema. No caso menos grave, estaremos tentando acessar locais de memória inválidos ou reservados a outros programas ou tarefas do sistema operacional. Isso me lembra os velhos tempos da tela azul de morte. |
Java ::: Dicas & Truques ::: Gráficos |
Como desenhar em um JComponent do Java Swing (JLabel, JButton, JPanel, etc) usando o método paintComponent()Quantidade de visualizações: 10498 vezes |
|
A classe JComponent possui um método chamado paintComponent(Graphics g) que recebe um objeto da classe Graphics que pode ser usado para desenhar na superfície do componente. Desta forma, qualquer componente que herda de JComponent pode ser usado para esta finalidade. Para demonstrar como isso é feito, veja um trecho de código no qual desenhamos uma linha em um JLabel e o anexamos à janela do aplicativo. Observe a criação de uma classe personalizada que herda de JLabel:
import java.awt.*;
import javax.swing.*;
public class Estudos extends JFrame{
public Estudos() {
super("Desenhando em um JLabel");
Container c = getContentPane();
// Cria o JLabel
MinhaLabel label = new MinhaLabel();
c.add(label);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(
JFrame.EXIT_ON_CLOSE);
}
}
// classe personalizada que permite desenhar
class MinhaLabel extends JLabel{
protected void paintComponent(Graphics g){
super.paintComponent(g);
g.drawLine(0, 0, 200, 200);
}
}
|
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se uma string é null ou vazia em C# usando a função IsNullOrEmpty() da classe StringQuantidade de visualizações: 24063 vezes |
|
Em algumas situações nós queremos verificar se uma variável do tipo string está null ou vazia (não contém nem mesmo o caractere de espaço ou quebra de linha). Para isso nós podemos usar o método IsNullOrEmpty() da classe String da linguagem C#. Veja um trecho de código no qual temos uma string nula e uma string vazia. Observe os resultados retornados pela função:
using System;
namespace Estudos {
class Program {
static void Main(string[] args) {
string palavra1 = null;
string palavra2 = "";
if (String.IsNullOrEmpty(palavra1)) {
Console.WriteLine("palavra1 é null ou vazia");
}
if (String.IsNullOrEmpty(palavra2)) {
Console.WriteLine("palavra2 é null ou vazia");
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: palavra1 é null ou vazia palavra2 é null ou vazia |
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 |



