Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO

Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.

Python ::: Desafios e Lista de Exercícios Resolvidos ::: Hidrologia e Hidráulica

Exercícios Resolvidos de Python - Qual seria a vazão (m3/h) de saída para uma bacia hidrográfica "completamente impermeável", com área de 60 km2, sob uma chuva constante

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

1) Qual seria a vazão (m3/h) de saída para uma bacia hidrográfica "completamente impermeável", com área de 60 km2, sob uma chuva constante à taxa de 10 mm/h?

A) 180.000 m3/h

B) 6.000 m3/h

C) 600.000 m3/h

D) 60.000 m3/h

E) 600.000.000 m3/h

Sua saída deve ser parecida com:

Área da bacia em km2: 60
Precipitação em mm/h: 10
A vazão é: 600000.0 m3/h
Resposta/Solução:

O primeiro passo para resolver esta questão é relembrar a fórmula da vazão:

\[\text{Q} = \text{A} \cdot \text{v}\]

Onde:

Q = vazão em m3/s, m3/h, etc;

A = área da bacia m2, km2, etc.

v = a taxa da chuva, ou seja, a precipitação em mm/s, mm/h, etc.

A maior dificuldade aqui é a conversão das unidades, pois o exercício nos pede a vazão em m3/h. Por essa razão temos que converter a área para metros quadrados e a precipitação em milímetros para precipitação em metros.

Então, hora de vermos a resolução comentada deste exercício usando Python:

# função principal do programa
def main():
  # vamos ler a área da bacia em km2
  area = float(input("Área da bacia em km2: "))
    
  # vamos ler a precipitação em milímetros por hora
  precipitacao = float(input("Precipitação em mm/h: "))
    
  # vamos calcular a vazão em metros cúbicos por hora
  # primeiro convertemos a área para metros quadrados
  area = area * 1000000.0
  # agora convertemos milímetros para metros
  precipitacao = precipitacao / 1000.0
  # e calculamos a vazão
  vazao = area * precipitacao
    
  # e mostramos o resultado
  print("A vazão é: {0} m3/h".format(vazao))
  
if __name__== "__main__":
  main()



Java ::: Classes e Componentes ::: JComponent

Java Avançado - Como verificar se uma classe herda de JComponent

Quantidade de visualizações: 8732 vezes
Nesta dica mostrarei como podemos tirar proveito dos métodos getClass(), getSuperclass() e getName() da classe Class para verificarmos se uma determinada classe herda da classe JComponent.

Embora este exemplo busque relacionar controles do Java Swing, a técnica usada pode ser aplicada em qualquer classe da linguagem Java.

Veja o código completo:

package arquivodecodigos;

import javax.swing.*;
 
public class Estudos{
  public static void main(String args[]){
    // verifica se JLabel herda de JComponent
    JLabel label = new JLabel("Teste");
    if(herdaJComponent(label)){
      System.out.println("JLabel herda de JComponent");
    }
    else{
      System.out.println(
        "JLabel não herda de JComponent");
    }
 
    // verifica se Timer herda de JComponent
    java.util.Timer timer = new java.util.Timer();
    if(herdaJComponent(timer)){
      System.out.println(
        "java.util.Timer herda de JComponent");
    }
    else{
      System.out.println(
        "java.util.Timer não herda de JComponent");
    }
 
    System.exit(0);
  }
 
  static boolean herdaJComponent(Object obj){
    Class cls = obj.getClass();
    Class superclass = cls.getSuperclass();
    while(superclass != null){
      String className = superclass.getName();
       
      if(className.equals("javax.swing.JComponent")){
        return true;
      }
 
      cls = superclass;
      superclass = cls.getSuperclass();
    }
 
    return false;
  }
}

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

JLabel herda de JComponent
java.util.Timer não herda de JComponent


PHP ::: Dicas & Truques ::: Matemática e Estatística

Como usar a função max() do PHP para obter o maior entre dois ou mais valores

Quantidade de visualizações: 10655 vezes
A função max() do PHP é útil quando precisamos obter o maior entre dois ou mais valores. Veja um exemplo de seu uso:

<?
  // vamos usar a função max() para obter o maior
  // entre três valores inteiros
  $maior = max(5, 12, 4);

  // vamos exibir o resultado
  echo "O maior valor é: " . $maior;
?>

Quando executamos este exemplo temos o seguinte resultado:

O maior valor é: 12

Veja que é possível também fornecer uma matriz para a função max(). Neste caso a função retornará o elemento com o maior valor na matriz. Veja:

<?
  // vamos usar a função max() para obter o elemento
  // com maior valor em uma matriz
  
  
  // vamos criar uma matriz com cinco elementos
  $valores = array(9, 3, 21, 49, 2);  

  // vamos obter o maior elemento
  $maior = max($valores);

  // vamos exibir o resultado
  echo "O maior valor é: " . $maior;
?>


Ao executar este exemplo você terá o seguinte resultado:

O maior valor é: 49



Ruby ::: Dicas & Truques ::: Strings e Caracteres

Como converter uma string em um valor inteiro em Ruby usando a função to_i da classe String

