Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: Python ::: Dicas & Truques ::: Data e Hora

Datas e horas em Python - Como retornar o nome do dia da semana no formato longo (segunda-feira, terça-feira, etc) usando a função strftime() do Python

Quantidade de visualizações: 8520 vezes
Nesta dica eu mostro como podemos usar a função strftime() da linguagem Python para obter e exibir o nome do dia da semana no formato longo e em português, ou seja, segunda-feira, terça-feira, quarta-feira, etc.

Veja o código completo para o exemplo:

from datetime import datetime
import locale

# função principal do programa
def main():
  # Configurações do usuário
  locale.setlocale(locale.LC_ALL, '')
 
  # Obtém um datatime da data e hora atual
......


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

O dia da semana é: quinta-feira

Link para compartilhar na Internet ou com seus amigos:

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

Como calcular os dias restantes para uma data em C# usando um objeto TimeSpan

Quantidade de visualizações: 9013 vezes
Em algumas ocasiões precisamos saber a quantidade de dias restantes para uma determinada data no futuro em C# (próximo Natal, próxima Páscoa, vencimento de uma duplicata, etc). O trecho de código abaixo mostra como isso pode ser feito. Veja que usamos o construtor da estrutura DateTime para construir a data no futuro e então subtraímos desta a data atual. Em seguida obtemos a quantidade de dias do TimeSpan resultante:

static void Main(string[] args){
  // vamos obter a quantidade de dias restantes para o Natal de
  // 2009
  DateTime data_futura = new DateTime(2009, 12, 25);  // 25/12/2009
  DateTime hoje = DateTime.Now;

  // obtém a quantidade de dias restantes
  TimeSpan dif = data_futura.Subtract(hoje);
......



React ::: Elementos de Formulários HTML ::: input type text Element/Object

Como obter o texto digitado em uma caixa de texto em React usando useState()

Quantidade de visualizações: 316 vezes
Nesta dica mostrarei como podemos retornar o texto digitado em um elemento HTML <input type="text"> ao clicarmos em um botão. Para isso nós faremos uso do gerencimento de estado proporcionado pelo objeto useState do React.

Note que teremos dois estados: nome e nomeAtualizado, que estarão conectados às funções setNome() e setNomeAtualizado(). No momento que o texto é digitado na caixa de texto, automaticamente o estado nome é atualizado para corresponder ao contéudo exato do elemento HTML <input type="text">.

Somente quando o botão é clicado é que transferimos o valor do estado nome para o estado nomeAtualizado, por meio de uma chamada à função setNomeAtualizado.

Veja o código completo para o App.js:

// vamos importar o useState
import {useState} from 'react';

// função App() que será exportada
export default function App() {
  // vamos criar dois states e suas funções
  // correspondentes
  const [nome, setNome] = useState('');
  const [nomeAtualizado, setNomeAtualizado] = useState(nome);

  // aqui nós gerenciamos o evento onChange da caixa
  // de texto
  const tratarEventoChange = (event) => {
    // e chamamos a função que atualiza o estado nome
    setNome(event.target.value);
  };

  // aqui nós gerenciamos o evento onClick do botão
  const tratarEventoClick = () => {
......


E aqui está o código para o index.js:

// vamos fazer os imports necessários
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';

// definimos a raiz da aplicação React
const root = ReactDOM.createRoot(
......


Execute o exemplo e você verá uma caixa de texto <input type="text">, um botão <button> e dois elementos <h2>. Quando digitamos na caixa de texto, automaticamente o estado nome é atualizado. Ao clicarmos no botão, o estado nome é transferido para o estado nomeAtualizado, tudo isso é refletido de imediato na página.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística

Exercícios Resolvidos de Java - Como converter de decimal para números romanos em Java

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

Escreva um programa Java que pede para o usuário informar um número inteiro decimal e converta-o para o número romano correspondente.

Sua saída deverá ser parecida com:

Informe um número decimal: 2023
O número romano correspondente é: MMXXIII 
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) {
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);

    // vamos criar um array com os valores decimais possíveis de
    // cada número romano
    int valoresNumerosRomanos[] = new int[]{1000, 900, 500, 400,
      100, 90, 50, 40, 10, 9, 5, 4, 1};

    // representação dos números romanos
    String numerosRomanos[] = new String[]{"M", "CM", "D", "CD",
      "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};

    // vamos pedir para o usuário informar um número decimal
    System.out.print("Informe um número decimal: ");
    int numero = Integer.parseInt(entrada.nextLine());

    // para guardar o resultado
......



Java ::: Dicas & Truques ::: Operadores de Manipulação de Bits (Bitwise Operators)

Como usar o operador de bits & (E/AND sobre bits) em Java - Java Avançado - Manipulação de bits em Java

Quantidade de visualizações: 6440 vezes
Esta dica de Java é muito útil para quem está se preparando para entrevistas de código ou desafios de programação. A manipulação de bits é fator importante para testar as habilidades de candidatos a vagas de programador, pois ela demonstra um conhecimento muito aprofundado de lógica de programação e também de rotinas de baixo nível.

O operador de bits & (E/AND sobre bits) da linguagem Java é usado quando queremos comparar os bits individuais de dois valores integrais (inteiros) e produzir um terceiro resultado. Os bits no resultado serão configurados como 1 se os bits correspondentes nos dois outros valores foram 1. Em caso contrário os bits são configurados como 0.

Vamos analisar os seguintes valores binários:

a) 0101 (5 decimal)
b) 0100 (4 decimal)

Quando aplicamos o operador & nestes dois valores teremos o seguinte resultado:

0101
0100
----
0100


Veja que o resultado é 0100, uma vez que apenas o segundo bit de cada valor está configurado como 1. Vamos ver isso em Java agora. Observe o seguinte trecho de código:

public class Main {
  public static void main(String[] args) {
    int a = 5;
    int b = 4;
    int c = a & b;
     
    // exibe o resultado (em inteiro e em bytes)
    System.out.println("a = " + obterBits(a) + " (" + a + ")");
    System.out.println("b = " + obterBits(b) + " (" + b + ")");
    System.out.println("a & b = " + obterBits(c) + " (" + c + ")");
  }
  
  // método auxiliar que converte um inteiro em sua representação em bits
......


Ao executar este código teremos o seguinte resultado:

a = 00000000 00000000 00000000 00000101 (5)
b = 00000000 00000000 00000000 00000100 (4)
a & b = 00000000 00000000 00000000 00000100 (4)


JavaScript ::: Dicas & Truques ::: Data e Hora

Como construir uma determinada data e hora usando o construtor do objeto Date do JavaScript

Quantidade de visualizações: 6627 vezes
Em algumas situações precisamos construir um objeto Date representando uma determinada data e hora. Para isso podemos usar o construtor deste objeto. Veja a sintáxe:

new Date(year, month[, date[, h[, m[, s[, ms]]]]]);
......


Veja que temos que fornecer os argumemtos na ordem ano, mês, dia, horas, minutos, segundos e milisegundos. Apenas os argumentos para os parâmetros ano e mês são obrigatórios. Veja, por exemplo, como podemos construir a data 01/08/2010:

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

<script type="text/javascript">
  // vamos construir a data 01/08/2010
......


Este trecho de código exibirá o seguinte resultado:

A data é: Sun Aug 1 00:00:00 UTC-0300 2010.

É importante ficar atento à faixa de valores permitida para cada um dos parâmetros:

year - Exigido. Aqui devemos fornecer o ano completo, por exemplo, 1997 (e não 97).

month - Exigido. Devemos fornecer o mês como um inteiro na faixa de 0 a 11 (janeiro é 0 enquanto dezembro é 11).

date - Opcional. Aqui devemos fornecer o dia como um inteiro na faixa de 1 a 31.

hours - Opcional. Devemos fornecer as horas como um inteiro na faixa de 0 a 23.

minutes - Opcional. Devemos fornecer os minutos como um inteiro na faixa de 0 a 59.

seconds - Opcional. Devemos fornecer os segundos como um inteiro na faixa de 0 a 59.

ms - Opcional. Um inteiro na faixa de 0 a 999.

Veja agora um trecho de código no qual construímos a data 14/05/2010 às 17:50:

<script type="text/javascript">
  // vamos construir a data 14/05/2010 às 17:50
  var data = new Date(2010, 4, 14, 17, 50);
......


Este código exibirá o seguinte resultado:

A data é: Fri May 14 17:50:00 UTC-0300 2010.

Esta dica foi escrita e testada no Internet Explorer 8 e Firefox 3.6.


Desafios, Exercícios e Algoritmos Resolvidos de JavaScript

Veja mais Dicas e truques de JavaScript

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

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



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