Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO

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

Delphi ::: VCL - Visual Component Library ::: TListBox

Como obter e exibir todos os itens selecionados em uma TListBox do Delphi de seleção múltipla

Quantidade de visualizações: 14476 vezes
Este trecho de código mostra como podemos obter e exibir todos os itens selecionados em uma TListBox de seleção múltipla. Para executá-lo, coloque uma ListBox, um Memo e um Button em um formulário. Altere a propriedade MultiSelect da ListBox para True, adicione alguns itens e execute. Selecione um ou mais itens e clique no botão para visualizar o resultado. Note que usei um TStringList (classe concreta derivada de TStrings) para armazenar os itens selecionados. Veja o código:

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
  selecionados: TStringList;
begin
  // para que este exemplo funcione corretamente, a ListBox
  // deverá permitir seleção múltipla
  // ListBox1.MultiSelect := True;
  selecionados := TStringList.Create;

  // vamos obter os itens selecionados na ListBox
  if ListBox1.SelCount > 0 then
    begin
      for i := 0 to ListBox1.Count - 1 do
        begin
          if ListBox1.Selected[i] then
            selecionados.Add(ListBox1.Items[i]);
        end;

        // vamos exibir os itens selecionados em um TMemo
        Memo1.Lines.Clear;
        Memo1.Lines.Add('Os itens selecionados são:');

        for i := 0 to selecionados.Count - 1 do
          Memo1.Lines.Add(selecionados[i]);
    end
  else
    ShowMessage('Nenhum item selecionado.');

  // vamos liberar o TStringList
  selecionados.Free;
end;

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.


C# ::: Dicas & Truques ::: Arquivos e Diretórios

Como excluir um diretório em C# usando a função Delete() da classe DirectoryInfo

Quantidade de visualizações: 289 vezes
O método Delete() da classe DirectoryInfo do C# é muito útil quando precisamos excluir um diretório. Esta função é do tipo void, ou seja, não retorna nada.

Veja um código completo demonstrando o seu uso:

using System;
using System.IO;

