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

Como calcular a quantidade de dias decorridos em C# usando um objeto TimeSpan

Quantidade de visualizações: 8206 vezes
Em algumas ocasiões precisamos saber a quantidade de dias decorridos deste uma determinada data usando a linguagem C#. 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 passado e então a subtraímos da data atual. Em seguida obtemos a quantidade de dias do TimeSpan resultante:

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      // vamos obter a quantidade de dias decorridos entre
      // 10/06/2009 e a data atual
      DateTime data_anterior = new DateTime(2009, 6, 10);  // 10/06/2009
      DateTime hoje = DateTime.Now;

      // obtém a quantidade de dias decorridos
      TimeSpan dif = hoje.Subtract(data_anterior);
      int decorridos = dif.Days;

      // exibe o resultado
      System.Console.WriteLine("Dias decorridos desde 10/06/2009: " +
        decorridos);

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

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

Dias decorridos desde 10/06/2009: 4662

Link para compartilhar na Internet ou com seus amigos:

Java ::: Dicas & Truques ::: Data e Hora

Como retornar o dia do mês em Java usando Calendar.DAY_OF_MONTH

Quantidade de visualizações: 11209 vezes
Nesta dica mostrarei como podemos usar a constante Calendar.DAY_OF_MONTH para retornar o dia do mês para uma determinada data. Para isso nós só precisamos fornecer esta constante para o método get() de uma instância da classe Calendar.

Veja o código completo para o exemplo:

package estudos;

import java.util.Calendar;

public class Estudos {
  public static void main(String args[]) {
    // vamos obter uma instância da classe Calendar
    Calendar agora = Calendar.getInstance();
    
    // agora vamos obter o dia do mês como um inteiro
    int dia_mes = agora.get(Calendar.DAY_OF_MONTH);
    
    // e mostramos o resultado
    System.out.println("O dia do mês é: " + dia_mes);
  }
}

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

O dia do mês é: 26


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos

POO - Programação Orientada a Objetos - Exercícios Resolvidos de Java - Ex. 2 - A classe Circulo (construtores, métodos, getters e setters e encapsulamento)

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

Escreva uma classe Circulo para representar círculos. Esta classe deverá conter os seguintes atributos e métodos:

a) Uma variável privada do tipo double chamada raio que guardará o valor do raio atual do circulo.

b) Métodos get() e set() públicos que permitem definir e acessar o valor da variável raio.

c) Um construtor que recebe o valor do raio como argumento.

d) Um método getArea() que calcula e retorna a área do círculo.

e) Um método getCircunferencia() que calcula e retorna a circunferência do círculo.

f) Um método aumentarRaio() que recebe um valor double e o usa como percentual para aumentar o raio do círculo.

Crie uma classe contendo um método main() para testar a funcionalidade da classe Circulo. Eis um exemplo de entrada e saída:



Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console:

Circulo.java:

package estudos;

public class Circulo{
  private double raio; // guarda o raio atual do círculo

  // construtor que recebe o valor do raio como argumento
  public Circulo(double raio){
    this.raio = raio;  
  }
  
  // permite obter o raio do círculo
  public double getRaio(){
    return raio;
  }

  // permite definir o raio do círculo
  public void setRaio(double raio){
    this.raio = raio;
  }
  
  // obtém a área do círculo
  public double getArea(){
    double area = Math.PI * Math.pow(this.raio, 2); 
    return area;  
  }
  
  // obtém a circunferência do círculo
  public double getCircunferencia(){
    double circunferencia = (2 * Math.PI) * this.raio; 
    return circunferencia;  
  }
  
  // permite aumentar o raio de acordo com uma porcentagem fornecida
  public void aumentarRaio(double porcentagem){
    this.raio = this.raio + (porcentagem / 100.0) * this.raio;    
  }
}

Veja agora o método main() que nos permite testar a funcionalidade da classe Circulo:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // vamos criar uma instância da classe Circulo
    Scanner entrada = new Scanner(System.in);
    System.out.print("Informe o raio do círculo: ");
    double raio = Double.parseDouble(entrada.nextLine());
    Circulo c = new Circulo(raio);
    
    // vamos mostrar o valor do raio atual
    System.out.println("Raio: " + c.getRaio());
    // vamos mostrar a área
    System.out.println("Área: " + c.getArea() + " metros quadrados");
    // vamos mostrar a circunferência
    System.out.println("Circunferência: " + c.getCircunferencia() + " metros");
    
    // vamos aumentar o raio do circulo em uma determinada porcentagem
    System.out.print("\nInforme o percentual de aumento do raio: ");
    double percentual = Double.parseDouble(entrada.nextLine());
    c.aumentarRaio(percentual);
    
    // vamos mostrar o valor do raio atual
    System.out.println("Raio: " + c.getRaio());
    // vamos mostrar a área
    System.out.println("Área: " + c.getArea() + " metros quadrados");
    // vamos mostrar a circunferência
    System.out.println("Circunferência: " + c.getCircunferencia() + " metros");
  }
}



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