Quantidade de visualizações: 11523 vezes
Em algumas situações precisamos transformar um valor contido em uma string em um valor numérico do tipo inteiro. Em Ruby podemos fazer isso usando o método to_i da classe String.

Veja:

# um número inteiro declarado como string
valor = "34"

# vamos somar este número a um outro
resultado = 30 + valor.to_i

# exibe o resultado
puts resultado

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

64


Python ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercício Resolvido de Python - Como percorrer todos os elementos de um vetor de inteiros e exibir a soma de seus valores

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

Considere o seguinte vetor de inteiros:

// um vetor de inteiros contendo sete elementos
valores = [4, 5, 1, 8, 2, 2, 10]
Escreva um programa Python console ou GUI que usa um laço for para percorrer todos os elementos deste vetor e exibir a soma de seus valores. Seu programa deverá exibir uma saída com a mensagem:

A soma dos valores do vetor é: 32

Resposta/Solução:

# método principal
def main():
  # um vetor de inteiros contendo sete elementos
  valores = [4, 5, 1, 8, 2, 2, 10]
    
  # o primeiro passo é criar uma variável que vai receber a soma
  # dos valores dos elementos
  soma = 0

  # agora vamos usar uma laço for para percorrer todos os elementos
  # do vetor, obter o valor do elemento atual e adicionar ao valor atual
  # da variável soma
  for valor in valores:
    soma = soma + valor
  
  # vamos exibir a soma dos valores do vetor
  print("A soma dos valores do vetor é: {0}".format(soma))
    
if __name__== "__main__":
  main()



JavaScript ::: DOM (Document Object Model) ::: document Object

JavaScript DOM - Como usar o objeto document em seus códigos JavaScript

Quantidade de visualizações: 7950 vezes
O objeto document representa a página HTML e fornece possibilidades para acessar, criar e manipular todos os elementos HTML no documento. Este objeto está logo abaixo do objeto window na hierarquia do DOM (Document Object Model), ou seja, podemos dizer que este elemento é filho do objeto window. Assim, para acessá-lo a partir de nossos códigos JavaScript podemos usar window.document ou simplesmente document. Veja:

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

<script type="text/javascript">
  // vamos obter o título desta página
  var titulo = window.document.title;

  // vamos exibir o resultado em uma mensagem alert
  window.alert("O título da página é: " + titulo);  
</script>

</body>
</html>


Neste exemplo nós usamos o objeto window para obter o objeto document. O passo seguinte foi obter o valor de sua propriedade title, que é usada para definir ou obter o título da página HTML.

Para obter um elemento em um documento HTML nós podemos usar as coleções (all, anchors, applets, etc), os métodos getElementById(), getElementsByName() e getElementsByTagName() e algumas outras propriedades e métodos. Se precisarmos acessar o elemento body ou html, podemos usar as propriedades document.documentElement e document.body.

Veja um trecho de código no qual acessamos o corpo do documento HTML e definimos sua cor de fundo:

<script type="text/javascript">
  // vamos definir a cor de fundo da página HTML
  window.document.body.bgColor = "Beige";  
</script>


Uma vez que o objeto document é um objeto contâiner para um documento HTML, ele fornece métodos para a crição de novos elementos (por meio do método createElement()), nós textos (createTextNode()) e nós de comentários (createComment()). Depois que um nó (node) é criado, ele pode ser inserido no documento por meio de chamadas aos métodos appendChild() e insertBefore().

Veja um trecho de código no qual usamos o método createElement() para criar um novo elemento div e logo em seguida usamos o método appendChild() para adicionar o elemento recém-criado no final do documento HTML:

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

<script type="text/javascript">
   // vamos criar um novo elemento div
   var elem = document.createElement("div");
   elem.innerHTML = "Sou uma div criada dinâmicamente";
   elem.style.backgroundColor = "beige";

   // vamos adicionar este novo elemento no final do documento
   document.body.appendChild(elem);
</script>

</body>
</html>

Os documentos HTML contidos em elementos frames e iframes possuem seus próprios objetos document. Para obter tais objetos, devemos usar a propriedade contentDocument.


Java ::: Dicas & Truques ::: Data e Hora

Como retornar a diferença de meses entre duas datas em Java - Datas e horas em Java

Quantidade de visualizações: 9439 vezes
O trecho de código abaixo mostra como obter a diferença de meses entre dois objetos Date. Estude-o atentamente. Esta é uma técnica muito útil para programadores que lidam com cálculos de datas em suas aplicações:

package arquivodecodigos;

import java.util.*;
import java.text.*;
 
public class Estudos{ 
  public static void main(String args[]){ 
    try{
      // constrói a primeira data
      DateFormat fm = new SimpleDateFormat(
        "dd/MM/yyyy");
      Date data1 = (Date)fm.parse("20/10/2008");
 
      // constrói a segunda data
      fm = new SimpleDateFormat("dd/MM/yyyy");
      Date data2 = (Date)fm.parse("30/12/2008");
 
      // vamos obter a diferença de meses
      long segundos = (data2.getTime() - 
        data1.getTime()) / 1000;
      int meses = (int)Math.floor(segundos / 2592000);
      segundos -= meses * 2592000;
      int dias = (int)Math.floor(segundos / 86400);
       
      // exibe o resultado
      System.out.println("As duas datas tem " +
        meses + " meses e " + dias + 
        " dias de diferença");
    }
    catch(ParseException e){
      e.printStackTrace();
    }
  } 
}

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