namespace Estudos {
  class Principal {
    static void Main(string[] args) {
      // vamos criar uma nova instância da classe DirectoryInfo
      DirectoryInfo dir = new DirectoryInfo(@"C:\estudos_csharp\imagens");

      // vamos tentar excluir o diretório
      try {
        dir.Delete();
        Console.WriteLine("Diretório excluído com sucesso.");
      }
      catch (Exception e) {
        Console.WriteLine("Não foi possível excluir o diretório: {0}", e.ToString());
      }
    
      Console.WriteLine("\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

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

Diretório excluído com sucesso.

Se o diretório a ser excluido não estiver vazio, a chamada ao método System.IO.DirectoryInfo.Delete() poderá gerar o seguinte erro:

Não foi possível excluir o diretório: System.IO.IOException: A pasta não está vazia. : 'C:\estudos_csharp\imagens'
at System.IO.FileSystem.RemoveDirectoryInternal(String fullPath, Boolean topLevel, Boolean allowDirectoryNotEmpty)
at System.IO.FileSystem.RemoveDirectory(String fullPath, Boolean recursive)
at System.IO.DirectoryInfo.Delete()
at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 12


LISP ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como converter radianos em graus em LISP - Trigonometria em LISP

Quantidade de visualizações: 791 vezes
Todas as funções trigonométricas em Common Lisp (ou AutoLISP, para programadores AutoCAD) recebem seus argumentos em radianos, em vez de graus. Um exemplo disso é a função sin(). Esta função recebe o ângulo em radianos e retorna o seu seno.

No entanto, há momentos nos quais precisamos retornar alguns valores como graus. Para isso é importante sabermos fazer a conversão de radianos para graus. Veja a fórmula abaixo:

\[Graus = Radianos \times \frac{180}{\pi}\]

Agora veja como esta fórmula pode ser escrita em código LISP:

; programa LISP que converte radianos em graus
(let((radianos)(graus))
  ; valor em radianos
  (setq radianos 1.5)
  ; obtém o valor em graus
  (setq graus (* radianos (/ 180 pi)))
  
  ; mostra o resultado
  (format t "~F radianos em graus é ~F" radianos
    graus)
)

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

1.5 radianos convertidos para graus é 85.94366926962348

Para fins de memorização, 1 radiano equivale a 57,2957795 graus.


PHP ::: Dicas & Truques ::: Formulários

Como obter o valor do radio button selecionado no formulário HTML usando PHP

Quantidade de visualizações: 50842 vezes
Controles do tipo radio button são úteis quando o usuário deverá marcar apenas UMA entre as várias opções fornecidas. Veja um exemplo abaixo:

<form name="cadastro" method="post" action="testes.php">
  <b></b>Qual sua linguagem favorita?</b><br>
  <input name="linguagem" type="radio" 
    value="Java" checked>Java<br>
  <input type="radio" name="linguagem" 
    value="Delphi">Delphi<br>
  <input type="radio" name="linguagem" 
    value="C++">C++<br>
  <input type="radio" name="linguagem" 
    value="Python">Python<br>
  <input type="submit" value="Enviar!">
</form>

Lembre-se de que um grupo de radio button relacionados deverá ter o mesmo valor para a propriedade name.

Para obter o valor do radio button selecionado, podemos usar o seguinte código PHP:

<?php
  // Obtém o radio button selecionado
  $opcao = $_POST["linguagem"];
  
  // Exibe o resultado
  echo "Sua linguagem favorita é: " . $opcao;
?>



Java ::: Desafios e Lista de Exercícios Resolvidos ::: Strings e Caracteres

Exercícios Resolvidos de Java - O caractere ausente. Escreva um método Java que receba uma string não vazia e um inteiro positivo.

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

O desafio do caractere faltante.

Escreva um programa Java contendo um método que receberá uma palavra, frase ou texto e um inteiro positivo. Este método deverá retornar a palavra, frase ou texto com o caractere removido no índice especificado pelo inteiro fornecido como segundo argumento para o método.

Certifique-se de que a string passada para o método não esteja vazia e de que o valor inteiro no segundo argumento não esteja fora da faixa permitida, ou seja, não seja menor que 0 nem maior que o comprimento da string - 1.

Sua saída deverá ser parecida com:

Informe uma palavra, frase ou texto: JAVASCRIPT
Informe um número inteiro: 4
O resultado é: JAVACRIPT
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 pedir para o usuário informar uma palavra, frase ou texto
    System.out.print("Informe uma palavra, frase ou texto: ");
    String str = entrada.nextLine().trim();
    // agora vamos pedir para o usuário informar um número inteiro
    System.out.print("Informe um número inteiro: ");
    int indice = Integer.parseInt(entrada.nextLine());
    
    // os dados são válidos?
    if(str.isEmpty()){
      System.out.println("\nA string informada está vazia\n");
    }
    else if(indice < 0 || indice > str.length() - 1){
      System.out.println("\nO índice não está na faiza permitida\n");
    }
    else{
      String resultado = caractereFaltante(str, indice);
      System.out.println("O resultado é: " + resultado);
    }
  }
  
  public static String caractereFaltante(String str, int indice){
    // primeiro nós obtemos uma substring que vai do primeiro
    // índice até o indice informado pelo usuário, sem incluí-lo
    String inicio = str.substring(0, indice);
    
    // agora obtemos o restante da string a partir do índice informado
    // pelo usuário, sem incluí-lo, é claro
    String fim = str.substring(indice + 1, str.length());
    
    return inicio + fim;
  }
}



VB.NET ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar a instrução Select...Case do VB.NET

Quantidade de visualizações: 20903 vezes
As instruções If...Then e If...Then...Else são muito úteis para testarmos condições em nossos códigos. Porém, há situações em que os caminhos a serem testados são tantos que se torna um pouco tedioso escrever tantos ElseIfs. Para estas situações nós temos a instrução Select...Case. Veja seu uso no trecho de código abaixo:

Dim valor As Integer = 7

Select Case valor
  Case 1 To 5
    Console.WriteLine("Entre 1 e 5 (inclusive)")
  Case 6, 7, 8
    Console.WriteLine("Entre 6 e 8 (inclusive)")
  Case 9 To 10
    Console.WriteLine("Igual a 9 ou 10")
  Case Else
    Console.WriteLine("Não encontrado no teste")
End Select

Os valores a serem testados em cada passo da instrução podem ser separados por vírgulas ou por faixa, usando a palavra-chave To. Neste último caso, o valor limite também é incluído no teste.

O tipo de dados da variável de teste deve se enquadrar nos tipos: Boolean, Byte, Char, Date, Double, Decimal, Integer, Long, Object, SByte, Short, Single, String, UInteger, ULong e UShort.


C# ::: Dicas & Truques ::: Gráficos

Como desenhar linhas em C# usando o método DrawLine() da classe Graphics - Computação Gráfica usando C#

Quantidade de visualizações: 13392 vezes
Uma das tarefas mais simples que realizamos quando estamos desenhando em C# é o desenho de linhas. Para isso usamos o método DrawLine() da classe Graphics. Este método recebe um objeto da classe Pen (representando a cor e espessura da caneta de desenho) e as coordenadas iniciais e finais da linha a ser desenhada.

Veja um trecho de código no qual desenhamos uma linha na cor vermelha e com a espessura de dois pixels:

private void button1_Click(object sender, EventArgs e){
  // vamos obter o Graphics do formulário
  Graphics g = this.CreateGraphics();

  // vamos desenhar uma linha na cor vermelha e com espessura
  // de dois pixels
  g.DrawLine(new Pen(Color.Red, 2), new Point(100, 150), 
    new Point(400, 450));

  // vamos liberar o objeto Graphics
  g.Dispose();
}

Execute este código e verá uma linha vermelha na vertical ser desenhada quando você clicar no botão. Aqui nós usamos dois objetos da classe Point. Um para as coordenadas iniciais (x = 100; y = 150) e outro para as coordenadas finais (x = 400; y = 450). É possível fornecer os valores das coordenadas diretamente. Veja:

g.DrawLine(new Pen(Color.Red, 2), 100, 150, 400, 450);

É possível também desenhar múltiplas linhas de uma só vez. Para isso podemos usar o método DrawLines(). Este método recebe um objeto da classe Pen e um array de objetos da classe Point representando as diversas coordenadas. Desta forma, todas as linhas serão conectadas. Veja um exemplo:

private void button1_Click(object sender, EventArgs e){
  // vamos obter o Graphics do formulário
  Graphics g = this.CreateGraphics();

  // vamos criar várias coordenadas x e y
  Point[] coordenadas = {new Point(15,  20), new Point(15, 300),
     new Point(400,  300), new Point(400, 20), new Point(15,  20)};

  // vamos desenhar todas as linhas conectadas usando a cor azul e a 
  // espessura de um pixel
  g.DrawLines(new Pen(Color.Blue, 1), coordenadas);

  // vamos liberar o objeto Graphics
  g.Dispose();
}

Execute este código e clique no botão. Você verá um retângulo azul e com a espessura de 1 pixel ser desenhado no formulário.


Java ::: Estruturas de Dados ::: Lista Ligada Simples

Estruturas de Dados em Java - Como obter a quantidade de nós em uma lista singularmente ligada usando Java

Quantidade de visualizações: 7148 vezes
Em algumas situações precisamos obter a quantidade de nós em uma lista singularmente ligada. Nesta dica eu mostro como isso pode ser feito. Aqui estou assumindo que você criou uma lista singularmente ligada que possui dois nós gerenciadores, ou seja, uma referência para o primeiro nó na lista e uma referência para o último nó.

Veja o código para um método que retorna a quantidade de nós na lista:

// método que permite exibir os valores de
// todos os nós da lista
public int tamanho() {
  int tam = 0; // representa a quantidade de nós na lista

  // vamos obter uma referência ao início da lista
  No no = inicio;

  while (no != null) { // enquanto a lista não estiver vazia
    tam++; // incrementamos a variável tam
    no = no.proximo; // pula para o nó seguinte
  }

  return tam;
}

Veja como podemos chamar este nó a partir da classe principal da aplicação (Main.java):

public class Main {
  public static void main(String[] args) {
    // vamos criar uma nova lista
    Lista lista = new Lista();

    // insira alguns nós no início ou no final
    // da lista

    // exibe a quantidade de nós na lista
    System.out.println("A lista possui " + lista.tamanho() +
      " nós");
  }
}

Ao executar a aplicação você terá um resultado parecido com:

A lista possui 4 nós.


Dart ::: Dicas de Estudo e Anotações ::: Estruturas de Controle

Como usar o laço for da linguagem Dart

Quantidade de visualizações: 4292 vezes
Em algumas situações os nossos códigos precisam executar repetidas vezes uma ou mais instruções. Para isso a linguagem Dart, assim como C, C++, Java, Python, JavaScript, Delphi, etc, nos oferece o laço for, ou loop for.

Este laço é usado quando sabemos exatamente a quantidade de vezes que a instrução (ou grupo de instruções) deverá ser repetida.

Veja um exemplo no qual usamos este laço para contar de 1 até 10:

void main() {
  for (int i = 1; i <= 10; i++) {
    print('${i}');
  }
}

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

1
2
3
4
5
6
7
8
9
10

Veja que o laço for em Dart é composto de três partes:

a) Inicialização da variável de controle;
b) O teste de continuidade;
c) O incremento ou decremento da variável de controle.

