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
LISP ::: Dicas & Truques ::: Matemática e Estatística

Como calcular MMC em Lisp - Como calcular o Mínimo Múltiplo Comum na linguagem Lisp

Quantidade de visualizações: 918 vezes
O Mínimo Múltiplo Comum (MMC), ou LCM (Least Common Multiple) é um tipo de operação matemática utilizada para encontrar o menor número positivo, diferente de 0 (zero), que é múltiplo ao mesmo tempo de dois ou mais números. O MMC é utilizado, por exemplo, na soma e subtração de frações - quando é necessário um denominador comum.

Nesta dica mostrarei como podemos calcular o MMC de dois números inteiros informados pelo usuário. Veja o código Common Lisp completo:

; variáveis que vamos usar no programa
(let ((num1)(num2)(maior)(mmc))
  ; Vamos ler o primeiro número
  (princ "Informe o primeiro número: ")
  ; talvez o seu compilador não precise disso
  (force-output)
  ; atribui o valor lido à variável num1
  (setq num1 (read))
   
  ; Vamos ler o segundo número
  (princ "Informe o segundo número: ")
  ; talvez o seu compilador não precise disso
  (force-output)
  ; atribui o valor lido à variável num2
  (setq num2 (read)) 
   
  ; agora escolhemos o maior número
  (cond ((> num1 num2)(setq maior num1))
    (t (setq maior num2))
  )
  
  ; e entramos em um laço loop
  (loop
    ; testa se o maior é divisível por num1 e por num2
    (cond ((and (= 0 (rem maior num1))(= 0 (rem maior num2))) 
      ; mmc recebe o maior e sai do laço
      (setq mmc maior)(return)))
		
    ; incrementa o valor da variável maior	
    (setq maior (+ maior 1))
  )
  
  ; mostra o resultado
  (format t "O MMC dos dois números é ~D" mmc)
)

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

Informe o primeiro número: 6
Informe o segundo número: 3
O MMC dos dois números é: 6

Note que a linguagem Common Lisp possui uma função LCM() que permite calcular o MMC de dois ou mais números. Minha intenção com essa dica foi mostrar como o cálculo do MMC é feito em Common Lisp.


Python ::: PyQt GUI Toolkit ::: QPushButton

Como criar um botão em Python PyQt usando a classe QPushButton

Quantidade de visualizações: 1245 vezes
Os botões QPushButton são os controles mais básicos e comuns em aplicações GUI PyQt. Eles são criados a partir da classe QPushButton. Veja a sua posição na hierarquia de classes dos PyQt:

QObject, QPaintDevice
  QWidget
    QAbstractButton
      QPushButton
        QCommandLinkButton


Veja um trecho de código no qual criamos um botão QPushButton e o colocamos em uma janela QWidget:

# vamos importar os módulos necessários
import sys
from PyQt6.QtCore import *
from PyQt6.QtGui import *
from PyQt6.QtWidgets import *

# método que mostrará a janela principal
def mostrar_janela_principal():
  # cria uma instância da classe QApplication
  app = QApplication(sys.argv)
  
  # criamos a janela principal
  janela = QWidget()
  
  # definimos o título da janela
  janela.setWindowTitle("Cadastro de Clientes")
  
  # definimos as coordenadas e as dimensões da janela
  janela.setGeometry(100, 100, 500, 300)

  # vamos criar um botão QPushButton
  botao = QPushButton("Cadastrar", janela)
  
  # definimos a localização do botão 
  botao.move(10, 10)

  # tornamos a janela visível 
  janela.show()

  # e executamos a aplicação
  sys.exit(app.exec())

if __name__== "__main__":
  mostrar_janela_principal()

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




QGIS ::: PyQGIS API ::: Projeto QGIS - Classe QgsProject

Como retornar o título do projeto do QGIS usando PyQGIS e a função title() da classe QgsProject

Quantidade de visualizações: 314 vezes
Em algumas situações nós precisamos obter o título do projeto atual do QGIS. Para isso nós podemos usar a função title() da classe QgsProject da PyQGIS API.

Note que o título do projeto do QGIS é definido indo no menu Projeto -> Propriedades. Na janela Propriedades nós acessamos a guia Geral e definimos no campo Título do Projeto o valor que desejamos.

Veja o código PyQGIS completo que acessa e exibe o título do projeto em uma mensagem QMessageBox.information:

# vamos obter o título do projeto do QGIS
titulo = QgsProject.instance().title()
 
# e mostramos o resultado
QMessageBox.information(None, "Aviso", "O título do projeto é: " +
  titulo)

Ao executar este código PyQGIS nós teremos um resultado parecido com:

O título do projeto é: Estudo hidrológico cliente AFG Rio Verde-GO


Java ::: Fundamentos da Linguagem ::: Modificadores

Como usar o modificador synchronized da linguagem Java