Como contar quantas vezes um elemento aparece em uma lista do Python usando a função count()

Quantidade de visualizações: 7880 vezes
Em várias situações nós precisamos contar as ocorrências de um item em uma List do Python, ou seja, queremos saber quantas vezes um determinado elemento aparece na lista. Para isso nós podemos usar a função count() do objeto List.

Veja um código Python completo demonstrando seu uso:

# função principal do programa
def main():
  # cria uma lista de inteiros
  valores = [2, 5, 12, 2, 3, 2, 17]

  # vamos mostrar o conteúdo dessa lista
  print("Conteúdo da lista: {0}".format(valores))

  # verifica a quantidade de vezes que o
  # valor 2 aparece
  print("O valor 2 aparece", valores.count(2), "vezes")  
  
if __name__== "__main__":
  main()

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

Conteúdo da lista: [2, 5, 12, 2, 3, 2, 17]
O valor 2 aparece 3 vezes


Java ::: Pacote java.lang ::: StringBuffer

Curso completo de Java - Como usar a classe StringBuffer da linguagem Java

Quantidade de visualizações: 8673 vezes
A classe StringBuffer, no pacote java.lang, representa uma sequencia de caracteres mutável e segura em relação a threads. Um objeto StringBuffer é parecido com uma String, com a diferença que um StringBuffer pode ser modificado in-place, ou seja, modificações em seu conteúdo não geram uma nova cópia, como acontece com objetos da classe String.

Veja a posição desta classe na hierarquia de classes Java:

java.lang.Object
  java.lang.StringBuffer
A classe StringBuffer implementa as interfaces Serializable, Appendable e CharSequence.

A qualquer momento um StringBuffer contém uma sequencia de caracteres em particular, mas o tamanho e o conteúdo da sequencia pode ser alterado por meio de certas chamadas de métodos.

Objetos StringBuffer são seguros para acesso em um ambiente de múltiplas threads. Os métodos são sincronizados (synchronized) onde necessário de forma a garantir que todas as operações em uma instância em particular se comportem como se estivessem em ordem serial, ou seja, sejam consistentes com a ordem das chamadas de métodos feitas por cada uma das threads envolvidas.

As operações principais de um StringBuffer são os métodos append() e insert(), que são sobrecarregados para aceitar dados de qualquer tipo. Cada um destes métodos converte a informação fornecida em string e então acrescenta ou insere os caracteres desta string no string buffer. O método append() sempre adiciona os caracteres no final do buffer. O método insert(), por sua vez, adiciona os caracteres em um determinado ponto.

Por exemplo, se z se refere a um objeto string buffer cujo conteúdo é "start", então a chamada de método z.append("le") faria com que o string buffer tivesse agora ""startle"", enquanto z.insert(4, "le") alteraria o conteúdo do string buffer para "starlet".

Em geral, se sb se refere a uma instância de StringBuffer, então sb.append(x) tem o mesmo efeito que sb.insert(sb.length(), x).

Sempre que uma operação ocorre envolvendo uma sequencia de fonte (por exemplo, adicionar ou inserir a partir de uma outra sequencia), esta classe sincroniza somente o string buffer no qual a operação está sendo feita.

Todo string buffer possui uma capacidade (capacity). Enquanto o comprimento da sequencia de caracteres contida no string buffer não exceder a capacidade do mesmo, não há necessidade de alocar uma nova matriz interna de buffer. Se o buffer interno for sobrecarregado, ele será automaticamente expandido. A partir do Java 5, esta classe foi suplementada com uma classe equivalente criada para o uso em ambiente de thread única: StringBuilder. A classe StringBuilder deve ser usada em vez de StringBuffer, uma vez que ela suporta as mesmas operações mas é mais rápida por não executar sincronização.


Angular ::: Dicas & Truques ::: Componentes Angular

Angular para iniciantes - Como criar o seu primeiro componente Angular usando o Angular CLI - Comando ng generate component

Quantidade de visualizações: 2287 vezes
Aplicações Angular são construidas em cima de componentes, e estes consistem de:

a) Um template HTML que declara o que deve ser renderizado na página.
b) Uma classe TypeScript que define o comportamento do componente.
c) Um seletor CSS que define com o componente será usado em um template.
d) Estilos CSS opcionais aplicados ao template.

Todos esses aspectos acima são abordados em mais dicas dessa seção. O importante agora é entendermos como criar o componente e exibí-lo no navegador.

Assim, se você ainda não o fez, crie uma nova aplicação Angular usando o Angular CLI. Você pode usar um comando parecido com:

c:\estudos_angular>ng new estudos

Este comando vai criar uma nova aplicação Angular com o nome estudos dentro da pasta "c:\estudos_angular". Aguarde alguns minutos e verá que o Angular CLI já criou toda a estrutura da aplicação. Para executá-la, dispare os comandos abaixo:

c:\estudos_angular>cd estudos
c:\estudos_angular\estudos>ng serve --open

Quando a aplicação subir, veremos o seguinte resultado:



Você obteve um resultado parecido? Então vamos continuar.

Vá até o diretório "C:\estudos_angular\estudos\src\app" e você verá que o Angular CLI já criou para nós um componente com o nome AppComponent por meio dos arquivos app.component.css,
app.component.html, app.component.spec.ts e app.component.ts. Agora vamos voltar nossa atenção para o arquivo app.module.ts. Abra ele no seu editor de texto favorito e você verá o seguinte código:

import {NgModule} from '@angular/core';
import {BrowserModule} from '@angular/platform-browser';

import {AppComponent} from './app.component';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }


Por ora não vamos analisar todo o conteúdo deste arquivo, apenas fique atento ao que vai acontecer com ele depois que criarmos nosso novo componente, o que faremos agora.

Abra uma nova janela de terminal, navegue até o diretório raiz da aplicação e dispare o seguinte comando:

c:\angular>cd estudos
c:\angular\estudos>ng generate component noticia

Nesse momento o Angular CLI criou uma pasta noticia com os seguintes arquivos:

noticia.component.css
noticia.component.html
noticia.component.spec.ts
noticia.component.ts

Agora volte até o arquivo app.module.ts e veja que o Angular CLI o modificou, adicionando o novo componente NoticiaComponent. É importante entender bem o que acontece com este arquivo, pois é ele que indica qual componente será iniciado em primeiro lugar junto com a aplicação Angular.

Agora abra o arquivo noticia.component.ts e altere o seu conteúdo para a versão abaixo:

import { Component } from '@angular/core';

@Component({
  selector: 'app-noticia',
  templateUrl: './noticia.component.html',
  styleUrls: ['./noticia.component.css']
})
export class NoticiaComponent{
  titulo = `Presidente afirma que o preço da gasolina 
    não sobe mais.`;
}

Agora vá em noticia.component.html e altere-o para o código abaixo:

<div>
  <h2>Sou o componente Noticia</h2>
  <h3>{{ titulo }}</h3>
</div>

Nosso componente está pronto. Vamos fazer uns ajustes no componente que o Angular CLI criou para nós automaticamente. Abra o arquivo app.component.ts e altere o seu conteúdo para:

import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  nome = 'AppComponent';
}

Agora vá até o arquivo app.component.html e modifique-o para o código abaixo:

<div>
  <h1>Sou o componente que o Angular CLI criou</h1>
  <h2>Meu nome é: {{ nome }}</h2>
</div>

<app-noticia></app-noticia>

Veja que coloquei o componente <app-noticia></app-noticia> dentro do componente principal. Agora, se você reiniciar a aplicação (é provável que as mudanças já estejam aparecendo no seu navegador) você verá o resultado abaixo:



Obteve resultado parecido? Que maravilha! Agora, para terminar esta dica, abra o arquivo noticia.component.css e vamos adicionar os estilos CSS abaixo:

h2 {color: red}
div {border: 1px solid green; padding: 10px}

Veja a aplicação novamente e note como o componente Noticia já contém uma formatação diferente. Agora é só criar vários componentes, agrupá-los, aplicar formatações CSS, imagens, etc, e contruir uma aplicação realmente interessante.


Veja mais Dicas e truques de Angular

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á 13 usuários muito felizes estudando em nosso site.