Como a execução do laço se inicia no teste de continuidade, é possível termos um laço for que nunca será executado. Veja:

void main() {
  for (int i = 1; i > 5; i++) {
    print('${i}');
  }
}

Execute este código e perceberá que nenhum valor é impresso. Isso aconteceu porque o teste condicional retornou um valor falso, impedindo até mesmo a primeira execução do laço.

Veja agora um laço for que conta de 10 até 1:

void main() {
  for (int i = 10; i >= 1; i--) {
    print('${i}');
  }
}

Para finalizar em grande estilo, veja um laço for que pede para o usuário digitar 5 idades e, em seguida, mostra a média das idades lidas:

// Vamos importar a biblioteca dart:io
import 'dart:io';

void main() {
  int soma = 0;
  // vamos solicitar 5 idades
  for (int i = 0; i < 5; i++) {
    stdout.write("Digite uma idade: ");
    int idade = int.parse(stdin.readLineSync());
    soma = soma + idade;
  }

  // Vamos mostrar a média das idades
  double media = soma / 5;
  print("A média das idades é $media.");
}

A execução deste código mostrará o seguinte resultado:

c:\estudos_dart>dart laco_for.dart
Digite uma idade: 18
Digite uma idade: 21
Digite uma idade: 34
Digite uma idade: 50
Digite uma idade: 9
A média das idades é 26.4.



Python ::: Dicas & Truques ::: Data e Hora

Python para iniciantes - Como obter o ano com quatro dígitos usando Python

Quantidade de visualizações: 7731 vezes
Em algumas situações nós precisamos obter apenas o ano de uma determinada data, e com quatro dígitos. Para isso só precisamos passar o indicador "%Y" para a função strftime() da linguagem Python.

Veja o exemplo completo:

from datetime import datetime

# função principal do programa
def main():
  # Obtém um datetime da data e hora atual
  hoje = datetime.today()
 
  # Exibe o ano com quatro dígitos
  print(hoje.strftime("O ano é: %Y"))
  
if __name__== "__main__":
  main()

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

O ano é: 2021

Carregar Publicações Anteriores


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 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 Apenas R$ 19,90


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