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.

jQuery ::: Dicas & Truques ::: AJAX

Apostila jQuery - Quais as diferenças entre os métodos ajax(), get() e post() do jQuery?

Quantidade de visualizações: 10908 vezes
Existem algumas diferenças substanciais entre os métodos ajax(), get() e post(). Conhecê-las e saber quando usar cada um destes métodos poderá tornar seus códigos mais dinâmicos e eficientes.

O método ajax() é o mais completo para requisições HTTP e pode ser usado com mais de um dezena de parâmetros. Este método é considerado um método de nível baixo (low level) já que permite um maior controle sobre a requisição AJAX. Além disso, se precisamos de mais flexibilidade, este é o método a ser usado.

Os métodos get() e post() são métodos de nível mais alto (higher level) e aceitam pouco mais que três parâmetros cada um. Use estes métodos quando não precisar de muito controle sobre a requisição AJAX. Estes métodos, por exemplo, não fornecem formas de tratar possíveis erros na requisição HTTP.

Nesta seção você encontrará exemplos de cada um desses métodos.


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: 3728 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 ::: Dicas & Truques ::: Data e Hora

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

Quantidade de visualizações: 10341 vezes
Algumas vezes precisamos obter a diferença de dias entre duas datas em Java. Esta dica mostra como isso pode ser feito usando dois objetos da classe Date. Veja que usamos o método parse() da classe SimpleDateFormat para construir as duas datas e o método getTime() da classe Date para obter a quantidade de milisegundos desde 1º de janeiro de 1970 GMT armazenada em cada um dos objetos Date. O resto é um cálculo matemático bem simples:

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/12/2019");
 
      // constrói a segunda data
      fm = new SimpleDateFormat("dd/MM/yyyy");
      Date data2 = (Date)fm.parse("25/01/2020");
 
      // vamos obter a diferença em dias
      long diff = data2.getTime() - 
        data1.getTime();
 
      // exibe o resultado
      System.out.println("Primeira data: " + data1.toString());
      System.out.println("Segunda data: " + data2.toString());
      System.out.println("Diferença em dias = "
        + diff / (1000 * 60 * 60 * 24));
    }
    catch(ParseException e){
      System.out.println("Erro: " + e.getMessage());
    }
  } 
}

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

Primeira data: Fri Dec 20 00:00:00 BRST 2019
Segunda data: Sat Jan 25 00:00:00 BRST 2020
Diferença em dias = 36


AutoCAD Civil 3D .NET C# ::: Dicas & Truques ::: Alinhamento - Alignment

Como retornar a quantidade de perfis de um alinhamento do Civil 3D usando a função GetProfileIds() da API C# do AutoCAD Civil 3D

Quantidade de visualizações: 571 vezes
Em algumas situações nós precisamos obter a quantidade de perfis (profiles) de um determinado alinhamento do AutoCAD Civil 3D. Para isso nós podemos usar a função GetProfileIds(), que retorna uma coleção ObjectIdCollection contendo os ids de todos os perfis pertencentes a um determinado alinhamento.

Para este exemplo eu usei um alinhamento chamado "EIXO DA RODOVIA" e criei para ele um profile chamado "TN - SUPERFÍCIE NATURAL" para representar a superfície natural e outro chamado "GREIDE - PERFIL VERTICAL DA RODOVIA" para representar o alinhamento vertical.

Note que, após obtermos a coleção ObjectIdCollection por meio da função GetProfileIds(), tudo que temos a fazer é acessar a sua propriedade Count.

Veja o código AutoCAD Civil 3D .NET C# completo para o exemplo:

using System;
using Autodesk.AutoCAD.Runtime;
using Autodesk.Civil.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.EditorInput;
using Autodesk.Civil.DatabaseServices;

namespace Estudos {
  public class Class1 : IExtensionApplication {
    [CommandMethod("Alinhamento")]
    public void Alinhamento() {
      // vamos obter uma referência ao documento atual do Civil 3D
      CivilDocument doc = CivilApplication.ActiveDocument;

      // obtemos o editor
      Editor editor = Application.DocumentManager.MdiActiveDocument.Editor;

      // vamos pesquisar o alinhamento chamado "EIXO DA RODOVIA"
      string nome = "EIXO DA RODOVIA";

      // vamos iniciar um nova transação
      using (Transaction ts = Application.DocumentManager.MdiActiveDocument.
        Database.TransactionManager.StartTransaction()) {
        try {
          // efetuamos uma chamada ao método GetAlignmentByName() passando
          // o documento atual do AutoCAD Civil 3D e o nome do alinhamento
          // que queremos encontrar
          Alignment alinhamento = GetAlignmentByName(doc, nome);

          // ops, o alinhamento não foi encontrado
          if (alinhamento == null) {
            editor.WriteMessage("\nO alinhamento não foi encontrado.");
          }
          else {
            // encontramos o alinhamento. Vamos mostrar a quantidade de perfis
            // que ele possui
            ObjectIdCollection ids_perfis = alinhamento.GetProfileIds();
            // e mostramos o resultado
            editor.WriteMessage("\nO alinhamento possui " + ids_perfis.Count +
              " perfis.\n");
          }
        }
        catch (System.Exception e) {
          // vamos tratar o erro 
          editor.WriteMessage("Erro: {0}", e.Message);
        }
      }
    }

