C# ::: Datas e Horas ::: DateTime

Como usar o método IsLeapYear() da estrutura DateTime do C# para verificar se um determinado ano é bissexto

Quantidade de visualizações: 7668 vezes
Podemos verificar se um determinando ano é bissexto usando o método IsLeapYear() da estrutura DateTime. Este método recebe um valor inteiro representando o ano com 4 dígitos e retorna um valor true ou false. Veja o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

static void Main(string[] args){
  // vamos verificar se o ano 2008
  // é bissexto
  int ano = 2008;

  if(DateTime.IsLeapYear(ano))
    Console.WriteLine("O ano informado é bissexto");
  else
    Console.WriteLine("O ano informado NÃO é bissexto");

  // pausa o programa
  Console.ReadKey();
}

Este método pode disparar uma exceção ArgumentOutOfRangeException se o valor do ano for menor que 1 ou maior que 9999.


Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes)

Como repetir os elementos de um vetor ou matriz usando a função repeat() da NumPy do Python

Quantidade de visualizações: 1035 vezes
A função repeat() da biblioteca NumPy do Python é usada quando queremos repetir os elementos de um vetor ou matriz um determinado número de vezes. Em sua forma mais simples esta função pede um array e um número inteiro indicando a quantidade de repetições.

Veja o código Python completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# vamos importar a biblioteca NumPy
import numpy as np

def main():
  # vamos criar um vetor contendo 5 elementos
  vetor = np.array([5, 3, 9, 1, 4])

  # agora vamos aplicar a função repeat() a este vetor
  novo_vetor = np.repeat(vetor, 3)

  # vamos mostrar o resultado
  print("O vetor original é: {0}".format(vetor))
  print("O novo vetor é: {0}".format(novo_vetor))

if __name__== "__main__":
  main()

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

O vetor original é: [5 3 9 1 4]
O novo vetor é: [5 5 5 3 3 3 9 9 9 1 1 1 4 4 4]

Veja agora o efeito desta função em uma matriz de 2 linhas por 3 colunas:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# vamos importar a biblioteca NumPy
import numpy as np

def main():
  # vamos criar uma matriz de 2 linhas e 3 colunas
  matriz = np.array([(1, 2, 3), (4, 5, 6)])

  # agora vamos aplicar a função repeat() a esta matriz
  nova_matriz = np.repeat(matriz, 3, 0)

  # vamos mostrar o resultado
  print("A matriz original é:\n\n{0}".format(matriz))
  print("A nova matriz é:\n\n{0}".format(nova_matriz))

if __name__== "__main__":
  main()

Note que informei o valor 0 para o terceiro parâmetro da função repeat(). Isso faz com que os elementos da matriz sejam repetidos no eixo x. Veja:

A matriz original é:

[[1 2 3]
 [4 5 6]]

A nova matriz é:

[[1 2 3]
 [1 2 3]
 [1 2 3]
 [4 5 6]
 [4 5 6]
 [4 5 6]]


Se trocarmos o valor 0 por 1, o resultado será:

A matriz original é:

[[1 2 3]
 [4 5 6]]

A nova matriz é:

[[1 1 1 2 2 2 3 3 3]
 [4 4 4 5 5 5 6 6 6]]



LISP ::: LISP para Engenharia ::: Geometria Analítica e Álgebra Linear

Como converter Coordenadas Cartesianas para Coordenadas Polares em LISP - LISP para Engenharia

Quantidade de visualizações: 928 vezes
Nesta nossa série de LISP e AutoLISP para Geometria Analítica e Álgebra Linear, mostrarei um código 100% funcional para fazer a conversão entre coordenadas cartesianas e coordenadas polares. Esta operação é muito frequente em computação gráfica e é parte integrante das disciplinas dos cursos de Engenharia (com maior ênfase na Engenharia Civil).

Na matemática, principalmente em Geometria e Trigonometria, o sistema de Coordenadas no Plano Cartesiano, ou Espaço Cartesiano, é um sistema que define cada ponto em um plano associando-o, unicamente, a um conjuntos de pontos numéricos.

Dessa forma, no plano cartesiano, um ponto é representado pelas coordenadas (x, y), com o x indicando o eixo horizontal (eixo das abscissas) e o y indicando o eixo vertical (eixo das ordenadas). Quando saímos do plano (espaço 2D ou R2) para o espaço (espaço 3D ou R3), temos a inclusão do eixo z (que indica profundidade).

Já o sistema de Coordenadas Polares é um sistema de coordenadas em duas dimensões no qual cada ponto no plano é determinado por sua distância a partir de um ponto de referência conhecido como raio (r) e um ângulo a partir de uma direção de referência. Este ângulo é normalmente chamado de theta (__$\theta__$). Assim, um ponto em Coordenadas Polares é conhecido por sua posição (r, __$\theta__$).

Antes de prosseguirmos, veja uma imagem demonstrando os dois sistemas de coordenadas:



A fórmula para conversão de Coordenadas Cartesianas para Coordenadas Polares é:

__$r = \sqrt{x^2+y2}__$
__$\theta = \\arctan\left(\frac{y}{x}\right)__$

E aqui está o código LISP completo que recebe as coordenadas cartesianas (x, y) e retorna as coordenadas polares (r, __$\theta__$):

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

; programa LISP que converte Coordenadas Cartesianas
; em Coordenadas Polares
(let((x)(y)(raio)(theta)(angulo_graus))
  ; vamos ler as coordenadas cartesianas
  (princ "Valor de x: ")
  (force-output)
  (setq x (read))
  (princ "Valor de y: ")
  (force-output)
  (setq y (read))
  
  ; vamos calcular o raio
  (setq raio (sqrt (+ (expt x 2) (expt y 2))))
  
  ; agora calculamos o theta (ângulo) em radianos 
  (setq theta (atan y x))

  ; queremos o ângulo em graus também
  (setq angulo_graus (* 180 (/ theta pi)))
  
  ; e exibimos o resultado
  (princ "As Coordenadas Polares são: ")
  (format t "raio = ~F, theta = ~F, ângulo em graus: ~F"
    raio theta angulo_graus)
)

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

Valor de x: -1
Valor de y: 1
As Coordenadas Polares são:
raio = 1.4142135623730951, theta = 2.356194490192345, ângulo em graus = 135.0

Veja que as coordenadas polares equivalentes são (__$\sqrt{2}__$, __$\frac{3\pi}{4}__$), com o theta em radianos. Sim, os professores das disciplinas de Geometria Analítica e Álgebra Linear, Física e outras gostam de escrever os resultados usando raizes e frações em vez de valores reais.


Java ::: Dicas & Truques ::: Expressões Regulares

Como remover espaços em excesso de uma string usando expressões regulares em Java

Quantidade de visualizações: 12796 vezes
Nesta dica mostrarei como é possível usar expressões regulares em Java para remover espaços em excesso de uma string, tanto no início, meio e fim. Note que vamos deixar apenas um espaço entre as palavras da frase.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
 
package arquivodecodigos;

import java.util.regex.*;
 
public class Estudos{ 
  public static void main(String args[]){ 
    String padrao = "\\s{2,}";
    Pattern regPat = Pattern.compile(padrao);
    String frase = "   Esta    frase   contém  espaços   "; 
    Matcher matcher = regPat.matcher(frase);
    String res = matcher.replaceAll(" ").trim();
    System.out.println("Com espaços: " + frase);
    System.out.println("Sem espçaos: " + res);
  } 
} 

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

Com espaços:    Esta    frase   contém    espaços   
Sem espaços: Esta frase contém espaços



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

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


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