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 Ética e Legislação Profissional
Card 1 de 8
Noções de licitação pública

Modalidades da licitação:

Convite é a modalidade dirigida para interessados do ramo do objeto da licitação e é adequado para contratações de menor valor. Na Lei n.º 14.133/2021, essa modalidade foi extinta.

Leilão é a modalidade para a venda de bens móveis que não servem mais para a administração pública, a venda de produtos legalmente apreendidos ou penhorados e para a alienação de imóveis da administração pública.

Concurso é a modalidade indicada para a escolha de um trabalho técnico, artístico ou científico.

Pregão é a modalidade de licitação para aquisição de bens e serviços comuns. No artigo 1º, parágrafo único, da Lei n.º 10.520/2002, consta que bens e serviços comuns são "aqueles cujos padrões de desempenho e qualidade possam ser objetivamente definidos pelo edital, por meio de especificações usuais no mercado". Isso significa que são bens e serviços que não têm características técnicas especiais, sendo facilmente encontrados no mercado. O pregão também foi previsto na nova lei de licitações, no artigo 28, i.

Concorrência é a modalidade indicada para contratações de grandes valores, em que o interessado precisa comprovar a qualificação exigida no edital.

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:

AutoLISP ::: Dicas & Truques ::: Layer, Layers

Como retornar o nome da layer atual do AutoCAD usando AutoLISP e a variável de sistema CLAYER

Quantidade de visualizações: 653 vezes
A variável de sistema CLAYER (Current Layer) é usada quando queremos definir ou retornar o nome da layer atual do AutoCAD. E nesta dica mostrarei como podemos acessar e retornar o valor desta variável usando AutoLISP.

O primeiro passo é usar a função getvar e passar para ela o valor "CLAYER". De posse desse valor nós usamos setq para guardá-lo em uma variável de nossa preferência. Para finalizar basta chamar a função princ combinada com strcat para mostrar o resultado.

Veja o código AutoLISP completo para o exemplo:

; Esta função permite obter e exibir o valor atual
; da variável CLAYER do AutoCAD. Esta variável retorna
; o nome da layer atual
(defun c:layer_atual()
  (setq nome_layer_atual (getvar "CLAYER"))
  ; mostramos o resultado
  (princ (strcat "\nNome da layer atual: " nome_layer_atual))
  (princ)
)

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

Nome da layer atual: PAREDES


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos

Exercício Resolvido de Java - Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operações

Quantidade de visualizações: 6728 vezes
Exercícios Resolvidos de Java - Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operações

Pergunta/Tarefa:

Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operações:

void armazenaPessoa(String nome, int idade, float altura);
void removePessoa(String nome);
int buscaPessoa(String nome); // informa em que posição da agenda está a pessoa
void imprimeAgenda(); // imprime os dados de todas as pessoas da agenda
void imprimePessoa(int index); // imprime os dados da pessoa que está na posição "i" da agenda.

O código deverá ser desenvolvido em Java console (modo texto) e usar um menu switch() para as operações.

Sua saída deverá ser parecida com:



Resposta/Solução:

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

Código para a classe Pessoa (Pessoa.java):

package arquivodecodigos;

public class Pessoa {
  private String nome;
  private int idade;
  private double altura;

  // construtor cheio 
  public Pessoa(String nome, int idade, double altura) {
    this.nome = nome;
    this.idade = idade;
    this.altura = altura;
  }

  // construtor vazio
  public Pessoa() {
  }
  
  
  // método que imprime todos os dados da pessoa
  public void imprimirDados(){
    System.out.println("Nome: " + nome + "\nIdade: " +
      idade + "\nAltura: " + altura);
  }
  
  public String getNome() {
    return nome;
  }

  public void setNome(String nome) {
    this.nome = nome;
  }

  public int getIdade() {
    return idade;
  }

  public void setIdade(int idade) {
    this.idade = idade;
  }

  public double getAltura() {
    return altura;
  }

  public void setAltura(double altura) {
    this.altura = altura;
  }
}     

Código para a classe Agenda (Agenda.java):

package arquivodecodigos;

public class Agenda {
  // vetor que guardará as pessoas
  private Pessoa pessoas[];

  // construtor da classe Agenda
  public Agenda(int quantidade){
    pessoas = new Pessoa[quantidade];
  }

  public void armazenaPessoa(String nome, int idade, double altura){
    // ainda temos posições disponíveis na agenda?
    boolean cadastrado = false;
    for(int i = 0; i < pessoas.length; i++){
      if(pessoas[i] == null){
        // encontramos uma posição
        Pessoa p = new Pessoa(nome, idade, altura); // criamos uma nova pessoa
        // guardamos ela no vetor
        pessoas[i] = p;
        // e avisamos que o cadastro foi efetuado com sucesso
        cadastrado = true;
        break; // sai do laço
      }
    }
    
    if(cadastrado){
      System.out.println("\nCadastro efetuado com sucesso");
    }
    else{
      System.out.println("\nNão foi possível cadastrar. Agenda cheia");
    }
  }

  // método que permite pesquisar e excluir uma pessoa
  public void removePessoa(String nome){
    // vamos verificar se a exclusão foi efetuada com sucesso
    boolean excluido = false;
    for(int i = 0; i < pessoas.length; i++){
      if(pessoas[i] != null){
        // esta é a pessoa que estamos procurando?
        if(pessoas[i].getNome().equals(nome)){
          pessoas[i] = null; // posição disponível novamente
          excluido = true;
          break; // sai do laço
        }
      }
    }
    
    if(excluido){
      System.out.println("\nPessoa removida com sucesso");
    }
    else{
      System.out.println("\nNão foi possível remover. Pessoa não encontrada.");
    }
  }

  // informa em que posição da agenda está a pessoa 
  public int buscaPessoa(String nome){
    int resultado = -1;
    
    // vamos verificar se a pessoa existe na agenda
    for(int i = 0; i < pessoas.length; i++){
      if(pessoas[i] != null){
        // esta é a pessoa que estamos procurando?
        if(pessoas[i].getNome().equals(nome)){
          resultado = i;
          break; // sai do laço
        }
      }
    }
    
    return resultado;
  }

  // imprime os dados de todas as pessoas da agenda
  public void imprimeAgenda(){
    // vamos percorrer o vetor de pessoas e imprimir cada uma
    for(int i = 0; i < pessoas.length; i++){
      if(pessoas[i] != null){
        Pessoa p = pessoas[i];
        System.out.println("\nNome: " + p.getNome());
        System.out.println("Idade: " + p.getIdade());
        System.out.println("Altura: " + p.getAltura());
      }
    }
  }

  // imprime os dados da pessoa que está na posição "i" da agenda
  public void imprimePessoa(int index){
    // este índice é válido?
    if((index < 0) || (index > (pessoas.length - 1))){
      System.out.println("\nÍndice inválido");
    }
    else{
      Pessoa p = pessoas[index];
      if(p == null){
        System.out.println("\nNão existe pessoa nesse índice ainda.");
      }
      else{
        System.out.println("\nNome: " + p.getNome());
        System.out.println("Idade: " + p.getIdade());
        System.out.println("Altura: " + p.getAltura());
      }
    }
  }  
}

Código para a classe Principal (Principal.java):

package arquivodecodigos;

import java.util.Scanner;

public class Principal {
  // para fazer a leitura da entrada do usuário
  static Scanner entrada = new Scanner(System.in);
  
  public static void main(String[] args) {
    // cria uma nova Agenda
    Agenda agenda = new Agenda(10);
    String nome; // nome da pessoa
    int idade; // idade da pessoa
    double altura; // altura da pessoa
    
    // cria o menu de opções
    while(true){
      System.out.println("\n1. Nova Pessoa");
      System.out.println("2. Excluir Pessoa");
      System.out.println("3. Buscar Pessoa");
      System.out.println("4. Imprimir Agenda");
      System.out.println("5. Imprimir Pessoa (Índice)");
      System.out.println("6. Sair");
      System.out.print("Sua opção: ");
      int opcao = Integer.parseInt(entrada.nextLine());
      
      switch(opcao){
        case 1:
          System.out.print("\nInforme o nome: ");
          nome = entrada.nextLine();
          System.out.print("Informe a idade: ");
          idade = Integer.parseInt(entrada.nextLine());
          System.out.print("Informe a altura (use ponto em vez de vírgula): ");
          altura = Double.parseDouble(entrada.nextLine());
          agenda.armazenaPessoa(nome, idade, altura);
          break;
          
        case 2:
          System.out.print("\nInforme o nome a ser removido: ");
          nome = entrada.nextLine();
          agenda.removePessoa(nome);
          break;  
        
        case 3:
          System.out.print("\nInforme o nome a ser pesquisado: ");
          nome = entrada.nextLine();
          int indice = agenda.buscaPessoa(nome);
          if(indice < 0){
            System.out.println("\nA pessoa não foi encontrada");
          }
          else{
            System.out.println("\nA pessoa foi encontrada no índice: "
              + indice);
          }
          
          break;  
        
        case 4:
          agenda.imprimeAgenda();
          break;
        
        case 5:
          System.out.print("\nInforme o índice desejado: ");
          int index = Integer.parseInt(entrada.nextLine());
          agenda.imprimePessoa(index);
          break;  
          
        case 6:
          System.exit(0);
          
        default:
          System.out.println("\nOpção inválida\n");
          break;
      }
    }
  }
}



JavaScript ::: Dicas & Truques ::: Cookies

Como verificar se cookies estão habilitados no navegador do usuário usando JavaScript

Quantidade de visualizações: 11 vezes
Em algumas situações nós gostaríamos de checar se os cookies estão habilitados no browser do usuário antes de gravarmos alguma informação. Nesta dica eu mostro como isso pode ser feito.

Note que tudo que precisamos fazer é criar um cookie temporário e tentar acessá-lo em seguida. Veja o código completo para o exemplo (incluindo a página HTML):