    // função C# que retorna um alinhamento por nome, ou null em
    // caso de não encontrar o alinhamento desejado
    public Alignment GetAlignmentByName(CivilDocument doc, string nome) {
      // vamos declarar um objeto da classe Alignment
      Alignment alinhamento = null;

      // agora vamos obter os ids de todos os alinhamentos
      ObjectIdCollection alinhamentos = doc.GetAlignmentIds();

      // vamos percorrer todos os ids de alinhamentos retornados
      foreach (ObjectId idAlinhamento in alinhamentos) {
        alinhamento = idAlinhamento.GetObject(OpenMode.ForRead) as Alignment;
        // encontramos o alinhamento
        if (alinhamento.Name.Equals(nome)) {
          return alinhamento;
        }
      }

      // retorna null se o alinhamento não for encontrado
      return null;
    }

    public void Initialize() {
      // pode deixar em branco
    }

    public void Terminate() {
      // pode deixar em branco
    }
  }
}

Ao executar este código AutoCAD Civil 3D .NET C# nós teremos o seguinte resultado:

O alinhamento possui 2 perfis.


Python ::: Pandas Python Library (Biblioteca Python Pandas) ::: DataFrame

Como retornar a quantidade de linhas em um DataFrame do Pandas usando a função len() e a propriedade index

Quantidade de visualizações: 2131 vezes
Podemos tirar proveito da função len() do Python e da propriedade index do DataFrame do Pandas para contarmos as linhas do DataFrame. Lembre-se de que a propriedade index representa os rótulos das linhas.

Veja o código completo para o exemplo:

# importamos a biblioteca Pandas
import pandas as pd
  
def main():
  # vamos carregar os dados do arquivo .csv
  df = pd.read_csv("C:\\estudos_python\\carros.csv",
   delimiter=";")
  
  # vamos mostrar o DataFrame resultante
  print("Os dados do DataFrame são:\n")
  print(df)
 
  # agora vamos retornar a quantidade de linhas no DataFrame
  quant_linhas = len(df.index)

  # e mostramos o resultado
  print("\nO DataFrame contém {0} linhas".format(quant_linhas))
 
if __name__== "__main__":
  main()

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

Os dados do DataFrame são:

        Marca   Modelo     Ano    Valor Vendido
0        Fiat   Sienna  2010.0  23500.0       S
1  Volkswagen     Polo     NaN  31453.0       N
2  Volkswagen      NaN  2001.0  19200.0       S
3        Fiat    Palio  1995.0   7500.0       S
4       Honda    Civic     NaN  42000.0       S
5     Renault  Sandero  2010.0  52000.0       N
6        Ford    Focus  2009.0  42700.0       N

O DataFrame contém 7 linhas



Java ::: Dicas & Truques ::: Formulários e Janelas

Java Swing - Como centralizar a janela JFrame ao abrir a aplicação Java Swing

Quantidade de visualizações: 20742 vezes
Em várias ocasiões nós gostaríamos de centralizar a janela JFrame, ou seja, a janela principal de nossa aplicação Java Swing ao abrir o programa. Para isso nós podemos usar o método setLocationRelativeTo() e fornecer a ele o valor null.

Veja como isso pode ser feito no código abaixo:

import java.awt.*;
import javax.swing.*;
 
public class Estudos extends JFrame{
  public Estudos() {
    super("Uso da classe JFrame");
     
    setSize(350, 250);
    setVisible(true);
 
    // centraliza a janela    
    setLocationRelativeTo(null);
  }
   
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}



VB.NET ::: Dicas & Truques ::: Strings e Caracteres

Como obter uma substring em uma string VB.NET usando o método Substring() da classe String

Quantidade de visualizações: 12163 vezes
Nesta dica mostrarei como podemos usar o método Substring() da classe String do VB.NET para retornar parte de uma palavra, frase ou texto, ou seja, uma substring em uma string.

Este método recebe o índice do caractere inícial da substring a ser obtida e a quantidade total de caracteres. O retorno é uma nova string.

Veja o código completo para o exemplo:

Imports System

