C# ::: Windows Forms ::: ListBox |
Como excluir todos os itens selecionados em uma ListBox de múltipla seleção do C# Windows FormsQuantidade de visualizações: 11273 vezes |
Em algumas situações precisamos remover todos os itens selecionados em uma ListBox. Nesta dica mostrarei como isso pode ser feito. Comece criando uma ListBox com o nome listBox1 e adicione o código abaixo no evento Click de um botão: private void button1_Click(object sender, EventArgs e){ // vamos adicionar alguns itens na ListBox listBox1.Items.Add("Java"); listBox1.Items.Add("C++"); listBox1.Items.Add("Delphi"); listBox1.Items.Add("Python"); listBox1.Items.Add("VB.NET"); // vamos definir a seleção da lista como seleção múltipla listBox1.SelectionMode = SelectionMode.MultiExtended; } Em seguida coloque o trecho de código abaixo no evento Click de um segundo botão: private void button2_Click(object sender, EventArgs e){ // vamos obter a lista de itens selecionados ListBox.SelectedObjectCollection selecionados = new ListBox.SelectedObjectCollection(listBox1); // vamos excluir todos os itens selecionados for(int i = selecionados.Count - 1; i >= 0; i--){ listBox1.Items.Remove(selecionados[i]); } } Execute a aplicação e clique no primeiro botão. Isso fará com que alguns itens sejam inseridos na lista e seu modo de seleção seja definido como seleção múltipla. Agora selecione alguns itens e clique no segundo botão. Você verá que os itens selecionados são automaticamente excluídos. O primeiro passo foi obter um objeto da classe ListBox.SelectedObjectCollection contendo apenas os itens selecionados na ListBox. Em seguida nós usamos um laço for para percorrer os itens do objeto ListBox.SelectedObjectCollection e fornecer o índice de cada item selecionado ao método Remove() da coleção de itens da ListBox. Esta coleção é uma instância da classe ListBox.ObjectCollection. Há uma segunda forma de se excluir todos os itens da ListBox sem usar um objeto da classe ListBox.SelectedObjectCollection. Tudo que precisamos fazer é combinar os métodos GetSelected() da classe ListBox e o método RemoveAt() da coleção de itens (objeto da classe ListBox.ObjectCollection): private void button2_Click(object sender, EventArgs e){ // vamos excluir todos os itens selecionados for(int i = listBox1.Items.Count - 1; i >= 0; i--){ // o item está selecionado? if(listBox1.GetSelected(i)){ listBox1.Items.RemoveAt(i); } } } |
Java ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular porcentagem em Java - Como efetuar cálculos de porcentagem em JavaQuantidade de visualizações: 55290 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 Java. 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 Java: // Algoritmo que calcula porcentagem em Java package estudos; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema double valor, percentual, valor_final; valor = 178.00; // valor original percentual = 15.0 / 100.0; // 15% valor_final = valor + (percentual * valor); // mostra o resultado System.out.println("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 Java: // Algoritmo que calcula porcentagem em Java package estudos; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema double valor, percentual, valor_final; valor = 250.00; // valor original percentual = 8.0 / 100.0; // 8% valor_final = valor - (percentual * valor); // mostra o resultado System.out.println("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 Java: // Algoritmo que calcula porcentagem em Java package estudos; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema double perguntas, acertos; perguntas = 90.0; acertos = 72.0; // mostra a porcentagem de acertos System.out.print("Porcentagem de acertos: "); System.out.println(((acertos / perguntas) * 100) + "%"); // mostra a porcentagem de erros System.out.print("Porcentagem de erros: "); System.out.println((((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 Java: // Algoritmo que calcula porcentagem em Java package estudos; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema double valor_anterior, novo_valor, porcentagem_lucro; 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; System.out.println("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 Java: // Algoritmo que calcula porcentagem em Java package estudos; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema double valor, percentual, comissao; valor = 70.0; // valor do produto percentual = 5.0 / 100.0; // 5% // calcula a comissão comissao = percentual * valor; // mostra o resultado System.out.println("O valor repassado ao vendedor é: " + comissao); // O resultado será 3,5 } } |
LISP ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar uma substring de uma string em LISP usando a função subseq()Quantidade de visualizações: 592 vezes |
Nesta dica mostrarei como podemos extrair uma parte de uma palavra, frase ou texto, ou seja, vamos obter uma substring a partir de uma string. Na linguagem LISP isso pode ser feito por meio da função subseq(). Esta função aceita 3 argumentos. O primeiro argumento é a string a partir da qual a substring será extraída. O segundo argumento é o índice inicial da substring, começando sempre em 0. O terceiro argumento marca o índice final da substring (um índice a mais que o último caractere desejado). Se o terceiro argumento for omitido, todo o restante da string será incluído na substring. Veja o código LISP completo para o exemplo no qual pedimos para o usuário informar uma frase e extraímos dessa frase os 5 primeiros caracteres: ; variáveis que vamos usar no programa (let ((frase)(substring)) ; Vamos pedir para o usuário informar ; uma frase (princ "Informe uma frase: ") ; talvez o seu compilador não precise disso (force-output) ; atribui o valor lido à variável frase (setq frase (read-line)) ; vamos mostrar a frase informada ; o símbolo ~% provoca uma quebra de linha (format t "A frase informada foi: ~S~%" frase) ; agora vamos obter os 5 primeiros caracteres (setq substring (subseq frase 0 5)) ; e mostramos a substring (format t "A substring obtida foi: ~S" substring) ) Ao executar este código LISP nós teremos o seguinte resultado: A frase informada foi: "Estudar LISP é bom demais" A substring obtida foi: "Estud" |
PHP ::: Dicas & Truques ::: Variáveis e Constantes |
Como verificar se uma variável contém um valor numérico válido - Usando a função is_numeric() do PHP - RevisadoQuantidade de visualizações: 22490 vezes |
Em várias situações nós precisamos verificar se uma variável ou constante possui um valor numérico válido. Para isso podemos usar a função is_numeric() da linguagem PHP. Esta função retorna um valor true se o argumento for um valor númerico válido e false em caso contrário. Veja um exemplo completo de seu uso: <? /* Este trecho de código mostra como usar a função is_numeric para verificar se o valor de uma variável é um valor numérico válido */ $valor = 34; // válido // $valor = "45,3"; // inválido // $valor = "45.4"; // válido // $valor = ".5"; // válido if(is_numeric($valor)) echo "$valor é um valor numérico válido"; else echo "$valor NÃO é um valor numérico válido"; ?> Ao executar este código nós teremos o seguinte resultado: 34 é um valor numérico válido Esta dica foi revisada e testada no PHP 8. |
Java ::: Dicas & Truques ::: Formulários e Janelas |
Como definir a cor de fundo para a janela JFrame de sua aplicação Java SwingQuantidade de visualizações: 15953 vezes |
Nesta dica mostrarei como é possível definir a cor de fundo para uma janela JFrame. O truque aqui é obter o painel de conteúdo da JFrame usando o método getContentPane() e, em seguida, usar o método setBackground() da classe Container fornecendo a cor desejada. Veja o código completo para o exemplo: package arquivodecodigos; import java.awt.*; import javax.swing.*; public class Estudos extends JFrame{ public Estudos() { super("A classe JFrame"); Container c = getContentPane(); c.setLayout(new FlowLayout(FlowLayout.LEFT)); // Define a cor de fundo c.setBackground(Color.CYAN); setSize(350, 250); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Java Vetores e Matrizes - Como inicializar os elementos de um vetor usando o laço for da linguagem JavaQuantidade de visualizações: 9961 vezes |
Neste exemplo veremos como inicializar um vetor (array) de ints usando o laço for. Note que os elementos do array serão inicializados com os valores de 1 a 10. Veja o código completo: package arquivodecodigos; public class Estudos{ public static void main(String[] args){ // vamos declarar e construir um vetor de 10 elementos int[] a = new int[10]; // inicializa os elementos do vetor for(int i = 0; i < a.length; i++){ a[i] = (i + 1); } // exibe os valores dos elementos do vetor for(int i = 0; i < a.length; i++){ System.out.print(a[i] + ", "); } System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico |
Exercícios Resolvidos de Python - Como calcular o peso de uma pessoa na Lua usando PythonQuantidade de visualizações: 715 vezes |
Pergunta/Tarefa: Escreva um programa Python que leia o peso de uma pessoa na Terra e retorne o seu peso na Lua. Lembre-se da seguinte fórmula: \[\text{Peso na Lua} = \frac{\text{Peso na Terra}}{9,81} \times 1,622 \] Aqui nós estamos definindo a força da gravidade na Terra como 9,81 m/s2 e a força da gravidade na Lua como 1,622 m/s2. Se você quiser calcular o peso de uma pessoa em Marte, por exemplo, basta trocar a força da gravidade na Lua pela força da gravidade em Marte. Sua saída deverá ser parecida com: Peso na terra (kg): 70 O peso da pessoa na Lua é: 11.57 kg Veja a resolução comentada deste exercício usando Python: # função principal do programa def main(): # vamos ler o peso da pessoa na Terra peso_terra = float(input("Peso na terra (kg): ")) # vamos calcular o peso da pessoa na Lua peso_lua = (peso_terra / 9.81) * 1.622 # arredonda para duas casas decimais peso_lua = round(peso_lua, 2) # vamos mostrar o resultado print("O peso da pessoa na Lua é: {0} kg".format(peso_lua)) if __name__== "__main__": main() |
Delphi ::: Dicas & Truques ::: Strings e Caracteres |
Apostila Delphi para iniciantes - Como acessar os caracteres de uma string individualmenteQuantidade de visualizações: 17903 vezes |
Em algumas situações pode ser necessário acessar os caracteres de uma palavra, frase ou texto individualmente. Em Delphi isso pode ser feito usando-se a indexação de matrizes. Tenha em mente, porém, que o índice em Delphi começa em 1 e não 0, como na maioria das linguagens. Veja um trecho de código no qual acessamos o primeiro caractere de uma string: procedure TForm1.Button1Click(Sender: TObject); var nome: string; letra: Char; begin nome := 'Osmar J. Silva'; // vamos obter a primeira letra letra := nome[1]; // vamos exibir o resultado ShowMessage('A primeira letra é: ' + letra); end; Veja outro exemplo, no qual usamos um laço for para visitar cada um dos caracteres e exibí-lo: procedure TForm1.Button1Click(Sender: TObject); var nome: string; letra: Char; i: integer; begin nome := 'Osmar'; for i := 1 to Length(nome) do begin letra := nome[i]; ShowMessage('O ' + IntToStr(i) + 'º caractere é: ' + letra); end; end; Assim como acessamos os caracteres individuais de uma string para leitura, podemos fazê-lo também para alterações. Veja um trecho de código no qual trocamos o terceiro caractere de uma string: procedure TForm1.Button1Click(Sender: TObject); var nome: string; begin nome := 'Osmar'; // vamos alterar o terceiro caractere nome[3] := 'K'; ShowMessage(nome); end; Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Como calcular salário líquido em Java - Calculando o salário líquido de um professorQuantidade de visualizações: 10643 vezes |
Pergunta/Tarefa: Escreva um programa Java que calcule o salário líquido de um professor. Seu programa deverá solicitar que o usuário informe o valor da hora aula (como double), o número de horas trabalhadas no mês (como inteiro) e o percentual de desconto do INSS (como double). Em seguida mostre o salário líquido, formatado de acordo com a moeda brasileira em vigor (na resolução eu usei o Real). Sua saída deverá ser parecida com: Informe o valor da hora aula: 28 Informe o número de horas trabalhadas no mês: 12 Informe o percentual de desconto do INSS: 8 Salário Bruto: R$ 336,00 Total de Descontos: R$ 26,88 Salário Líquido: R$ 309,12 Veja a resolução comentada deste exercício usando Java console: package estudos; import java.text.NumberFormat; import java.util.Scanner; public class Estudos{ public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos ler o valor do hora aula System.out.print("Informe o valor da hora aula: "); double valorHoraAula = Double.parseDouble(entrada.nextLine()); // vamos ler o número de horas trabalhadas no mês System.out.print("Informe o número de horas trabalhadas no mês: "); int horasTrabalhadas = Integer.parseInt(entrada.nextLine()); // vamos ler o percentual de desconto do INSS System.out.print("Informe o percentual de desconto do INSS: "); double percentualDescontoINSS = Double.parseDouble(entrada.nextLine()); // vamos calcular o salário bruto double salarioBruto = valorHoraAula * horasTrabalhadas; // agora calculamos o total do desconto double totalDesconto = (percentualDescontoINSS / 100) * salarioBruto; // finalmente calculamos o salário líquido double salarioLiquido = salarioBruto - totalDesconto; // mostramos o resultado NumberFormat formato = NumberFormat.getCurrencyInstance(); System.out.println("Salário Bruto: " + formato.format(salarioBruto)); System.out.println("Total de Descontos: " + formato.format(totalDesconto)); System.out.println("Salário Líquido: " + formato.format(salarioLiquido)); } } |
C# ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar a instrução de salto incondicional goto da linguagem C#Quantidade de visualizações: 18206 vezes |
A instrução goto na linguagem C# é uma instrução de salto incondicional. Quando esta instrução é encontrada, o fluxo de execução de código salta imediatamente para a localização definida pelo goto. Embora não muito usada, esta instrução, ás vezes, tem sua utilidade. A instrução goto exige um rótulo (label), que é um identificador C# válido seguido por dois pontos. Além disso, este rótulo deve estar dentro do mesmo método no qual a instrução goto estará contida. Isso quer dizer que não é possível usar goto para saltar de um método para outro. Veja um trecho de código no qual usamos goto para contar de 0 até 10: using System; namespace Estudos{ class Program{ static void Main(string[] args){ int valor = 0; // define o rótulo para o goto inicio: // exibe os números de 0 até 10 if (valor <= 10){ Console.WriteLine("{0}", valor); valor++; goto inicio; } Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código nós teremos o seguinte resultado: 0 1 2 3 4 5 6 7 8 9 10 Pressione uma tecla para sair... É claro que este código, ainda que seja um bom exemplo do uso de goto, pode e deve ser substituído por um laço for ou while. Lembre-se: goto é usado somente em casos nos quais nenhuma outra instrução ou construção esteja disponível. Veja, por exemplo, como podemos usar goto para saltar entre as cláusulas case de uma instrução switch: using System; namespace Estudos{ class Program{ static void Main(string[] args) { for (int i = 1; i < 3; i++) { switch (i) { case 1: Console.WriteLine("Estou na cláusula 1."); goto case 3; case 2: Console.WriteLine("Estou na cláusula 2."); goto case 1; case 3: Console.WriteLine("Estou na cláusula 3."); goto default; default: Console.WriteLine("Estou na cláusula padrão."); break; } } Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código nós teremos o seguinte resultado: Estou na cláusula 1. Estou na cláusula 3. Estou na cláusula padrão. Estou na cláusula 2. Estou na cláusula 1. Estou na cláusula 3. Estou na cláusula padrão. Outro uso útil da instrução goto é quando precisamos sair de um laço profundamente aninhado (três ou quatro níveis já é uma tarefa complicada). Veja: using System; namespace Estudos{ class Program{ static void Main(string[] args) { int i = 0, j = 0, k = 0; for (i = 0; i < 10; i++) { for (j = 0; j < 10; j++) { for (k = 0; k < 10; k++) { Console.WriteLine("i, j, k: " + i + " " + j + " " + k); if (k == 3) goto parada; } } } // rótulo de parada parada: Console.WriteLine("Parei! i, j, k: " + i + " " + j + " " + k); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este exemplo nós teremos o seguinte resultado: i, j, k: 0 0 0 i, j, k: 0 0 1 i, j, k: 0 0 2 i, j, k: 0 0 3 Parei! i, j, k: 0 0 3 Para finalizar, tenha em mente que goto é usado para sair de um bloco de instruções. Tentar usar esta instrução para saltar para dentro de um bloco de instruções é um erro de síntaxe e o seu código não compilará. |
Nossas 20 dicas & truques de programação mais populares |
C# - Como converter um tipo string para um tipo decimal em C# usando o método Parse() da classe Decimal CSS - Como definir uma imagem de fundo para um botão HTML usando a propriedade background-image do CSS JavaScript - Como remover elementos duplicados de um array em JavaScript usando as funções filter() e indexOf() do objeto Array |
Você também poderá gostar das dicas e truques de programação abaixo |
Delphi - Como retornar a quantidade de itens em uma TListBox do Delphi usando a propriedade Items.Count JavaScript - Como calcular a equação reduzida da reta em JavaScript dados dois pontos pertencentes à reta |
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 |