<!doctype html>
<html>
<head>
 <title>Estudos JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // vamos criar um cookie temporário
  var cookieTemp = (new Date()).getTime() + '';
   
  // colocamos o cookie como parte do documento
  document.cookie = "cookieTemp=" + cookieTemp + "; path=/";
   
  // o cookie existe?
  if (document.cookie.indexOf(cookieTemp, 0) < 0){
    window.alert("Os cookies não estão habilitados no seu navegador");  
  }
  else{
    window.alert("Os cookies estão habilitados no seu navegador");
  } 
</script>

</body>
</html>

Ao executar este código teremos o seguinte resultado:

Os cookies estão habilitados no seu navegador.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Ordenação e Pesquisa (Busca)

Exercícios Resolvidos de Java - Como usar a Ordenação da Bolha em Java para ordenar os valores de um vetor em ordem crescente ou decrescente

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

A Ordenação da Bolha, ou ordenação por flutuação (literalmente "por bolha"), também chamada de Bubble Sort, é um algoritmo de ordenação dos mais simples. A ideia é percorrer o array diversas vezes, a cada passagem fazendo flutuar para o topo o maior elemento da sequência. Essa movimentação lembra a forma como as bolhas em um tanque de água procuram seu próprio nível, e disso vem o nome do algoritmo.

No melhor caso, o algoritmo executa n operações relevantes, onde n representa o número de elementos do vetor. No pior caso, são feitas n2 operações. A complexidade desse algoritmo é de ordem quadrática. Por isso, ele não é recomendado para programas que precisem de velocidade e operem com quantidade elevada de dados.

Escreva um programa Java que declara, constrói um vetor de 10 inteiros e peça para o usuário informar os valores de seus elementos. Em seguida use a ordenação da bolha para ordenar os elementos em ordem crescente.

Sua saída deverá ser parecida com:

Informe o valor para o índice 0: 84
Informe o valor para o índice 1: 23
Informe o valor para o índice 2: 9
Informe o valor para o índice 3: 5
Informe o valor para o índice 4: 11
Informe o valor para o índice 5: 3
Informe o valor para o índice 6: 50
Informe o valor para o índice 7: 7
Informe o valor para o índice 8: 2
Informe o valor para o índice 9: 73

O array informado foi:

84   23   9   5   11   3   50   7   2   73   

O array ordenado é:

2   3   5   7   9   11   23   50   73   84
Resposta/Solução:

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

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // vamos declarar e construir um vetor de 10 elementos
    int valores[] = new int[10];
    
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos pedir que o usuário informe os valores
    for(int i = 0; i < valores.length; i++){
      System.out.print("Informe o valor para o índice " + i + ": ");
      valores[i] = Integer.parseInt(entrada.nextLine());
    }
    
    // vamos mostrar o vetor informado
    System.out.println("\nO array informado foi:\n");
    for(int i = 0; i < valores.length; i++){
      System.out.print(valores[i] + "   ");
    }
    
    // vamos ordenar os elementos do vetor usando a ordenação da bolha
    // laço externo de trás para frente
    for(int i = valores.length - 1; i > 1; i--){
      for(int j = 0; j < i; j++){ // laço interno vai no fluxo normal
        if(valores[j] > valores[j + 1]){ // temos que trocá-los de lugar 
          int temp = valores[j];
          valores[j] = valores[j + 1];
          valores[j + 1] = temp;
        }
      }
    }
    
    // vamos exibir o vetor já ordenado
    System.out.println("\n\nO array ordenado é:\n");
    for(int i = 0; i < valores.length; i++){
      System.out.print(valores[i] + "   ");
    }
    
    System.out.println("\n");
  }
}



Java ::: Pacote java.lang ::: String

Como retornar os caracteres de uma string como um vetor de char usando o método getChars() da classe String do Java

Quantidade de visualizações: 8784 vezes
O método getChars() da classe String pode ser usado quando queremos retornar todos ou parte dos caracteres de uma string como uma matriz de char. Veja sua assinatura:

public void getChars(int srcBegin, int srcEnd,
   char[] dst, int dstBegin)

O parâmetro srcBegin indica o índice do primeiro caractere a ser copiado. O parâmetro srcEnd indica o índice APÓS o último caractere a ser copiado. O parâmetro dst é uma matriz de char para a qual os caracteres serão copiados e dstBegin indica o offset (ponto inicial) da matriz a ser preenchida.

Veja um trecho de código no qual copiamos os 5 primeiros caracteres de uma string para uma matriz de char chamada letras:

public class Main {
  public static void main(String[] args) {
    // vamos declarar e inicializar uma string
    String frase = "Cuiabá é muito quente";

    // declara uma matriz de 5 chars
    char letras[] = new char[5];

    // vamos copiar os 5 primeiros caracteres da frase anterior
    // e guardá-los nas primeiras posições da matriz
    frase.getChars(0, 5, letras, 0);

    // vamos percorrer a matriz letras
    for (int i = 0; i < letras.length; i++) {
      System.out.print(letras[i] + "  ");
    }
  }
}

Ao executarmos este código teremos o seguinte resultado:

C u i a b

O método getChars() pode atirar uma exceção do tipo IndexOutOfBoundsException se valores inválidos forem fornecidos aos seus parâmetros.


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