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:

Java ::: Classes e Componentes ::: JTree

Java Swing - Como criar sua primeira JTree usando um vetor de nomes de linguagens de programação

Quantidade de visualizações: 13808 vezes
Este exemplo mostra como criar uma JTree bem simples, e que servirá de base para a criação de aplicações Java Swing mais elaboradas. Os itens da JTree são fornecidos como um vetor de objetos, de forma que cada sub-vetor constitui uma seção da árvore. Os elementos (nós) são inseridos em suas devidas posições usando uma função recursiva.

Veja o resultado na figura abaixo:



E agora o código Java completo para o exemplo:

package arquivodecodigos;

import javax.swing.*;
import java.awt.*;
import javax.swing.tree.*;
 
public class Estudos extends JFrame{
  public Estudos(){
    super("Exemplo de uma JTree simples");
     
    Object[] linguagens = {
      "Linguagens",
      new Object[]{
        "Compiladas",
        "C++",
        "Delphi"
      }, 
      new Object[]{
        "Interpretadas",
        "JavaScript",
        "Python",
        "Ruby"
      }
    };
 
    DefaultMutableTreeNode raiz = montar(linguagens);
    JTree arvore = new JTree(raiz);  
 
    Container c = getContentPane();
    c.setLayout(new FlowLayout());
             
    JScrollPane scrollPane = new JScrollPane(arvore);
    c.add(scrollPane);
         
    setSize(400, 300);
    setVisible(true);
  }
     
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
 
  private DefaultMutableTreeNode montar(Object[] hier){
    DefaultMutableTreeNode no = new DefaultMutableTreeNode(hier[0]), filho;
     
    for(int i = 1; i < hier.length; i++){
      Object n_no = hier[i];
      if(n_no instanceof Object[]){ // nó possui filhos
        filho = montar((Object[])n_no);
      }
      else{
        filho = new DefaultMutableTreeNode(n_no); // folha
      }
      
      no.add(filho);
    }
 
    return(no);
  }
}



C# ::: Dicas & Truques ::: Strings e Caracteres

Como retornar um caractere a partir de seu código ASCII em C# usando o método ToChar() da classe Convert

Quantidade de visualizações: 2 vezes
A classe Convert, do namespace System, possui vários métodos que possibilitam a conversão entre tipos base. Um destes métodos nos permitem informar um número inteiro e obter o caractere ou letra correspondente.

Veja um techo de código no qual informamos o valor 65 e obtemos, como retorno, a letra "A":

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      int codigo = 65;
      char letra = Convert.ToChar(codigo);

      Console.WriteLine("A letra para o código ASCII {0} é {1}", 
        codigo, letra);

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ao executarmos este código C# nós teremos o seguinte resultado:

A letra para o código ASCII 65 é A


Python ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço while do Python - Python para iniciantes

Quantidade de visualizações: 16012 vezes
O laço while da linguagem Python permite executar um bloco de códigos repetidamente até que uma condição seja verdadeira. Opcionalmente, uma cláusula else pode ser usado com o while em Python (a parte else será executada mesmo que o corpo principal do laço não seja executado). Veja um exemplo:

# função principal do programa
def main():
  numero = 0
 
  while numero <= 10:
    print(numero)
    numero = numero + 1
  else:
    print("Terminei")
  
if __name__== "__main__":
  main()

Ao executarmos este código Python nós teremos o seguinte resultado:

0
1
2
3
4
5
6
7
8
9
10
Terminei

Veja um exemplo de um laço while que nunca será executado:

# função principal do programa
def main():
  numero = 0
 
  while numero > 10:
    print(numero)
    numero = numero + 1
  
if __name__== "__main__":
  main()

E agora um exemplo de laço usando um valor booleano:

# função principal do programa
def main():
  continuar = True
  valor = 0
 
  while continuar:
    print(valor)
   
    if valor > 5:
      continuar = False
    else:
      valor = valor + 1
  
if __name__== "__main__":
  main()

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

0
1
2
3
4
5
6


Laravel ::: Artigos e Tutorias ::: CRUD - CREATE, READ, UPDATE, DELETE

Como criar um CRUD completo em Laravel 8 - CRUD em Laravel usando PHP e MySQL (MariaDB) - Parte 2

Quantidade de visualizações: 3528 vezes
Na parte 1 deste tutorial sobre CRUD em Laravel usando PHP e MySQL (MariaDB) nós criamos a base de dados MySQL para a nossa aplicação biblioteca, criamos a aplicação Laravel, fizemos a migração e rodamos a migração, o que resultou na criação de uma tabela MySQL chamada livros.

Nessa segunda parte nós vamos iniciar criando a rota de redirecionamento das ações do CRUD. Vamos criar também o controller e as primeiras views.

Criando a rota de redirecionamento - routes/web.php

Vá até o diretório C:\xampp\htdocs\biblioteca\routes e abra o arquivo web.php. Você verá que ele possui o seguinte conteúdo:

<?php

use Illuminate\Support\Facades\Route;

/*
|--------------------------------------
| Web Routes
|--------------------------------------
|
| Here is where you can register web routes
| for your application. These routes are loaded
| by the RouteServiceProvider within a group
| which contains the "web" middleware group.
| Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});
?>

Vamos alterar o seu conteúdo para a versão abaixo:

<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\LivroController;

Route::resource('livros', LivroController::class);

?>

Veja que criamos uma rota para um recurso, que neste caso será o controller LivroController. Passamos o nome livros para esta rota, de forma que a URL http://localhost/biblioteca/public/livros/create abrirá a view para cadastrar um novo livro.

Hora de criar o controller e o model - a parte controle e modelo do MVC

Com a rota de direcionamento devidamente criada, vamos partir para o controller. Abra uma janela de terminal e digite o comando abaixo:

C:\xampp\htdocs\biblioteca>php artisan make:controller LivroController --resource --model=Livro

O Artisan nos perguntará se queremos criar o modelo também. Informe "yes" e pressione Enter.

A App\Models\Livro model does not exist. Do you want to generate it? (yes/no) [yes]:
> yes

Se tudo correr bem, você verá a seguinte mensagem:

Model created successfully.
Controller created successfully.

Vá até o diretório C:\xampp\htdocs\biblioteca\app\Http\Controllers e localize o arquivo LivroController.php. Abra-o e note que temos os métodos index(), create(), store(), show(), edit(), update() e destroy(). Cada um destes métodos corresponde a uma ação que podemos executar na tabela de livros. Vamos começar com o método create(). Limpe todo o conteúdo deste controller e deixe apenas o código abaixo:

<?php

namespace App\Http\Controllers;

use App\Models\Livro;
use Illuminate\Http\Request;

class LivroController extends Controller{
  // mostra a view para cadastrar um novo livro
  public function create(){
    return view('livros.create');
  }
}

?>

O método create() apenas exibirá a página (view) que nos permitirá cadastrar um novo livro. Porém, antes de criar a primeira view, vá no diretório C:\xampp\htdocs\biblioteca\app\Models, localize e abra o arquivo Livro.php. Vamos modificá-lo para o código abaixo:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Livro extends Model{
  use HasFactory;

  protected $fillable = [
    'titulo', 'autor', 'paginas'
  ];
}

?>

Veja que informamos, no model Livro, os campos da tabela que serão preenchidos com as nossas informações. Os campos id, created_at e updated_at serão gerenciados pelo Laravel.

A view para cadastrar um novo livro

Chegou o grande momento. Vamos criar a página que nos permitirá cadastrar os livros. Para manter as coisas simples, escreveremos um view bem simples, sem muita formatação. Mas você poderá deixá-la mais bonita mais tarde. O importante aqui é entender a funcionalidade.

Veja o código completo para a view create.blade.php:

<html>
<head>
  <meta charset="utf-8">
  <title>Biblioteca</title>
</head>
<body>

<h1>Novo Livro</h1>

@if($status = Session::get('mensagem'))
  <h2>{{ $status }}</h2>
@endif

@if($errors->any())
  <h2>Houve alguns erros ao processar o formulário</h2>
  <ul>
     @foreach($errors->all() as $error)
        <li>{{ $error }}</li>
     @endforeach
  </ul>
@endif

<form action="{{ route('livros.store') }}" method="post">
@csrf
<table width="200" border="0" cellspacing="3" 
  cellpadding="3">
  <tr>
    <td>Título:</td>
    <td><input type="text" name="titulo" id="titulo" 
      placeholder="Título"></td>
  </tr>
  <tr>
    <td>Autor:</td>
    <td><input type="text" name="autor" id="autor"
      placeholder="Autor"></td>
  </tr>
  <tr>
    <td>Páginas</td>
    <td><input type="text" size="10" name="paginas" 
      id="paginas" placeholder="Quant. Páginas"></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><button type="submit">Gravar</button></td>
  </tr>
</table>
</form>

</body>
</html>

Aqui nós criamos um formulário com a action apontando para {{route('livros.store')}}, e a forma de envio é POST. Temos também três elementos HTML do tipo input text, cada um com a propriedade name contendo o mesmo nome do campo na tabela livros. Salve esta view no diretório C:\xampp\htdocs\biblioteca\resources\views\livros.

Agora abra o seu navegador no endereço http://localhost/biblioteca/public/livros/create e teremos o seguinte resultado:



Agora só precisamos obter as informações do formulário e salvá-las no banco de dados.

Gravando o novo livro na tabela do banco de dados

Vamos ver agora como obter os dados do formulário, passá-los para o controller, instanciar o model e finalmente persistir no banco de dados MySQL. Você viu que os dados do form são enviados para o método store() do controller livros. Assim, abra o LivroController.php e adicione o código abaixo:

<?php

namespace App\Http\Controllers;

use App\Models\Livro;
use Illuminate\Http\Request;

class LivroController extends Controller{
  // mostra a view para cadastrar um novo livro
  public function create(){
    return view('livros.create');
  }

  // recebe as informações do formulário e as grava
  // no banco de dados
  public function store(Request $request){
    // valida o formulário
    $request->validate([
      'titulo' => 'required',
      'autor' => 'required',
      'paginas' => 'required']);
    
    // obtém os valores do form
    Livro::create($request->all());
     
    // direciona para página cadastro novamente,
    // com uma mensagem de sucesso
    return redirect()->route('livros.create')
      ->with('mensagem', 'Livro salvo com sucesso.');
  }
}

?>

Pronto! A parte CREATE do CRUD já está completa. Experimente cadastrar um novo livro e veja o resultado na tabela do banco de dados. Observe que temos também a validação dos dados do formulário (mensagens indicando quais campos não foram preenchidos) e também uma mensagem de sucesso indicando que os dados foram gravados com sucesso.

Na parte 3 deste tutorial veremos como listar os livros cadastrados e a opção de excluir e editar os livros. Até lá.

Leia a parte 3 aqui: Como criar um CRUD completo em Laravel 8 - CRUD em Laravel usando PHP e MySQL (MariaDB) - Parte 3


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Geometria Analítica e Álgebra Linear

Exercício Resolvido de Java - Como calcular o quadrante de uma coordenada cartesiana em Java

Quantidade de visualizações: 1372 vezes
Pergunta/Tarefa:

O Plano Cartesiano, ou Sistema de Coordenadas Cartesianas, é formado por duas retas reais perpendiculares, ou seja, o ângulo entre elas é de 90 graus. Essas retas determinam um único plano, que é denominado como sistema ortogonal de coordenadas cartesianas ou somente plano cartesiano.

No ano de 1637, René Descartes teve a brilhante ideia de relacionar álgebra e geometria, dando início à conhecida geometria analítica, método que possibilita descrever a geometria utilizando uma menor quantidade de diagramas e desenhos. Apesar de os créditos dessa descoberta serem dados a Descartes, Pierre de Fermat já conhecia e utilizava alguns conceitos de geometria analítica, logo o plano cartesiano.

Há quatro quadrantes no Sistema de Coordenadas Cartesianas, conforme a figura a seguir:



Como podemos ver, no primeiro quadrante, tanto o x quanto o y são positivos. No segundo quadrante o x é negativo e o y é positivo. No terceiro quadrante, tanto o x quanto o y são negativos. Por fim, no quarto quadrante, o x é positivo e o y é negativo.

Escreva um programa Java que pede para o usuário informar os valores x e y de uma coordenada cartesiana e informe em qual quadrante essa coordenada se situa. Se os valores de x e y forem zero, informe que o ponto se situa na origem do plano cartesiano.

Sua saída deverá ser parecida com:

Informe o valor x da coordenada: 12
Informe o valor y da coordenada: -7
A coordenada (12,-7) está no Quarto Quadrante (+,-)
Resposta/Solução:

Veja a resolução comentada deste exercício em Java:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // variáveis usadas na resolução do problema
    int x, y;
  
    // vamos pedir para o usuário informar as coordenadas
    System.out.print("Informe o valor x da coordenada: ");
    x = Integer.parseInt(entrada.nextLine());
    System.out.print("Informe o valor y da coordenada: ");
    y = Integer.parseInt(entrada.nextLine());
  
    // a coordenada está no primeiro quadrante? 
    if (x > 0 && y > 0){
      System.out.println("A coordenada (" + x + "," + 
        y + ") está no Primeiro Quadrante (+,+)");
    }
    // a coordenada está no segundo quadrante?
    else if (x < 0 && y > 0){
      System.out.println("A coordenada (" + x + "," + 
        y + ") está no Segundo Quadrante (-,+)");
    }
    // a coordenada está no terceiro quadrante?
    else if (x < 0 && y < 0){
      System.out.println("A coordenada (" + x + "," + 
        y + ") está no Terceiro Quadrante (-,-)");
    }
    // a coordenada está no quarto quadrante?
    else if (x > 0 && y < 0){
      System.out.println("A coordenada (" + x + "," + 
        y + ") está no Quarto Quadrante (+,-)");
    }
    // a coordenada está na origem
    else{
      System.out.println("A coordenada (" + x + "," + 
        y + ") está na origem");
    }
  }
}



Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

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á 25 usuários muito felizes estudando em nosso site.