As duas datas tem 2 meses e 11 dias de diferença


C ::: Dicas & Truques ::: Data e Hora

Como obter e exibir a data atual no formato DD/MM/YYYY (Ex: 02/07/2013) usando a linguagem C

Quantidade de visualizações: 4833 vezes
Em algumas situações gostaríamos de obter e exibir a data no formato DD/MM/YYYY, por exemplo, 23/05/2010. Para isso podemos usar a função strftime(), que nos permite formatar o conteúdo da estrutura tm usando especificadores de formato. Veja o código:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(int argc, char *argv[]){
  time_t data_hora_segundos; // guarda os segundos deste 01/01/1970
  struct tm *timeinfo; // declara uma estrutura tm
  time(&data_hora_segundos); // preenche a variável data_hora_segundos
  // preenche a estrutura timeinfo
  timeinfo = localtime(&data_hora_segundos);

  // obtém e exibe a data atual no formato DD/MM/YYYY
  char data_atual[80];
  strftime(data_atual, 80, "A data de hoje é: %d/%m/%Y", timeinfo);

  // mostra o resultado
  printf("%s\n\n", data_atual);

  system("PAUSE");
  return 0;
}

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

A data de hoje é: 02/08/2013

Para exibir a data no formato DD/MM/YYYY eu usei os especificadores de formato %d, %m e %Y.


Java ::: Classes e Componentes ::: JComboBox

Como classificar os itens de um JComboBox do Java Swing em ordem alfabética

Quantidade de visualizações: 10682 vezes
Este exemplo mostra como ordenar os itens de um JComboBox do Java Swing. A melhor forma de fazer isso é ordenando o array de strings antes de passá-lo para o construtor da classe JComboBox.
Se novos itens forem inseridos em tempo de execução, a melhor saída é extender a classe DefaultComboBoxModel e fornecer tal funcionalidade.

Veja o código Java completo para o exemplo:

package estudos;

import java.awt.*;
import javax.swing.*;
import java.util.*;

public class Estudos extends JFrame{
  public Estudos(){
    super("A classe JComboBox");
    
    Container c = getContentPane();
    c.setLayout(new FlowLayout(FlowLayout.LEFT));
    
    // Cria o array que armazenará os itens do
    // combo box
    String[] nomes = {"Osmar", "Cristina", "Antônio",
      "Marcela", "Joaquim"};  
 
    // ordena os itens
    Arrays.sort(nomes);

    // Cria o JComboBox
    JComboBox combo = new JComboBox(nomes);

    // Adiciona o JComboBox à janela
    c.add(combo);

    setSize(350, 250);
    setVisible(true);
  }
  
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}



Portugol ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Portugol - Faça um algoritmo que preencha um vetor de 30 posições com números entre 1 e 15 sorteados pelo computador. Depois disso, peça para o usuário

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

Faça um algoritmo que preencha um vetor de 30 posições com números entre 1 e 15 sorteados pelo computador. Depois disso, peça para o usuário digitar um número (chave) e seu programa deve mostrar em que posições essa chave foi encontrada. Mostre também quantas vezes a chave foi sorteada.

Sua saída deverá ser parecida com:

Digite um número a ser localizado: 8

O número 8 aparece nas seguintes posições:

[8] posição => 5
[8] posição => 22
[8] posição => 26

O número 8 apareceu => 3 vez(es).
Resposta/Solução:

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

programa {
  // vamos incluir a biblioteca de utilidades
  inclua biblioteca Util --> u
	
  funcao inicio() {
    // vamos declarar as variáveis necessárias
    inteiro numeros[30]
    inteiro chave, vezes = 0

    // vamos sortear 30 números de 1 até 15 (incluindo os dois)
    para (inteiro i = 0; i < 30; i++) {
      numeros[i] = u.sorteia(1, 15)
    }

    // vamos pedir para o usuário informar a chave e vamos verificar em
    // quais posições essa chave foi encontrada
    escreva("Digite um número a ser localizado: ")
    leia(chave)
		
    escreva("\nO número " + chave + " aparece nas seguintes posições:")
    escreva("\n")
		
    para (inteiro i = 0; i < 30; i++) {
      se (numeros[i] == chave) {
        // registra a quantidade de vezes
        vezes = vezes + 1
        escreva("\n[" + numeros[i] + "]" + " posição => " + i)
      }
    }

    // agora mostramos quantas vezes o número pesquisado apareceu
    escreva("\n\nO número " + chave + " apareceu => " + vezes + " vez(es).")
    escreva("\n")
  }
}


Carregar Publicações Anteriores


Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

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
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

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 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 Apenas R$ 32,90


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