Quantidade de visualizações: 24049 vezes
O modificador synchronized tem seu uso e importância destacados quando várias threads (fluxos de execução) estão sendo executadas em um programa. Tais threads podem tentar acessar métodos de uma ou mais classes ao mesmo tempo. No entanto, pode ser necessário planejarmos o sistema de forma que determinados métodos possam ser acessados por somente uma thread de cada vez, talvez para garantir a integridade de valores das diversas variáveis envolvidas no processo. É aqui que o modificador synchronized é usado.

Ao marcarmos um método como synchronized, o sistema de execução Java garantirá que apenas uma thread de cada vez acesse tal método. Se outras threads tentarem fazer o mesmo, elas serão colocadas em espera até que a thread atual finalize seu trabalho e libere o método.

Um exemplo de aplicação do modificador synchronized pode ser visto em uma classe Pilha. Como sabemos, esta estrutura de dados possui métodos para inserir um novo item no topo da pilha e para removê-lo do topo (lembra? LIFO: Last In First Out). Ora, para evitar que uma thread remova o elemento do topo ao mesmo tempo em que outra está tentando inserir, tais métodos devem ser marcados como synchronized. Isso evitará que os dados sejam corrompidos.


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

Como calcular porcentagem em PHP - Como efetuar cálculos de porcentagem em PHP

Quantidade de visualizações: 33468 vezes
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em PHP.

Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas.

Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em PHP:

<?php
  // Algoritmo que calcula porcentagem em PHP

  $valor = 178.00; // valor original
  $percentual = 15.0 / 100.0; // 15%
  $valor_final = $valor + ($percentual * $valor);

  // mostra o resultado
  echo "O valor final do produto é: " . $valor_final;

  // O resultado será 204,70
?>

Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em PHP:

<?php
  // Algoritmo que calcula porcentagem em PHP

  $valor = 250.00; // valor original
  $percentual = 8.0 / 100.0; // 8%
  $valor_final = $valor - ($percentual * $valor);

  // mostra o resultado
  echo "O valor final do produto é: " . $valor_final;

  // O resultado será 230,00
?>

Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em PHP:

<?php
  // Algoritmo que calcula porcentagem em PHP

  $perguntas = 90.0;
  $acertos = 72.0;

  // mostra a porcentagem de acertos
  echo "Porcentagem de acertos: " .
    (($acertos / $perguntas) * 100) . "%";

  // mostra a porcentagem de erros
  echo "<br>Porcentagem de erros: " .
    ((($perguntas - $acertos) / $perguntas) * 100) . "%";

  // Os resultados serão 80% e 20%
?>

Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em PHP:

<?php
  // Algoritmo que calcula porcentagem em PHP

  $valor_anterior = 300.0; // valor anterior
  $novo_valor = 340.0; // valor novo

  // calcula a porcentagem de lucro
  // efetua o cálculo
  $porcentagem_lucro = (($novo_valor * 100) / $valor_anterior) - 100;

  echo "A porcentagem de lucro foi de: " .
    $porcentagem_lucro . "%";

  // O resultado será 13,33
?>

Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em PHP:

<?php
  // Algoritmo que calcula porcentagem em PHP

  $valor = 70.0; // valor do produto
  $percentual = 5.0 / 100.0; // 5%

  // calcula a comissão
  $comissao = $percentual * $valor;

  // mostra o resultado
  echo "O valor repassado ao vendedor é: " .
    $comissao;

  // O resultado será 3,5
?>



Java ::: Reflection (introspecção) e RTI (Runtime Type Information) ::: Passos Iniciais

Saiba o que é Reflexão (Reflection) em Java - Como usar Reflexão (Reflection) na linguagem Java - Revisado

Quantidade de visualizações: 18458 vezes
Reflection (ou Reflexão), também conhecida como RTI (Runtime Type Information) em algumas linguagens, é um mecanismo para descobrir dados a respeito de um programa em tempo de execução. Reflection em Java nos permite descobrir informações sobre atributos ou membros (campos), métodos e construtores de classes. Podemos também operar nos campos e métodos que descobrimos.

A Reflection permite o que é normalmente chamada de programação dinâmica em Java.

A Reflection em Java é conseguida usando a Java Reflection API. Esta API consiste de classes nos pacotes java.lang e java.lang.reflect.

Antes de prosseguirmos, veja um exemplo de como podemos listar todos os métodos públicos da classe Object:

package arquivodecodigos;

import java.lang.reflect.*;
 
public class Estudos{
  public static void main(String args[]){
    // vamos carregar a classe Object
    try{
      Class c = Class.forName("java.lang.Object");
 
      // obtém os nomes dos métodos
      Method[] metodos = c.getMethods(); 
 
      // exibe o nome de cada método
      for(int i = 0; i < metodos.length; i++){
        System.out.println(metodos[i].getName()); 
      }
    }
    catch(ClassNotFoundException e){
      System.out.println(e.getMessage()); 
    }
 
    System.exit(0);
  }
} 

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