Module Program
  Sub Main(args As String())
    Dim frase As String = "Gosto muito de VB.NET"
    ' vamos mostrar a frase original
    Console.WriteLine("Frase original: " & frase)

    ' vamos obter a substring "VB.NET"
    Dim substring As String = frase.Substring(15, 6)

    ' exibe o resultado
    Console.WriteLine("A substring é: " & substring)

    Console.WriteLine(vbCrLf & "Pressione qualquer tecla para sair...")
    ' pausa o programa
    Console.ReadKey()
  End Sub
End Module

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

Frase original: Gosto muito de VB.NET
A substring é: VB.NET


C ::: C para Engenharia ::: Física - Mecânica

Como calcular a massa de um corpo dada sua energia cinética e sua velocidade usando a linguagem C

Quantidade de visualizações: 2658 vezes
Na Física, a energia cinética em um objeto é a energia que ele possui devido ao seu movimento. Isso é definido como o trabalho necessário para acelerar um corpo de massa em repouso para que este adquira velocidade. Tendo ganho essa energia durante a aceleração, o corpo mantém essa energia cinética a menos que a sua velocidade mude. A mesma quantidade de trabalho é produzida por um corpo desacelerando da sua velocidade atual para um estado de repouso.

Os carros de uma montanha-russa atingem sua energia cinética máxima quando estão no fundo de sua trajetória. Quando eles começam a subir, a energia cinética começa a ser convertida em energia potencial gravitacional, mas, se forem assumidos atritos insignificantes e outros fatores de atraso, a quantidade total de energia no sistema permanece constante.

A fórmula para obtenção da massa de um corpo, quando temos a sua energia cinética e a sua velocidade é:

\[ \text{m} = \frac{\text{2} \cdot E_c}{v^2} \]

Onde:

m ? massa do corpo (em kg).

Ec ? energia cinética (em joule, J).

v ? velocidade do corpo (em m/s).

Vamos ver um exemplo agora? Observe o seguinte enunciado:

1) Uma bola de golfe está viajando a uma velocidade de 50m/s, e possui energia cinética de 75J. Qual é a sua massa?

Note que o exercício nos dá a velocidade já em m/s, evitando a necessidade da conversão de km/h para m/s. Temos também a energia cinética já em sua medida apropriada. Assim, só precisamos jogar na fórmula. Veja o código C completo para este cálculo:

#include <stdio.h>
#include <stdlib.h>
#include <math.h> 
     
int main(int argc, char *argv[]){
  // velocidade (em m/s)
  float velocidade = 50; // em m/s
  // energia cinética
  float energia_cinetica = 75; // em joule
  
  // e então calculamos a massa do corpo
  float massa = (2 * energia_cinetica) / pow(velocidade, 2);
  
  // mostramos o resultado
  printf("A massa do corpo é: %fkg", massa);
			  
  printf("\n\n");
  system("PAUSE");
  return 0;
}

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

A massa do corpo é: 0.060000kg (ou 0.060000 x 1000 = 60 gramas).


Java ::: Dicas & Truques ::: Strings e Caracteres

Como retornar a quantidade de palavras em uma string Java usando um objeto da classe StringTokenizer

Quantidade de visualizações: 364 vezes
Nesta dica mostrarei como podemos usar um objeto da classe StringTokenizer, do pacote java.util para contar as palavras em um texto ou frase, ou seja, em uma string. O método que usaremos da classe StringTokenizer é countTokens() que retorna a quantidade de pedaçõs na string, separados por espaço.

Veja o código completo para o exemplo:

// Este exemplo mostra como contar as palavras
// de uma string

import java.util.*;

public class Estudos{
  public static void main(String[] args){
    String frase = "Programar em Java é bom demais";
    
    StringTokenizer parser = new StringTokenizer(frase);
    int cont = parser.countTokens();
    
    System.out.println("A frase contém " + 
        cont + " palavras");
    
    System.exit(0);
  }
}  

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

A frase contem 6 palavras.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções

Exercício Resolvido de Java - Como converter minutos em segundos em Java usando uma função

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

Escreva um programa Java para converter minutos em segundos. Você deverá criar uma função converter() que receberá, como argumento, um número inteiro representando os minutos e retornará, também como um inteiro, os segundos correspondentes. Os minutos deverão ser informados pelo usuário.

Sua saída deverá ser parecida com:

Informe os minutos: 15
A quantidade de segundos é: 900
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);
    
    // vamos pedir para o usuário informar os minutos
    System.out.print("Informe os minutos: ");
    int minutos = Integer.parseInt(entrada.nextLine());
  
    // agora vamos chamar a função converter() para converter
    // os minutos em segundos
    int segundos = converter(minutos);
  
    // e mostramos o resultado
    System.out.println("A quantidade de segundos é: " + segundos);
  }
  
  // função usada para converter minutos em segundos
  public static int converter(int minutos){
    int segundos = minutos * 60;
    return segundos; 
  }
}


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


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