![]() |
|
|
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. |
||
C ::: Dicas & Truques ::: Arquivos e Diretórios |
Apostila de C para iniciantes - Como usar a função fread() da linguagem C para ler todo o conteúdo de um arquivo de uma só vezQuantidade de visualizações: 23547 vezes |
A função fread() se torna muito útil quando precisamos ler grandes blocos ou até mesmo todo o conteúdo de um arquivo. Neste caso, o conteúdo lido é guardado em um buffer para uso posterior. Veja o protótipo desta função:size_t fread(void *ptr, size_t size, size_t count, FILE *stream); Aqui ptr é um ponteiro para o buffer que receberá o conteúdo sendo lido. A capacidade deste buffer deverá ser no mínimo o valor de size multiplicado por count. O parâmetro size é o tamanho em bytes de cada elemento sendo lido. count é o número de elementos a serem lidos e stream é um ponteiro para o arquivo cujo conteúdo será lido. Se a leitura do conteúdo for feita com sucesso, a função fread() retornará a quantidade de elementos lidos com sucesso. No exemplo abaixo estamos lendo caracteres de 1 byte cada. Analise o código cuidadosamente e verá como é fácil modificá-lo para, por exemplo, ler apenas a metade do arquivo de cada vez:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]){
// vamos abrir o arquivo para leitura no modo binário
FILE *arquivo = fopen("dados.txt", "rb");
if(arquivo != NULL){
// vamos obter o tamanho do arquivo em bytes
fseek(arquivo, 0, SEEK_END);
long tam_arquivo = ftell(arquivo);
rewind(arquivo);
// vamos alocar memória para todo o conteúdo do arquivo
char *buffer = (char*)malloc(sizeof(char) * tam_arquivo);
// a memória foi alocada com sucesso?
if(buffer != NULL){
// vamos copiar o conteúdo do arquivo para o buffer
size_t resultado = fread(buffer, 1, tam_arquivo, arquivo);
// vamos verificar se a operação foi feita com sucesso
if(resultado == tam_arquivo){
puts("O conteudo do arquivo foi lido com sucesso\n\n");
// vamos exibí-lo na tela
puts(buffer);
}
}
fclose(arquivo); // fecha o arquivo
free(buffer); // libera a memória do buffer
}
puts("\n\n");
system("PAUSE");
return 0;
}
|
Java ::: Dicas & Truques ::: Formulários e Janelas |
Como definir a cor de fundo para a janela JFrame de sua aplicação Java SwingQuantidade de visualizações: 1547 vezes |
|
Nesta dica mostrarei como é possível definir a cor de fundo para uma janela JFrame. O truque aqui é obter o painel de conteúdo da JFrame usando o método getContentPane() e, em seguida, usar o método setBackground() da classe Container fornecendo a cor desejada. Veja o código completo para o exemplo:
package arquivodecodigos;
import java.awt.*;
import javax.swing.*;
public class Estudos extends JFrame{
public Estudos() {
super("A classe JFrame");
Container c = getContentPane();
c.setLayout(new FlowLayout(FlowLayout.LEFT));
// Define a cor de fundo
c.setBackground(Color.CYAN);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
Java ::: Dicas & Truques ::: Matemática e Estatística |
Regressão linear - Como calcular o coeficiente de correlação linear de Pearson em Java - Java para Machine LearningQuantidade de visualizações: 779 vezes |
![]() No estudo de Machine Learning, uma das primeiras ferramentas que aprendemos é Regressão Linear. E, para o bom entendimento da regressão linear, temos que aprender sobre o coeficiente de correlação linear, mais especificamente o coeficiente de correlação linear de Pearson. A fórmula do coeficiente de correlação linear de Pearson é: \[r_\text{xy} = \frac{n \sum x_i y_i - \sum x_i \sum y_i}{\sqrt{n \sum {x_i}^2 - \left(\sum {x_i}\right)^2} \cdot \sqrt{n \sum {y_i}^2 - \left(\sum {y_i}\right)^2}} \] Onde: x e y são os conjuntos de valores cuja correlação queremos testar. É claro que encontraremos algumas variações desta fórmula na internet e também em livros de estatística, mas o resultado é sempre o mesmo. A correlação de Pearson é uma técnica estatística para medir se duas variáveis estão linearmente relacionadas. Essa técnica também pode ser chamada de r de Pearson, correlação produto-momento de Pearson ou, mais coloquialmente, de correlação de Pearson. O r de Pearson é uma métrica que expressa a relação linear entre variáveis por meio de um número que vai de -1 a +1. Isto é, quanto mais próximo dos extremos (-1 ou +1), maior é a força da correlação. Por outro lado, valores próximos de zero indicam que a correlação é fraca. O sinal da correlação, por sua vez, indica a direção da relação entre variáveis. Se a correlação é positiva, então o aumento em uma variável implica o aumento na outra variável. Por outro lado, se a correlação é negativa, então o aumento em uma variável implica o decréscimo na outra variável. Veja agora o código Java completo no qual calculamps o coeficiente de correlação linear de Pearson a partir de valores x e y, dispostos em dois vetores, ou seja, dois arrays unidimensionais:
package estudos;
public class Estudos {
public static void main(String[] args) {
// vamos criar os vetores com os valores x e y
double x[] = {13, 32, 47, 54, 69, 73};
double y[] = {208, 184, 145, 14, 65, 32};
// as variáveis para os somatórios
double soma_x = 0, soma_y = 0, soma_x_quadrado = 0;
double soma_y_quadrado = 0, soma_x_vezes_y = 0;
// vamos percorrer os vetores e efetuar as somas
for (int i = 0; i < x.length; i++) {
// primeiro o somatório de x
soma_x = soma_x + x[i];
// agora o somatório de y
soma_y = soma_y + y[i];
// então o somatório de x^2
soma_x_quadrado = soma_x_quadrado + Math.pow(x[i], 2);
// e o somatório de y^2
soma_y_quadrado = soma_y_quadrado + Math.pow(y[i], 2);
// e finalmente o somatório de x*y
soma_x_vezes_y = soma_x_vezes_y + x[i] * y[i];
}
// vamos obter a quantidade de valores na observação
int n = x.length;
// e finalmente calculamos o coeficiente de correlação
// linear
double r_xy = ((n * soma_x_vezes_y) - (soma_x * soma_y)) /
(Math.sqrt((n * soma_x_quadrado) - Math.pow(soma_x, 2)) *
Math.sqrt((n * soma_y_quadrado) - Math.pow(soma_y, 2)));
// e mostramos o resultado
System.out.println("O coeficiente de correlação é: " +
r_xy);
}
}
Ao executar este código Java nós teremos o seguinte resultado: O coeficiente de correlação é: -0.8713675107044452 |
C ::: Dicas & Truques ::: Strings e Caracteres |
Como concatenar apenas parte de uma string à outra string usando a função strncat() da linguagem CQuantidade de visualizações: 10408 vezes |
Muitas vezes precisamos adicionar à uma string apenas alguns caracteres de outra, ou seja, não queremos concatenar as duas strings completamente; apenas parte da segunda. Para isso podemos usar a função strncat(). Veja o protótipo e explicação desta função:char *strncat(char *str1, const char *str2, size_t n); Aqui a quantidade n de caracteres da string str2 será anexada ao final da string str1. O caractere de fim de string (null character) da str1 é sobrescrito durante a operação e anexado novamente assim que os caracteres desejados da str2 sejam copiados. Veja um exemplo:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[])
{
char texto[] = "Gosto muito de ";
char palavra[] = "C++";
/*
Na segunda sequencia de caracteres nós temos "C++", mas
queremos anexar à primeira sequencia apenas "C". Veja
como isso é feito
*/
strncat(texto, palavra, 1);
// exibe o resultado
puts(texto);
system("pause");
return 0;
}
Ao executar este códigos nós teremos o seguinte resultado: Gosto muito de C |
Nossas 20 dicas & truques de programação mais populares |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