wait
wait
wait
equals
toString
hashCode
getClass
notify
notifyAll

Eis uma lista das coisas que podemos fazer com a Java Reflection API:

1) Determinar a classe de um objeto;
2) Obter informações sobre os modificadores, campos (atributos), métodos, construtores e superclasses de uma classe;
3) Descobrir quais constantes e declarações de métodos pertencem a uma interface;
4) Criar uma instância de uma classe cujo nome não sabemos até o tempo de execução;
5) Obter e definir o valor do campo de um objeto;
6) Invocar um método em um objeto;
7) Criar um novo array, cujo tamanho e tipo de dados só saberemos em tempo de execução.

A Java Reflection API é geralmente usada para criar ferramentas de desenvolvimento tais como debuggers, class browsers e construtores de GUI. Geralmente, neste tipo de ferramentas, precisamos interagir como classes, objetos, métodos e campos, e não sabemos quais em tempo de compilação. Assim, a aplicação deve, dinamicamente, encontrar e acessar estes itens.

Esta dica foi revisada e testada no Java 8.


Python ::: Dicas & Truques ::: Lista (List)

Vetores e matrizes em Python - Como inserir itens em posições aleatórias de uma lista

Quantidade de visualizações: 9753 vezes
Este exemplo mostra como adicionar itens em posições aleatórias de uma lista Python. Note como usamos o método insert() da classe List passando um valor randômico para o índice no qual o novo elemento será inserido.

Veja o código completo para a dica:

# vamos importar o módulo random
import random

def main():
  # cria uma lista vazia
  valores = []
 
  # início do laço for
  for i in range(1, 11):
    valor = int(input("Informe um inteiro: "))
   
    if(len(valores) == 0):
      valores.insert(0, valor)
    else:
      # insere o valor em um posição aleatória
      valores.insert(random.randrange(0, 
        len(valores)), valor)
 
    # exibe os valores da lista
    print("Valores na lista:", valores, "\n")
    # fim do laço for

if __name__== "__main__":
  main()

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

Informe um inteiro: 9
Valores na lista: [9]

Informe um inteiro: 3
Valores na lista: [3, 9]

Informe um inteiro: 2
Valores na lista: [2, 3, 9]

Informe um inteiro: 8
Valores na lista: [2, 3, 8, 9]

Informe um inteiro: 10
Valores na lista: [10, 2, 3, 8, 9]

Informe um inteiro: 18
Valores na lista: [18, 10, 2, 3, 8, 9]

Informe um inteiro: 30
Valores na lista: [18, 10, 30, 2, 3, 8, 9]

Informe um inteiro: 60
Valores na lista: [18, 10, 30, 2, 3, 8, 60, 9]

Informe um inteiro: 67
Valores na lista: [18, 10, 67, 30, 2, 3, 8, 60, 9]

Informe um inteiro: 82
Valores na lista: [18, 10, 67, 30, 2, 3, 8, 82, 60, 9]


JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como remover o primeiro elemento de um array em JavaScript - Como usar a função shift() do objeto Array do JavaScript

Quantidade de visualizações: 8759 vezes
Neste dica mostrarei como usar o método shift() do objeto Array da linguagem JavaScript para remover e retornar o primeiro elemento de um vetor. A ação de remover o primeiro elemento, ou seja, o elemento do topo do vetor é muito usada na construção da estrutura de dados pilha.

Veja o código completo, incluindo a página HTML que permite executar o exemplo:

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

<script language="javascript">
  // vamos declarar e instanciar um vetor com 5 elementos
  var valores = new Array(1, 2, 3, 4, 5);
  document.write("Valores no vetor: " + valores + "<br>");
  
  // vamos remover o primeiro elemento
  var primeiro = valores.shift();
  document.write("Removendo o primeiro elemento: " +
     primeiro + "<br>");
  document.write("Valores no vetor: " + valores);
</script>

</body>
</html>

Ao abrir esta página HTML nós teremos o seguinte resultado:

Valores no vetor: 1,2,3,4,5
Removendo o primeiro elemento: 1
Valores no vetor: 2,3,4,5


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


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

Como testar condições em Python usando a estrutura condicional if...elif...else (se, senão se, senão)

Quantidade de visualizações: 9994 vezes
A instrução condicional if (se) é usada para verificar uma condição na linguagem Python. Se esta condição for verdadeira, um bloco de códigos é executado. Opcionalmente um bloco de códigos pode também ser executado caso a condição seja falsa.

Veja um exemplo:

def main():
  numero = 10
  valor = int(input("Informe um inteiro: "))
 
  if valor == numero:
    print("Parabéns, você acertou de primeira")
    print("Já tentou a Megasena?")
  elif valor < numero:
    print("Tente um número maior")
  else:
    print("Tente um número menor")
 
if __name__== "__main__":
  main()

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

Informe um inteiro: 3
Tente um número maior

Observe que as instruções a serem executadas em um bloco são agrupadas por indentação.

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



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