Dúvidas, comentários e doaçoes: +55 62 9 8513 2505

Planilha de Dimensionamento de Tubulações Hidráulicas Água Fria e Água Quente Completa
Nossa 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 Engenharia Civil - Estruturas de Concreto Armado
Card 1 de 40
Segurança e Estados Limites Ações nas Estruturas de Concreto Armado

As combinações últimas normais e as combinações últimas de construção ou especiais se diferem apenas pelo coeficiente ψ, que é ψ0 para as combinações normais últimas e pode ser ψ0 ou ψ2 para as combinações últimas de construção ou especiais, dependendo da duração da ação variável principal.

Nas combinações últimas excepcionais, a ação excepcional é considerada em seu valor característico, isto é, não majorada.

As ações variáveis são consideradas com seus valores quase permanentes pela multiplicação pelo fator de redução ψ2.

Nas combinações frequentes de serviço, existe uma ação variável principal considerada no seu valor frequente pela multiplicação pelo fator ψ1, e as demais consideradas em seus quase permanentes, pela multiplicação por ψ2.

Já, nas combinações raras de serviço, a variável principal se encontra em seu valor característico, ao passo que as demais ações variáveis são consideradas em seus valores frequentes, pela multiplicação por ψ1.

Filtrar Cards
Use esta opção para filtrar os cards pelos tópicos que mais lhe interessam.
Termos:
Aviso Importante: Nos esforçamos muito para que o conteúdo dos cards e dos testes e conhecimento seja o mais correto possível. No entanto, entendemos que erros podem ocorrer. Caso isso aconteça, pedimos desculpas e estamos à disposição para as devidas correções. Além disso, o conteúdo aqui apresentado é fruto de conhecimento nosso e de pesquisas na internet e livros. Caso você encontre algum conteúdo que não deveria estar aqui, por favor, nos comunique pelos e-mails exibidos nas opções de contato.
Link para compartilhar na Internet ou com seus amigos:

GNU Octave ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o cosseno de um ângulo em GNU Octave usando a função cos() - Calculadora de cosseno em Octave

Quantidade de visualizações: 3396 vezes
Em geral, quando falamos de cosseno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função cosseno disponível nas linguagens de programação para calcular o cosseno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria.

No entanto, é sempre importante entender o que é a função cosseno. Veja a seguinte imagem:



Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles.

Assim, o cosseno é a razão entre o cateto adjascente e a hipotenusa, ou seja, o cateto adjascente dividido pela hipotenusa. Veja a fórmula:

\[\text{Cosseno} = \frac{\text{Cateto adjascente}}{\text{Hipotenusa}} \]

Então, se dividirmos 30 por 36.056 (na figura eu arredondei) nós teremos 0.8320, que é a razão entre o cateto adjascente e a hipotenusa (em radianos).

Agora, experimente calcular o arco-cosseno de 0.8320. O resultado será 0.5881 (em radianos). Convertendo 0.5881 radianos para graus, nós obtemos 33.69º, que é exatamente o ângulo em graus entre o cateto adjascente e a hipotenusa na figura acima.

Pronto! Agora que já sabemos o que é cosseno na trigonometria, vamos entender mais sobre a função cos() da linguagem GNU Octave (script do GNU Octave). Esta função, já embutida na linguagem, recebe um valor numérico double e retorna um valor double, ou seja, também numérico) entre -1 até 1 (ambos inclusos). Veja:

# vamos calcular o cosseno de três números
fprintf("Cosseno de 0 = %f\n", cos(0))
fprintf("Cosseno de 1 = %f\n", cos(1))
fprintf("Cosseno de 2 = %f\n", cos(2))

Ao executar este código GNU Octave nós teremos o seguinte resultado:

Cosseno de 0 = 1.000000
Cosseno de 1 = 0.540302
Cosseno de 2 = -0.416147

Note que calculamos os cossenos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função cosseno mostrada abaixo:




Python ::: wxPython ::: Controles Visuais Básicos do wxPython

Como exibir um botão em uma janela wx.Frame do wxPython, detectar um clique no botão e exibir uma caixa de mensagem wx.MessageDialog

Quantidade de visualizações: 7984 vezes
Nesta dica mostrarei como podemos usar a função Bind() do wxPython para indicar o código que será chamado ao clicar em um botão, ou seja, ao disparar um evento wx.EVT_BUTTON. Para isso criei uma função OnBtnClick() que é chamada e usa uma caixa de diálogo wx.MessageDialog para exibir uma mensagem indicando que o botão foi clicado.

Veja o código wxPython completo para o exemplo:

# vamos importar a biblioteca wxPython
import wx

