Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: AutoCAD VBA ::: Dicas & Truques ::: Linha, Linhas, Comando LINE

Como retornar o ângulo de uma linha do AutoCAD usando AutoCAD VBA e a propriedade Angle do objeto AcadLine

Quantidade de visualizações: 87 vezes
Nesta dica mostrarei como usar a propriedade Angle do objeto AcadLine da linguagem AutoCAD VBA para retornar o ângulo de uma linha selecionada pelo usuário. Note que esta propriedade retorna o ângulo em radianos, e não em graus. Por isso coloquei no código o cálculo para essa conversão.

Veja o código AutoCAD VBA completo para o exemplo:

' Esta macro AutoCAD VBA mostra como selecionar uma linha
' na área de desenho do AutoCAD e retornar seu ângulo
' em radianos e em graus

' para guardar o valor da constante PI
Const PI = 3.14159265459

Sub ComprimentoLinha()
  ' vamos declarar um variável para receber a linha
  ' selecionada
  Dim linha As AcadLine
  ' e também a localização da linha
  Dim localizacao As Variant
  ' para guardar o ângulo em radianos
  Dim angulo_radianos As Double
  ' para guardar o ângulo em graus
  Dim angulo_graus As Double
   
  ' caso haja algum erro
  On Error Resume Next
   
  ' agora pedimos para o usuário selecionar a linha
  ThisDrawing.Utility.GetEntity linha, localizacao, _
    "Selecione uma linha"
   
  ' vamos obter o ângulo da linha em radianos
  angulo_radianos = linha.Angle
  ' vamos obter o ângulo da linha em graus
  angulo_graus = angulo_radianos * (180# / PI)
   
  ' e mostramos o resultado
  ThisDrawing.Utility.Prompt "O ângulo em radianos da linha é: " _
    & angulo_radianos
  ThisDrawing.Utility.Prompt vbCrLf & "O ângulo em graus da linha é: " _
    & angulo_graus
End Sub

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

O ângulo em radianos da linha é: 0,275259315403115
O ângulo em graus da linha é: 15,7711970392377

Link para compartilhar na Internet ou com seus amigos:

JavaScript ::: Dicas & Truques ::: Validação de Formulários

Validação de formulários em JavaScript - Como validar CPF (com pontos e hífen) usando expressões regulares

Quantidade de visualizações: 43694 vezes
Nesta dica mostrarei como podemos escrever uma função JavaScript para a validação de números de CPF, dessa vez usando pontos e o hífen. Isso é interessante porque, muitas vezes, o usuário copia seu CPF de outro lugar e cola nas caixas de texto de nossas aplicações.

A pagina HTML que contém o formulário se parece com a imagem abaixo:



E agora veja o código JavaScript completo para o exemplo, incluindo o código HTML para a página:

<html>
<head>
<title>Estudando JavaScript</title>

<style type="text/css">
  input {margin-bottom: 3px; margin-top: 3px}
</style>
 
<script type="text/javascript">
 function validarCPF(){
   var cpf = document.cadastro.cpf.value;
   var filtro = /^\d{3}.\d{3}.\d{3}-\d{2}$/i;
   if(!filtro.test(cpf)){
     window.alert("CPF inválido. Tente novamente.");
     return false;
   }
    
   cpf = remove(cpf, ".");
   cpf = remove(cpf, "-");
     
   if(cpf.length != 11 || cpf == "00000000000" || 
      cpf == "11111111111" ||
      cpf == "22222222222" || cpf == "33333333333" || 
      cpf == "44444444444" ||
      cpf == "55555555555" || cpf == "66666666666" || 
      cpf == "77777777777" ||
      cpf == "88888888888" || cpf == "99999999999"){
      window.alert("CPF inválido. Tente novamente.");
      return false;
   }
 
   soma = 0;
   for(i = 0; i < 9; i++){
     soma += parseInt(cpf.charAt(i)) * (10 - i);
   }   

   resto = 11 - (soma % 11);
   
   if(resto == 10 || resto == 11){
     resto = 0;
   }
   
   if(resto != parseInt(cpf.charAt(9))){
     window.alert("CPF inválido. Tente novamente.");
     return false;
   }

   soma = 0;
   for(i = 0; i < 10; i ++){
     soma += parseInt(cpf.charAt(i)) * (11 - i);
   }   

   resto = 11 - (soma % 11);
   if(resto == 10 || resto == 11){
     resto = 0;
   }

   if(resto != parseInt(cpf.charAt(10))){
     window.alert("CPF inválido. Tente novamente.");
     return false;
   }

   window.alert("CPF válido. Muito obrigado."); 
   return true;
 }
  
 function remove(str, sub) {
   i = str.indexOf(sub);
   r = "";
   if (i == -1) return str;
   r += str.substring(0,i) + remove(str.substring(i + sub.length), sub);
   return r;
 }
</script>
 
</head>
<body>
 
<form name="cadastro" onSubmit="return validarCPF()">
  Informe seu CPF (use os pontos e o hífen):<br>
  <input type="text" maxlength="14" name="cpf">
  <input type="submit" value="Enviar!">
</form>
 
</body>
</html>



Java ::: Dicas & Truques ::: Mouse e Teclado

Como retornar as coordenadas do mouse durante um evento mouseClicked em uma janela JFrame do Java Swing

Quantidade de visualizações: 10592 vezes
Nesta dica eu mostro como podemos obter as coordenadas do mouse no momento que o usuário clica em uma janela JFrame de nossas aplicações Java Swing. Note que exibimos as coordenadas x e y do mouse na barra de títulos da janela JFrame.

Saber como retornar as coordenadas do mouse durante um evento é uma das técnicas úteis para o desenvolvimento de jogos e aplicativos gráficos em Java.

Veja o código completo para o exemplo:

package arquivodecodigos;

/*
  Este exemplo mostra como obter as coordenadas
  do mouse durante um evento.
*/
 
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
 
public class Estudos extends JFrame{
  public Estudos() {
    super("Eventos do Mouse e Teclado");
    Container c = getContentPane();
    FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
    c.setLayout(layout);
     
    this.addMouseListener(
      new MouseAdapter(){
        @Override
        public void mouseClicked(MouseEvent e){
          setTitle("X = " + e.getX() + "; Y = " + e.getY());
        }
      }
    );    
 
    setSize(350, 250);
    setVisible(true);
  }
   
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}



Python ::: Dicas & Truques ::: HTTP Web Server

Como criar um servidor web em Python usando as classes BaseHTTPRequestHandler e HTTPServer

Quantidade de visualizações: 363 vezes
Nesta dica mostrarei como criar um web server em Python, ou seja, o nosso próprio servidor web. Para isso nós vamos criar uma classe ServidorWeb que herda de BaseHTTPRequestHandler, que nos fornece todos os métodos necessários para tratar requisições HTTP, tais como GET e POST.

Note que definir o nome do host como "localhost" e a porta como "8080".

Veja o código completo para o nosso web server em Python:

# precisamos importar os objetos BaseHTTPRequestHandler e HTTPServer
# do módulo http.server
from http.server import BaseHTTPRequestHandler, HTTPServer
# precisamos também do módulo time
import time

# vamos criar a classe ServidorWeb, que herda de
# BaseHTTPRequestHandler
class ServidorWeb(BaseHTTPRequestHandler):
  # vamos implementar o método que responde às requisições GET
  def do_GET(self):
    self.send_response(200)
    self.send_header("Content-type", "text/html")
    self.end_headers()
    self.wfile.write(bytes("<html><head><title>Meu Servidor Web</title></head>", 
      "utf-8"))
    self.wfile.write(bytes("<p>Requsição: %s</p>" % self.path, 
      "utf-8"))
    self.wfile.write(bytes("<body>", "utf-8"))
    self.wfile.write(bytes("<p>Exemplo de Web Server em Python</p>",
      "utf-8"))
    self.wfile.write(bytes("</body></html>", "utf-8"))

# função principal do programa
def main():
  # agora criamos um objeto HTTPServer
  host = "localhost"
  porta = 8080
  servidorWeb = HTTPServer((host, porta), ServidorWeb)
  print("Servidor iniciado em http://%s:%s" % (host, porta))

  # tentamos levantar o servidor
  try:
    servidorWeb.serve_forever()
  except KeyboardInterrupt:
    pass

  # liberamos o servidor web
  servidorWeb.server_close()
  print("O servidor web foi parado.")
  
if __name__== "__main__":
  main()

Ao executar este código você verá a seguinte mensagem:

Servidor iniciado em http://localhost:8080

A partir daí você pode abrir o seu navegador neste endereço e já verá a página web que definimos no corpo do método do_GET() da classe ServidorWeb. Agora é só explorar as dicas dessa seção para aprender ainda mais sobre redes, soquetes e servidores web usando a linguagem Python.


C++ ::: Fundamentos da Linguagem ::: Passos Iniciais

Apostila C++ para iniciantes - Como usar a macro EXIT_SUCCESS em C++

Quantidade de visualizações: 9294 vezes
A macro EXIT_SUCCESS, disponível na biblioteca cstdlib da linguagem C++, pode ser usada como argumento para a função exit() para sinalizar que o programa finalizou sua execução sem erros.

Os dois trechos de código abaixo são semelhantes:

1) Usando EXIT_SUCCESS para sinalizar que o programa foi finalizado com sucesso:

#include <cstdlib>

using namespace std;

int main(int argc, char *argv[])
{
  // programa foi finalizado com sucesso
  return EXIT_SUCCESS;
}

2) Usando o valor 0 para sinalizar que o programa foi finalizado com sucesso:

#include <cstdlib>

using namespace std;

int main(int argc, char *argv[])
{
  // programa foi finalizado com sucesso
  return 0;
}



Java ::: Dicas & Truques ::: Programação Orientada a Objetos

Como criar e usar métodos estáticos em suas classes Java - Programação Orientada a Objetos em Java - Java OOP

Quantidade de visualizações: 13096 vezes
Como já vimos em outras dicas desta seção, uma classe Java possui propriedades (variáveis) e métodos (funções). Veja a seguinte declaração de uma classe Produto:

package estudos;

// declaração da classe Produto
public class Produto {
  private String nome;
  private double preco;

  public String getNome() {
    return nome;
  }

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

  public double getPreco() {
    return preco;
  }

  public void setPreco(double preco) {
    this.preco = preco;
  }
}

Aqui cada instância da classe Produto terá suas próprias variáveis nome e preco e os métodos que permitem acesso e alteração destas variáveis também estão disponíveis a cada instância.

Há, porém, situações nas quais gostaríamos que um determinado método estivesse atrelado à classe e não à cada instância individual. Desta forma, é possível chamar um método de uma classe sem a necessidade da criação de instâncias da mesma. O método main() presente em todas as aplicações Java é um bom exemplo deste tipo de método.

