Você está aqui: Cards de Engenharia Civil - Estruturas de Aço e Madeira |
||
|
||
|
|
||
Delphi ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular desvio padrão em Delphi - Delphi para Matemática e EstatísticaQuantidade de visualizações: 2382 vezes |
|
Em Matemática e Estatística, o Desvio padrão (em inglês: Standard Deviation) é uma medida de dispersão, ou seja, é uma medida que indica o quanto um conjunto de dados é uniforme. Quando o desvio padrão é baixo, isso quer dizer que os dados do conjunto estão mais próximos da média. Como calcular o desvio padrão de um conjunto de dados? Vamos começar analisando a fórmula mais difundida na matemática e na estatística: \[\sigma = \sqrt{ \frac{\sum_{i=1}^N (x_i -\mu)^2}{N}}\] Onde: a) __$\sigma__$ é o desvio; b) __$x_i__$ é um valor qualquer no conjunto de dados na posição i; c) __$\mu__$ é a média aritmética dos valores do conjunto de dados; d) N é a quantidade de valores no conjunto. O somatório dentro da raiz quadrada nos diz que devemos somar todos os elementos do conjunto, desde a posição 1 até a posição n, subtrair cada valor pela média do conjunto e elevar ao quadrado. Obtida a soma, nós a dividimos pelo tamanho do conjunto. Veja o código Delphi completo que obtém o desvio padrão a partir de um conjunto de dados contendo quatro valores:
// Algoritmo Delphi para calcular desvio padrão
program estudos_delphi;
{$APPTYPE CONSOLE}
uses
SysUtils, Math;
var
// conjunto de dados
conjunto: array[1..4] of double = (10, 30, 90, 30);
soma: double; // Soma dos elementos
desvio_padrao: double; // Desvio padrão
tam: integer; // Tamanho dos dados
media: double; // média
i: integer;
begin
soma := 0.0;
desvio_padrao := 0.0;
tam := 4;
// vamos somar todos os elementos
for i := 1 to tam do
begin
soma := soma + conjunto[i];
end;
// agora obtemos a média do conjunto de dados
media := soma / tam;
// e finalmente obtemos o desvio padrão
for i := 1 to tam do
begin
// não esqueça de adicionar a unit Math
desvio_padrao := desvio_padrao + Power(conjunto[i] - media, 2);
end;
// mostramos o resultado
WriteLn('Desvio Padrão Populacional: ' + FloatToStr(Sqrt(desvio_padrao / tam)));
WriteLn('Desvio Padrão Amostral: ' + FloatToStr(Sqrt(desvio_padrao / (tam - 1))));
WriteLn;
Write('Pressione Enter para sair...');
ReadLn;
end.
Ao executar este código Delphi nós teremos o seguinte resultado: Desvio Padrão Populacional: 30.0 Desvio Padrão Amostral: 34.64101615137755 Veja que, para calcular o Desvio Padrão Populacional, nós dividimos o somatório pela quantidade de elementos no conjunto, enquanto, para calcular o Desvio Padrão Amostral, nós dividimos o somatório pela quantidade de elementos - 1 (cuidado com a divisão por zero no caso de um conjunto com apenas um elemento). |
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como obter o índice do item selecionado em uma ListBox do Delphi usando a propriedade ItemIndex da classe TListBoxQuantidade de visualizações: 15405 vezes |
Muitas vezes precisamos saber o índice do item atualmente selecionado em uma ListBox. Para isso podemos obter o valor da propriedade ItemIndex. Esta propriedade retorna um valor inteiro correspondente ao índice do item selecionado. O primeiro item da lista possui o índice 0. Se nenhum item estiver selecionado, ItemIndex retorna -1. Veja o exemplo:
procedure TForm1.Button2Click(Sender: TObject);
var
indice: Integer;
begin
// vamos obter o índice do item selecionado na ListBox
indice := ListBox1.ItemIndex;
// mostra o resultado
ShowMessage('O índice do item selecionado é: '
+ IntToStr(indice));
end;
Note que esta propriedade não se aplica às ListBoxes de seleção múltipla. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Dicas & Truques ::: Formatação de datas, strings e números |
Como usar o método format() da classe NumberFormat do Java para formatar um valor float ou double de acordo com as configurações regionais - RevisadoQuantidade de visualizações: 11613 vezes |
|
Nesta dica mostrarei como usar o método format() da classe NumberFormat da linguagem Java. Esta classe está no pacote java.text e é usada para a formatação e análise de valores numéricos. Note como usei o método getInstance() sem argumentos. Isso nos permite retornar uma instância de NumberFormat de acordo com as configurações regionais da máquina na qual o código está sendo executado. Veja o código completo:
package arquivodecodigos;
import java.text.NumberFormat;
public class Estudos{
public static void main(String[] args){
// vamos double a ser formatado
double valor = 1234567.89;
// vamos obter uma instância de acordo com as configurações
// regionais
NumberFormat nf = NumberFormat.getInstance();
// e agora usamos o método format() para formatar
String numFormatado = nf.format(valor);
// exibimos o valor original
System.out.println("Sem formatação: " + valor);
// com formatação
System.out.println("Com formatação: " + numFormatado);
}
}
Ao executar este código nós teremos o seguinte resultado: Sem formatação: 1234567.89 Com formatação: 1.234.567,89 Esta dica foi revisada e testada no Java 8. |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Operadores de Manipulação de Bits (Bitwise Operators) |
Exercícios Resolvidos de C - Como converter de decimal para binário usando os operadores de bits em CQuantidade de visualizações: 1332 vezes |
|
Pergunta/Tarefa: Escreva um programa C para pede para o usuário informar um número decimal e faça a conversão para binário usando os operadores de bits. Sua saída deverá ser parecida com: Informe um número decimal: 9 O número binário é: 00000000000000000000000000001001 Veja a resolução completa para o exercício em C, comentada linha a linha:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
// vamos definir o tamanho do vetor para guardar
// os dígitos do número binário
#define TAM_INT sizeof(int) * 8
int main(int argc, char *argv[]){
// variáveis para ajudar a resolver o problema
int decimal, indice, i;
// vetor para guardar o número binário
int binario[TAM_INT];
setlocale(LC_ALL,""); // para acentos do português
// vamos pedir para o usuário informar um decimal inteiro
printf("Informe um número decimal: ");
scanf("%d", &decimal);
// ajustamos índice para o último elemento do vetor
indice = TAM_INT - 1;
// enquanto índice for maior ou igual a 0
while(indice >= 0){
// vamos guardar o bit menos significativo LSB
binario[indice] = decimal & 1;
// diminuímos o índice
indice--;
// desloca bits para a direita uma posição
decimal = decimal >> 1;
}
// agora vamos exibir o número binário
printf("O número binário é: ");
for(i = 0; i < TAM_INT; i++){
printf("%d", binario[i]);
}
printf("\n\n");
system("PAUSE");
return 0;
}
|
Ruby ::: Dicas & Truques ::: Strings e Caracteres |
Como contar as ocorrências de uma substring em uma string em Ruby usando a função scan()Quantidade de visualizações: 8685 vezes |
Podemos obter a quantidade de vezes em que uma substring aparece em uma string Ruby usando o método scan() da classe String. Este método nos permite executar um bloco de código a cada vez que a substring fornecida a ele for encontrada. Veja o exemplo:
# declara e inicializa uma variável string
frase = "Ruby? Gosto muito de Ruby"
puts "A frase é: " + frase
# vamos obter a quantidade de vezes em que a
# substring "Ruby" aparece na frase
quant = 0
substring = "Ruby"
frase.scan(substring){quant = quant + 1}
# exibe o resultado
puts "A substring \"Ruby\" aparece " + quant.to_s \
+ " vezes"
Ao executarmos este código Ruby nós teremos o seguinte resultado: A frase é: Ruby? Gosto muito de Ruby A substring "Ruby" aparece 2 vezes |
Desafios, Exercícios e Algoritmos Resolvidos de Ruby |
Veja mais Dicas e truques de Ruby |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






