C# ::: Dicas & Truques ::: Data e Hora |
Como testar se um ano é bissexto em C# usando a função IsLeapYear() da classe DateTimeQuantidade de visualizações: 14436 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: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. |
Java ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular a área de um Triângulo Equilátero em Java - Java para Geometria, Trigonometria e Álgebra LinearQuantidade de visualizações: 1859 vezes |
Um Triângulo Equilátero é o triângulo que possui os três lados iguais, e cujos ângulos internos são todos 60 graus (somando 180). Veja na figura abaixo as características de um Triângulo Equilátero: ![]() Nesta dica de Java eu mostrarei como calcular a área do triângulo equilátero. Para isso, vamos revisar a fórmula para o cálculo da área do triângulo equilátero: \[\text{Área K} = \dfrac{1}{4} \times \sqrt{3} \times L^2 \] E veja o código Java para o cálculo: package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // para efetuar a leitura do usuário Scanner entrada = new Scanner(System.in); // vamos pedir para o usuário informar o valor do lado do triângulo System.out.print("Informe o lado do triângulo: "); double lado = Double.parseDouble(entrada.nextLine()); // agora vamos calcular a área do triângulo equilátero double area = (1.0 / 4.0) * Math.sqrt(3) * Math.pow(lado, 2); // e finalmente mostramos o resultado System.out.println("A área do triângulo equilátero é: " + area); } } Ao executarmos este código nós teremos o seguinte resultado: Informe o lado do triângulo: 5 A área do triângulo equilátero é: 10.825317547305483 |
jQuery ::: Dicas & Truques ::: Manipulação e Conteúdo Dinâmico |
Como adicionar conteúdo ao final de um elemento HTML usando a função append() do jQueryQuantidade de visualizações: 900 vezes |
O método append() permite adicionar conteúdo ao final de um elemento HTML. Este conteúdo pode ser um seletor, um elemento HTML, uma string HTML ou um objeto jQuery. Veja um trecho de código no qual adicionamos mais um linha de texto a um parágrafo: <script type="text/javascript"> <!-- function adicionarConteudo(){ var texto = "<br>Mais uma linha."; $("#parag").append(texto); } //--> </script> O método append() opera em todos os elementos HTML retornados sob uma determinação condição. O retorno do método é um objeto jQuery que pode ser usado para fins de encadeamento de chamadas de métodos. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Exercício Resolvido de Java - Como converter minutos em segundos em Java usando uma funçãoQuantidade de visualizações: 867 vezes |
Pergunta/Tarefa: Escreva um programa Java para converter minutos em segundos. Você deverá criar uma função converter() que receberá, como argumento, um número inteiro representando os minutos e retornará, também como um inteiro, os segundos correspondentes. Os minutos deverão ser informados pelo usuário. Sua saída deverá ser parecida com: Informe os minutos: 15 A quantidade de segundos é: 900 Veja a resolução comentada deste exercício em 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 pedir para o usuário informar os minutos System.out.print("Informe os minutos: "); int minutos = Integer.parseInt(entrada.nextLine()); // agora vamos chamar a função converter() para converter // os minutos em segundos int segundos = converter(minutos); // e mostramos o resultado System.out.println("A quantidade de segundos é: " + segundos); } // função usada para converter minutos em segundos public static int converter(int minutos){ int segundos = minutos * 60; return segundos; } } |
Java ::: Dicas & Truques ::: Formatação de datas, strings e números |
Como usar o método format() da classe NumberFormat do Java para formatar um valor float ou double de acordo com as configurações regionais - RevisadoQuantidade de visualizações: 11251 vezes |
Nesta dica mostrarei como usar o método format() da classe NumberFormat da linguagem Java. Esta classe está no pacote java.text e é usada para a formatação e análise de valores numéricos. Note como usei o método getInstance() sem argumentos. Isso nos permite retornar uma instância de NumberFormat de acordo com as configurações regionais da máquina na qual o código está sendo executado. Veja o código completo: package arquivodecodigos; import java.text.NumberFormat; public class Estudos{ public static void main(String[] args){ // vamos double a ser formatado double valor = 1234567.89; // vamos obter uma instância de acordo com as configurações // regionais NumberFormat nf = NumberFormat.getInstance(); // e agora usamos o método format() para formatar String numFormatado = nf.format(valor); // exibimos o valor original System.out.println("Sem formatação: " + valor); // com formatação System.out.println("Com formatação: " + numFormatado); } } Ao executar este código nós teremos o seguinte resultado: Sem formatação: 1234567.89 Com formatação: 1.234.567,89 Esta dica foi revisada e testada no Java 8. |
Java ::: Dicas & Truques ::: Data e Hora |
Como construir uma data em Java usando o método set() da classe Calendar - Apostila Java BásicoQuantidade de visualizações: 181 vezes |
Nesta dica mostrarei como é possível usar o método set() da classe Calendar, do pacote java.util, para construir uma data e hora em Java. Veja o exemplo completo (fique atento à ordem do ano, mês, dia, horas, minutos e segundos): package arquivodecodigos; import java.util.Calendar; public class Estudos{ public static void main(String args[]){ Calendar agora = Calendar.getInstance(); // ano, mês, dia, hora, minuto, segundo // mês começa a partir de 0 agora.set(2005, 10, 23, 5, 29, 53); // mostra o resultado System.out.println(agora.getTime().toString()); } } Ao executar este código Java nós teremos o seguinte resultado: Wed Nov 23 05:29:53 BRST 2005 |
Java ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar o tamanho de uma string em Java usando o método length() da classe StringQuantidade de visualizações: 455 vezes |
O método length() da classe String do Java é muito útil quando queremos o tamanho, ou seja, o comprimento de uma string. Uma string é um conjunto de caracteres que compôem uma palavra, frase ou texto em Java. Este método é chamado diretamente na instância da classe String e retorna um int contendo o tamanho da string. Veja um exemplo de seu uso: package arquivodecodigos; // Este exemplo mostra como obter o tamanho de uma string public class Estudos{ public static void main(String[] args){ String frase = "Java é muito interessante"; // vamos obter o tamanho da string int tam = frase.length(); // e mostramos o resultado System.out.println("Esta string contem " + tam + " caracteres"); System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: Esta string contem 25 caracteres. |
C# ::: C# + MySQL ::: MySqlCommand |
Como inserir dados em uma tabela MySQL usando INSERT INTO e consultas parametrizadas no C#Quantidade de visualizações: 1145 vezes |
As consultas parametrizadas podem ser definidas para o método ExecuteNonQuery() da classe MySqlCommand por meio dos métodos Add() e AddWithValue() do objeto Parameters. Neste exemplo eu mostrarei como usar AddWithValue(), já que ele nos permite informar tanto o parâmetro quanto o seu valor. Observe que a tabela usada nesta dica possui os campos id, titulo, autor, paginas e data_cadastro. O campo id é auto-incremento (recebendo o valor NULL) e o campo data_cadastro é do tipo DATETIME (e recebe o valor NOW()). Veja o código completo para o exemplo (incluindo a conexão C# + MySQL usando a classe MySqlConnection): using System; using System.Data; using System.Windows.Forms; using MySql.Data.MySqlClient; namespace EstudosMySQL { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { // objeto de conexão MySqlConnection conn = null; // string de conexão string connStr = "server=localhost;user id=root; " + "password=osmar1234; database=estudos; pooling=false"; try { conn = new MySqlConnection(connStr); conn.Open(); if (conn.State == ConnectionState.Open) { // primeiro criamos um novo objeto MySqlCommand MySqlCommand comando = new MySqlCommand(); // definimos a conexão para este comando comando.Connection = conn; // definimos o comando SQL a ser executado usando parâmetros comando.CommandText = "INSERT INTO livros (id, titulo, autor, paginas, data_cadastro) " + "VALUES(NULL, @titulo, @autor, @paginas, NOW())"; // agora definimos os valores para os parâmetros comando.Parameters.AddWithValue("@titulo", "APLICAÇÕES PHP REST"); comando.Parameters.AddWithValue("@autor", "CARLOS JUNIOR SOUZA"); comando.Parameters.AddWithValue("@paginas", 280); comando.Prepare(); // e executamos o comando SQL int res = comando.ExecuteNonQuery(); if (res > 0) { MessageBox.Show("Operação realizada com sucesso. " + res + " linhas afetadas."); } else { MessageBox.Show("Deve ter acontecido alguma coisa. " + res + " linhas afetadas."); } } } catch (MySqlException ex) { MessageBox.Show("Erro: " + ex.Message); } } } } |
Delphi ::: VCL - Visual Component Library ::: TStringGrid |
Como obter ou definir a quantidade de linhas e colunas fixas em um TStringGrid do DelphiQuantidade de visualizações: 12260 vezes |
Um controle TStringGrid possui a capacidade de exibir linhas e colunas fixas, ou seja, estas linhas e colunas permanecem visíveis na área do componente quando as barras de rolagem são acionadas. Isso é útil na exibição dos títulos das colunas ou numeração das linhas. A quantidade de linhas fixas no controle TStringGrid pode ser definida por meio da propriedade FixedRows, enquanto a quantidade de colunas fixas pode ser definida por meio da propriedade FixedCols. Estas propriedades podem ser manipuladas em tempo de design ou execução. Veja um trecho de código no qual eliminamos as linhas e colunas fixas (definindo o valor 0 para ambas as propriedades): procedure TForm1.Button1Click(Sender: TObject); begin // vamos definir a quantidade de linhas e colunas fixas // no TStringGrid StringGrid1.FixedRows := 0; StringGrid1.FixedCols := 0; end; Em tempo de execução a quantidade de linhas e/ou colunas fixas em um TStringGrid podem ser obtidas com código semelhante ao mostrado abaixo: procedure TForm1.Button1Click(Sender: TObject); begin // vamos obter a quantidade de linhas e colunas fixas // no TStringGrid Memo1.Lines.Add('Quantidade de linhas fixas: ' + IntToStr(StringGrid1.FixedRows)); Memo1.Lines.Add('Quantidade de colunas fixas: ' + IntToStr(StringGrid1.FixedCols)); end; Execute este código e clique no botão. Você terá um resultado parecido com: Quantidade de linhas fixas: 1 Quantidade de colunas fixas: 1 |
C ::: Dicas & Truques ::: Ponteiros, Referências e Memória |
Como alocar memória dinâmica usando a função calloc() da linguagem CQuantidade de visualizações: 18787 vezes |
A função calloc() é bem parecida com a função malloc() e também é usada em C para alocarmos um bloco de memória. A diferença é que calloc() recebe a quantidade de elementos e o número de bytes do elemento e retorna um ponteiro do tipo void (genérico) para o início do bloco de memória obtido. Veja sua assinatura:void *calloc(size_t n, size_t size); Se a memória não puder se alocada, um ponteiro nulo (NULL) será retornado. É importante se lembrar de alguns conceitos antes de usar esta função. Suponhamos que você queira alocar memória para um único inteiro. Você poderia ter algo assim: // aloca memória para um int ponteiro = calloc(1, 4); Embora este código esteja correto, não é um boa idéia assumir que um inteiro terá sempre 4 bytes. Desta forma, é melhor usar o operador sizeof() para obter a quantidade de bytes em um inteiro em uma determinada arquitetura. Veja: // aloca memória para um int ponteiro = calloc(1, sizeof(int)); Eis o código completo para um aplicativo C que mostra como alocar memória para um inteiro e depois atribuir e obter o valor armazenado no bloco de memória alocado: #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { // ponteiro para uma variável do tipo inteiro int *ponteiro; // aloca memória para um int ponteiro = calloc(1, sizeof(int)); // testa se a memória foi alocada com sucesso if(ponteiro) printf("Memoria alocada com sucesso.\n"); else printf("Nao foi possivel alocar a memoria.\n"); // atribui valor à memória alocada *ponteiro = 45; // obtém o valor atribuído printf("Valor: %d\n\n", *ponteiro); // libera a memória free(ponteiro); system("PAUSE"); return 0; } Uma aplicação interessante da função calloc() é quando precisamos construir uma matriz dinâmica. Veja como isso é feito no código abaixo: #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int i; // quantidade de elementos na matriz int quant = 10; // ponteiro para o bloco de memória int *ponteiro; // aloca memória para uma matriz de inteiros ponteiro = calloc(quant, sizeof(int)); // testa se a memória foi alocada com sucesso if(ponteiro) printf("Memoria alocada com sucesso.\n"); else{ printf("Nao foi possivel alocar a memoria.\n"); exit(1); } // atribui valores aos elementos do array for(i = 0; i < quant; i++){ ponteiro[i] = i * 2; } // exibe os valores for(i = 0; i < quant; i++){ printf("%d ", ponteiro[i]); } // libera a memória free(ponteiro); printf("\n\n"); system("PAUSE"); return 0; } |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
PHP - PHP para iniciantes - Como obter a diferença em horas entre duas datas (e suas respectivas horas) |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |