![]() |
|
|
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 Ética e Legislação Profissional |
||
|
||
|
|
||
Delphi ::: Dicas & Truques ::: Strings e Caracteres |
Como converter todo o conteúdo de uma string para letras minúsculas usando a função AnsiLowerCase() do DelphiQuantidade de visualizações: 13449 vezes |
Algumas vezes precisamos converter todo o conteúdo de uma string para letras minúsculas. Em Delphi isso pode ser feito com o auxílio da função AnsiLowerCase(). Esta função recebe uma string e retorna outra string com todos os caracteres minúsculos. Veja o exemplo:procedure TForm1.Button1Click(Sender: TObject); var nome: string; begin nome := 'OSMAR'; // vamos converter a string para letras minúsculas nome := AnsiLowerCase(nome); // exibe o resultado ShowMessage(nome); end; Note que esta função suporta caracteres de mais de um byte e com acentuações. Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009. |
LISP ::: Dicas & Truques ::: Passos Iniciais |
O que é Lisp e como escrever seu primeiro programa nessa linguagem de programaçãoQuantidade de visualizações: 2035 vezes |
|
O que é Common Lisp? A linguagem de programação ANSI Common Lisp, ou simplesmente Common Lisp, é uma implementação específica da linguagem de programação Lisp multi-paradigma que suporta programação funcional e procedural. Sua especificação foi criada por Guy L. Steele nos anos 1980 a partir da linguagem Lisp com o intuito de combinar aspectos de diversos dialetos Lisp anteriores, incluindo Scheme. Foi proposto inicialmente o nome de "Standard Lisp" para a linguagem, mas em virtude de um dialeto Lisp já existir com este nome, se buscou um nome similar, resultando no nome "Common Lisp". Em 1994 foi publicada no padrão ANSI Information Technology - Programming Language - Common Lisp, registro X3.226-1994 (R1999). É bem maior e semanticamente mais complexa que Scheme uma vez que foi projetada para ser uma linguagem comercial e ser compatível com os diversos dialetos Lisp dos quais derivou. Como baixar, instalar e testar a Common Lisp no Windows? Embora exista uma quantidade enorme de compiladores Lisp disponíveis atualmente, minha pesquisa recaiu sobre o Steel Bank Common Lisp (SBCL), que pode ser baixado no endereço http://www.sbcl.org. No meu Windows 10 eu baixei o instalador sbcl-2.2.3-x86-64-windows-binary.msi, com o tamanho de 11.7Mb. Finalizada a instalação, vamos testar nossa distribuição do Bank Common Lisp (SBCL). Para isso, abra um janela de terminal e navegue até o diretório de instalação do SBCL: C:\Users\Osmar>cd C:\Program Files\Steel Bank Common Lisp Se você vir um arquivo sbcl.exe dentro deste diretório nós já temos a indicação de que tudo correu bem. Tudo que temos a fazer é chamar este arquivo na linha de comando: C:\Program Files\Steel Bank Common Lisp>sbcL Você verá as seguintes informações na sua tela: This is SBCL 2.2.3, an implementation of ANSI Common Lisp. More information about SBCL is available at <http://www.sbcl.org/>. SBCL is free software, provided as is, with absolutely no warranty. It is mostly in the public domain; some portions are provided under BSD-style licenses. See the CREDITS and COPYING files in the distribution for more information. * Note que o cursor já está esperando comandos, uma vez que estamos no modo interativo. Assim, digite o seguinte comando: * (+ 5 (* 2 4)) Pressione Enter. Se você vir o valor 13, então é sinal de que o SBCL está funcionando 100% e já podemos prosseguir. Para sair do modo interativo do SBCL, digite: * (quit) Como escrever um programa em Common List e carregá-lo no SBCL Agora vamos ver como podemos escrever um programa Common Lisp, salvá-lo em arquivo e carregá-lo a partir do compilador Steel Bank Common Lisp (SBCL). Para isso, abra o seu editor de códigos favorito e digite a seguinte listagem: ; Este programa talvez seja um dos mais básicos ; que podem ser escritos em Common Lisp (defun Primeiro() ; Vamos mostrar uma mensagem de boas-vindas (write-line "Bem-vindo(a) à Common Lisp") ) ; Efetua uma chamada automática ao programa (Primeiro) Para executar este programa, basta chamar o SBCL pela linha de comando, da seguinte forma: C:\Program Files\Steel Bank Common Lisp>sbcl --script C:\estudos_common_lisp\Primeiro.lsp Se o seu código estiver correto, sem nenhum erro de sintáxe, você verá o seguinte texto: Bem-vindo(a) à Common Lisp Pronto! Agora é só aproveitar as nossas dicas, truques e exercícios resolvidos de Common Lisp para aprender ainda mais. Bons estudos. |
C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercício Resolvido de C++ - Escreva um programa em C++ para ler dois números inteiros M e N e, a seguir, imprimir os números paresQuantidade de visualizações: 987 vezes |
|
Pergunta/Tarefa: Escreva um programa em C++ para ler dois números inteiros M e N e, a seguir, imprimir os números pares existentes no intervalo [M, N] e imprimir a multiplicação desses números (os pares). Observe que os valores M e N devem ser fornecidos pelo usuário. Nota: por se tratar de intervalo fechado [M, N], os números M e N devem ser incluídos na amostra. Além disso, seu código deve assegurar que M seja menor que N. Sua saída deverá ser parecida com: Informe o valor de M: 3 Informe o valor de N: 9 Números pares no intervalo [M, N]: 4, 6, 8, Multiplicação dos números pares no intervalo [M, N]: 192 Veja a resolução comentada deste exercício em C++:
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char *argv[]){
// variáveis usadas na resolução do problema
int m, n, i, multiplicacao = 1;
// vamos pedir para o usuário informar os valores de M e N
cout << "Informe o valor de M: ";
cin >> m;
cout << "Informe o valor de N: ";
cin >> n;
// M é menor que N?
if(m >= n){
cout << "M deve ser menor que N";
}
else{
// mostra os números pares no intervalo
cout << "Números pares no intervalo [M, N]: ";
for(i = m; i <= n; i++){
if(i % 2 == 0){
cout << i << ", ";
// aproveitamos para calcular a multiplicação dos números
// pares no intervalo informado
multiplicacao = multiplicacao * i;
}
}
// mostramos a multiplicação
cout << "\nMultiplicação dos números pares no intervalo [M, N]: " <<
multiplicacao << endl;
}
cout << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
PHP ::: Dicas & Truques ::: Data e Hora |
Como gerar um calendário mensal completo para um determinado mês e ano usando PHPQuantidade de visualizações: 9 vezes |
|
Nesta dica eu mostro como podemos usar as principais funções de data e hora da linguagem PHP para montar um calendário PHP completo (com comentários e fácil de modificar). Basta passar um mês e ano e a função se encarrega do restante. Este código é muito útil em aplicações PHP para escolas, faculdades, sistemas financeiros, etc. Veja o resultado na imagem abaixo: ![]() E agora o código completo:
<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
<?php
// função que permite montar o calendário
function montar_calendario($mes, $ano){
// um vetor para guardar os meses
$meses = array(1 => 'Janeiro', 2 => 'Fevereiro',
3 => 'Março', 4 => 'Abril', 5 => 'Maio',
6 => 'Junho', 7 => 'Julho', 8 => 'Agosto',
9 => 'Setembro', 10 => 'Outubro', 11 => 'Novembro',
12 => 'Dezembro');
// um vetor com os dias da semana
$dias_semana = array('Dom', 'Seg', 'Ter', 'Qua',
'Qui', 'Sex', 'Sáb');
// vamos obter o primeiro dia do calendário
$primeiro_dia = mktime(0, 0, 0, $mes, 1, $ano);
// obtém a quantidade de dias no mês
$dias_mes = date('t', $primeiro_dia);
// dia da semana que o calendário inicia (começa em 0)
$dia_inicio = date('w', $primeiro_dia);
// cria a tabela HTML para o calendário
echo '<table border="1" cellspacing="0" cellpadding="4">
<tr><th colspan="7">'. $meses[$mes] . ' - ' .
$ano . '</th>
</tr>
<tr><td align="center">';
echo implode('</td><td align="center">', $dias_semana);
echo '</td></tr>';
// precisamos de células vazias até encontrarmos
// o dia inicial da semana
if($dia_inicio > 0){
for($i = 0; $i < $dia_inicio; $i++){
echo '<td> </td>';
}
}
// agora já podemos começar a preencher o
// calendário
for($dia = 1; $dia <= $dias_mes; $dia++ ){
if($dia_inicio == 0){
// vamos colorir o domingo de vermelho
$estilo = ' style="color: red"';
}
else{
$estilo = '';
}
// vamos colocar a data de hoje sublinhada
if(($dia == date("j")) && ($mes == date("n")) &&
($ano == date("Y"))){
echo '<td ' . $estilo . ' align="center"><u>'
. $dia . '</u></td>';
}
else{
echo '<td ' . $estilo . ' align="center">' .
$dia . '</td>';
}
// vamos incrementar o dia de referência
$dia_inicio++;
// já precisamos adicionar uma nova linha na tabela?
if($dia_inicio == 7){
$dia_inicio = 0;
echo "</tr>";
if($dia < $dias_mes){
echo '<tr>';
}
}
} // fim do laço for
// agora preenchemos as células restantes
if($dia_inicio > 0){
for($i = $dia_inicio; $i < 7; $i++){
echo '<td> </td>';
}
echo '</tr>';
}
echo '</table>';
}
// vamos montar o mês de março de 2021
montar_calendario(3, 2021);
?>
</body>
</html>
|
C ::: C para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a transposta de uma matriz em C - Curso de C para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 1559 vezes |
|
A matriz transposta de uma matriz A é a matriz AT. Tal matriz é obtida quando copiamos os elementos da matriz A para uma outra matriz (ou para ela mesma) e trocamos de posição as linhas e colunas. Dessa forma, a primeira linha da matriz A se transforma na primeira coluna da matriz transposta, a segunda linha da matriz A se transforma na segunda coluna da matriz transposta e assim por diante. Em termos de notação, podemos dizer, de forma algébrica, que: ATji = Aij Onde i representa as linhas e j representa as colunas, tanto na matriz original quanto na matriz transposta. É importante estar atento à quantidade de linhas e colunas na matriz original e na matriz transposta equivalente. Assim, se a matriz original for 3x2, a matriz transposta será 2x3. Antes de vermos o código C, dê uma olhada na seguinte matriz de duas linhas e três colunas: \[A = \left[\begin{matrix} 3 & 5 & 7 \\ 1 & 2 & 9 \end{matrix}\right] \] Sua matriz transposta correspondente é: \[A^T = \left[\begin{matrix} 3 & 1 \\ 5 & 2 \\ 7 & 9 \end{matrix}\right] \] E agora veja o código C que declara uma matriz 2x3 e gera a matriz transposta 3x2:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main(int argc, char *argv[]){
setlocale(LC_ALL,""); // para acentos do português
// vamos declarar e construir uma matrix
// 2x3 (duas linhas e três colunas
int matriz[2][3] = {{3, 5, 7}, {1, 2, 9}};
int i, j;
// vamos exibir os valores da matriz
printf("Elementos da matriz:\n");
for(i = 0; i < 2; i++){
for(j = 0; j < 3; j++){
printf("%5d ", matriz[i][j]);
}
printf("\n");
}
// como temos uma matriz 2x3, a transposta deverá ser
// 3x2, ou seja, três linhas e duas colunas
int linhas = 3; // linhas da matriz original
int colunas = 2; // colunas da matriz original
int transposta[linhas][colunas];
// e agora vamos preencher a matriz transposta
for(i = 0; i < 2; i++){
for(j = 0; j < 3; j++){
transposta[j][i] = matriz[i][j];
}
}
// vamos exibir os valores da matriz transposta
printf("Elementos da matriz transposta:\n");
for(i = 0; i < 3; i++){
for(j = 0; j < 2; j++){
printf("%5d ", transposta[i][j]);
}
printf("\n");
}
printf("\n\n");
system("PAUSE");
return 0;
}
Ao executar este código C nós teremos o seguinte resultado:
Elementos da matriz:
3 5 7
1 2 9
Elementos da matriz transposta:
3 1
5 2
7 9
|
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
|
C# - Como adicionar conteúdo ao final de um arquivo em C# usando as classes FileStream e StreamWriter Fórmulas da Física - Fórmula da Distância - Como calcular a distância dados a velocidade e o tempo decorrido Delphi - Como habilitar ou desabilitar um TEdit do Delphi usando a função EnableWindow() da API do Windows |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