Métodos estáticos em Java podem ser criados por meio do uso da palavra-chave static. É comum tais métodos serem declarados com o modificador public, o que os torna acessíveis fora da classe na qual estes foram declarados. Veja um exemplo:

Código para Pessoa.java:

package estudos;

// classe Pessoa com duas variáveis privadas e
// um método estático
public class Pessoa {
  private String nome;
  private int idade;

  // um método estático que permite verificar a validade
  // de um número de CPF
  public static boolean isCPFValido(String cpf){
    // alguns cálculos aqui
    return true;
  }
}

Veja agora como podemos chamar o método isCPFValido() sem a necessidade da criação de uma nova instância da classe Pessoa:

Código para Main.java:

package estudos;

public class Main {
  public static void main(String[] args) {
    // vamos efetuar uma chamada ao método isCPFValido() sem
    // criar uma instância da classe Pessoa
    if(Pessoa.isCPFValido("12345")){
      System.out.println("CPF Válido");
    }
    else{
      System.out.println("CPF Inválido");
    }
  }
}

Note que o método estático isCPFValido() da classe Pessoa foi declarado assim:

public static boolean isCPFValido(String cpf);

Desta forma, podemos chamá-lo a partir de código externo à classe sem a necessidade de criar uma nova instância da mesma. Veja:

if(Pessoa.isCPFValido("12345")){}

É importante notar que métodos estáticos não possuem acesso a variáveis e métodos não estáticos da classe, tampouco ao ponteiro this (que só existe quando criamos instâncias da classe). Assim, o trecho de código abaixo:

// um método estático que permite verificar a validade
// de um número de CPF
public static boolean isCPFValido(String cpf){
  // alguns cálculos aqui

  // vamos acessar a variável não estática nome
  nome = "Osmar J. Silva";
    
  return true;
}

vai gerar o seguinte erro de compilação:

Uncompilable source code - non-static variable nome cannot be referenced from a static context.

Se usarmos this.nome a mensagem de erro de compilação será:

Uncompilable source code - non-static variable this cannot be referenced from a static context.

Métodos estáticos são úteis quando precisamos criar classes que atuarão como suporte, nas quais poderemos chamar funções (métodos) auxiliares sem a necessidade de criar novas instâncias a cada vez que estas funções forem necessárias.


Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

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

Anúncio Patrocinado
Chat de Sexo - Site para adultso - Maiores de 18 anos. Converse com pessoas de todo o Brasil, de forma discreta e anônima


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