class Janela(wx.Frame):
  def __init__(self):
    wx.Frame.__init__(self, None, -1, 
      "Usando wx.Button", size=(350, 200))
    
    # Cria um painel
    panel = wx.Panel(self)

    # Cria um botão e o adiciona no painel
    btn = wx.Button(panel, label="Clique Aqui", 
      pos=(10, 10), size=(100, 25))

    # Anexa um evento ao botão
    self.Bind(wx.EVT_BUTTON, self.OnBtnClick, btn)

  # Método que será chamado ao clicar o botão
  def OnBtnClick(self, event):
    dlg = wx.MessageDialog(None, "Você clicou no botão!",
      "Usando wx.Button", wx.OK | wx.ICON_INFORMATION)
    result = dlg.ShowModal()
    dlg.Destroy()

if __name__ == "__main__":
  app = wx.App()
  janela = Janela()
  janela.Show(True)
  app.MainLoop()



Java ::: Dicas & Truques ::: Entrada e Saída em Arquivos (File Input/Output - IO)

Como ler o conteúdo de um arquivo uma linha de cada vez usando o método readLine() da classe RandomAccessFile da linguagem Java

Quantidade de visualizações: 13712 vezes
Uma das operações mais frequentes em um programa é a leitura do conteúdo de arquivos. A classe RandomAccessFile nos fornece o método readLine() que é muito útil quando precisamos ler as linhas de conteúdo em um arquivo.

O método readLine() lê bytes consecutivos do arquivo, começando na posição atual do ponteiro de arquivos até alcançar um caractere marcador de final de linha ou o fim do arquivo. Cada byte é convertido em um caractere tomando-se o valor do byte para os oito bits de menor ordem do caractere e definindo os oito bits de ordem alta do caractere como zero. Desta forma, este método não suporta Unicode completamente. Uma linha de texto é finalizada por um caractere de retorno de carro ("\r"), um caractere de nova linha ("\n"), um caractere de retorno de carro seguido por um caractere de nova linha, ou o final do arquivo. Caracteres de final de linha não são incluídos na string retornada pelo método.

É importante observar que, a cada chamada ao método readLine(), o ponteiro de arquivo é avançado e posicionado para a leitura subsequente. Veja o exemplo:

import java.io.*;

public class Estudos{
  public static void main(String[] args){
    // uma instância de RandomAccessFile para leitura e escrita
    try{
      RandomAccessFile arquivo = 
        new RandomAccessFile("C:\\java\\conteudo.txt", "rw");

      // vamos ler o conteúdo do arquivo uma linha de cada vez
      String linha;
      
      while((linha = arquivo.readLine()) != null){
        System.out.println("Posição do ponteiro: " +
          arquivo.getFilePointer());
        System.out.println(linha); 
      }

      arquivo.close();    
    }
    catch(FileNotFoundException fnfe){
      System.out.println(fnfe.getMessage());
    }
    catch(IOException ioe){
      System.out.println(ioe.getMessage());
    }

    System.exit(0);
  }
}

Ao executar este exemplo nós teremos o seguinte resultado:

Posição do ponteiro: 27
Primeira linha do arquivo
Posição do ponteiro: 53
Segunda linha do arquivo
Posição do ponteiro: 78
Terceira linha do arquivo


Angular ::: Dicas & Truques ::: Componentes Angular

Angular para iniciantes - Como criar o seu primeiro componente Angular usando o Angular CLI - Comando ng generate component

Quantidade de visualizações: 3364 vezes
Aplicações Angular são construidas em cima de componentes, e estes consistem de:

a) Um template HTML que declara o que deve ser renderizado na página.
b) Uma classe TypeScript que define o comportamento do componente.
c) Um seletor CSS que define com o componente será usado em um template.
d) Estilos CSS opcionais aplicados ao template.

Todos esses aspectos acima são abordados em mais dicas dessa seção. O importante agora é entendermos como criar o componente e exibí-lo no navegador.

Assim, se você ainda não o fez, crie uma nova aplicação Angular usando o Angular CLI. Você pode usar um comando parecido com:

c:\estudos_angular>ng new estudos

Este comando vai criar uma nova aplicação Angular com o nome estudos dentro da pasta "c:\estudos_angular". Aguarde alguns minutos e verá que o Angular CLI já criou toda a estrutura da aplicação. Para executá-la, dispare os comandos abaixo:

c:\estudos_angular>cd estudos
c:\estudos_angular\estudos>ng serve --open

Quando a aplicação subir, veremos o seguinte resultado:



Você obteve um resultado parecido? Então vamos continuar.

Vá até o diretório "C:\estudos_angular\estudos\src\app" e você verá que o Angular CLI já criou para nós um componente com o nome AppComponent por meio dos arquivos app.component.css,
app.component.html, app.component.spec.ts e app.component.ts. Agora vamos voltar nossa atenção para o arquivo app.module.ts. Abra ele no seu editor de texto favorito e você verá o seguinte código:

import {NgModule} from '@angular/core';
import {BrowserModule} from '@angular/platform-browser';

import {AppComponent} from './app.component';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }


Por ora não vamos analisar todo o conteúdo deste arquivo, apenas fique atento ao que vai acontecer com ele depois que criarmos nosso novo componente, o que faremos agora.

Abra uma nova janela de terminal, navegue até o diretório raiz da aplicação e dispare o seguinte comando:

c:\angular>cd estudos
c:\angular\estudos>ng generate component noticia

Nesse momento o Angular CLI criou uma pasta noticia com os seguintes arquivos:

noticia.component.css
noticia.component.html
noticia.component.spec.ts
noticia.component.ts

Agora volte até o arquivo app.module.ts e veja que o Angular CLI o modificou, adicionando o novo componente NoticiaComponent. É importante entender bem o que acontece com este arquivo, pois é ele que indica qual componente será iniciado em primeiro lugar junto com a aplicação Angular.

Agora abra o arquivo noticia.component.ts e altere o seu conteúdo para a versão abaixo:

import { Component } from '@angular/core';

@Component({
  selector: 'app-noticia',
  templateUrl: './noticia.component.html',
  styleUrls: ['./noticia.component.css']
})
export class NoticiaComponent{
  titulo = `Presidente afirma que o preço da gasolina 
    não sobe mais.`;
}

Agora vá em noticia.component.html e altere-o para o código abaixo:

<div>
  <h2>Sou o componente Noticia</h2>
  <h3>{{ titulo }}</h3>
</div>

Nosso componente está pronto. Vamos fazer uns ajustes no componente que o Angular CLI criou para nós automaticamente. Abra o arquivo app.component.ts e altere o seu conteúdo para:

import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  nome = 'AppComponent';
}

Agora vá até o arquivo app.component.html e modifique-o para o código abaixo:

<div>
  <h1>Sou o componente que o Angular CLI criou</h1>
  <h2>Meu nome é: {{ nome }}</h2>
</div>

<app-noticia></app-noticia>

Veja que coloquei o componente <app-noticia></app-noticia> dentro do componente principal. Agora, se você reiniciar a aplicação (é provável que as mudanças já estejam aparecendo no seu navegador) você verá o resultado abaixo:



Obteve resultado parecido? Que maravilha! Agora, para terminar esta dica, abra o arquivo noticia.component.css e vamos adicionar os estilos CSS abaixo:

h2 {color: red}
div {border: 1px solid green; padding: 10px}

Veja a aplicação novamente e note como o componente Noticia já contém uma formatação diferente. Agora é só criar vários componentes, agrupá-los, aplicar formatações CSS, imagens, etc, e contruir uma aplicação realmente interessante.


C# ::: Windows Forms ::: TextBox

C# Windows Forms Avançado - Como rolar as linhas de um TextBox para o topo (parte superior) usando a API do Windows

Quantidade de visualizações: 7609 vezes
Em algumas situações gostaríamos de rolar para cima o conteúdo de um TextBox de múltiplas. Para isso podemos usar a API do Windows, mais especificamente a mensagem WM_VSCROLL com o valor SB_TOP para seu parâmetro wParam. O valor do parâmetro lParam é zero.

Veja um trecho de código que rola para cima o conteúdo de um TextBox. Antes de executar este exemplo, tenha a certeza de ter um TextBox de múltiplas, com barras de rolagem e conteúdo que force o aparecimento das barras de rolagem.

Comece adicionando a linha:

using System.Runtime.InteropServices;

na seção de usings do seu formulário ou classe. Em seguida adicione o trecho de código abaixo no corpo da classe, como um método:

[DllImport("user32.dll", EntryPoint = "SendMessage", 
  CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, 
  IntPtr wParam, IntPtr lParam);

Finalmente coloque o código abaixo no evento Click de um botão:

private void button2_Click(object sender, EventArgs e){
  // antes de executar este exemplo certifique-se de que
  // a propriedade Multiline do TextBox esteja definida
  // como true e a propriedade ScrollBars contenha o valor
  // Vertical ou Both
  textBox1.Multiline = true;
  textBox1.ScrollBars = ScrollBars.Vertical;
    
  // constante para a mensagem WM_VSCROLL
  const uint WM_VSCROLL = 0x115;
  // constante para o parâmetro wParam
  const int SB_TOP = 6;
  
  // handle para a caixa de texto
  IntPtr handle = textBox1.Handle;
  IntPtr wParam = (IntPtr)SB_TOP;
  IntPtr lParam = IntPtr.Zero;
  
  // vamos fazer com que o TextBox role para o topo (parte superior)
  SendMessage(textBox1.Handle, WM_VSCROLL, wParam, lParam);
}



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

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser. Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 19,90


© 2026 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 15 usuários muito felizes estudando em nosso site.