Python ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Python - Como retornar o maior elemento em cada uma das colunas de uma matriz usando Python

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

Dada a seguinte matriz:

6   10   4
2    9   7
20   3   1
Escreva um programa Python que exibe o maior elemento em cada uma das colunas dessa matriz.

Sua saída deverá ser parecida com:

Maior elemento na coluna 0 é 20
Maior elemento na coluna 1 é 10
Maior elemento na coluna 2 é 7
Resposta/Solução:

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

# método principal
def main():
  # vamos declarar e constuir uma matriz de 3 linhas e três colunas
  matriz = [[6, 10, 4], [2, 9, 7], [20, 3, 1]];
    
  # vamos percorrer a matriz e exibir o maior elemento de cada coluna
  # começamos com cada coluna
  for i in range(len(matriz[0])):
    # assumimos que o maior valor é o primeiro dessa coluna
    maior = matriz[0][i]
    # percorremos todos os elementos desta linha
    for j in range(len(matriz)):
      # o elemento atual é maior que o maior?
      if matriz[j][i] > maior:
        # maior assume o valor atual
        maior = matriz[j][i]
      
    # exibimos o maior elemento desta coluna
    print("Maior elemento na coluna {0} é {1}".format(i, maior))

if __name__== "__main__":
  main()



Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Exercícios Resolvidos de Java - Escreva um programa Java que usa uma função recursiva para retornar a quantidade de dígitos presentes em um número inteiro informado pelo usuário

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

Escreva um programa Java usa uma função recursiva para retornar a quantidade de dígitos presentes em um número inteiro informado pelo usuário. Você pode usar qualquer técnica de recursividade disponível, desde que o retorno da função seja um valor inteiro.

Você deverá implementar a seguinte função recursiva:

public static int quantDigitos(int numero){
  // seu código aqui
}
Sua saída deverá ser parecida com:

Informe um número inteiro de qualquer tamanho: 4983
O número informado possui 4 dígitos
Resposta/Solução:

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

package exercicio;

import java.util.Scanner;

public class Exercicio{
  public static void main(String[] args) {
    // cria um novo objeto da classe Scanner
    Scanner entrada = new Scanner(System.in);
    	
    // vamos pedir para o usuário informar um número inteiro
    System.out.print("Informe um número inteiro de qualquer tamanho: ");
    int num = Integer.parseInt(entrada.nextLine());
    
    // vamos obter a quantidade de dígitos no número usando
    // uma chamada à função recursiva quant_digitos()
    int quant = quantDigitos(num);
     
    // mostramos o resultado
    System.out.println("O número informado possui " + quant +
      " dígitos");
  }
  
  // função recursiva que recebe um número inteiro e retorna
  // sua quantidade de dígitos
  public static int quantDigitos(int numero){
    if ((numero / 10) == 0){ // atenção: divisão inteira
      // retorna o caso base
      return 1;
    }
    else{
      // efetua mais uma chamada recursiva
      return 1 + quantDigitos(numero / 10);
    }
  }   
}



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

Como usar a propriedade Items da classe TListBox do Delphi

Quantidade de visualizações: 11423 vezes
A propriedade Items da classe TListBox representa um objeto da classe TStrings, a classe base para objetos que representam uma lista de strings. Isso quer dizer que podemos acessar a propriedade Items e usar todos os métodos e propriedades da classe TStrings, tais como Add(), Clear(), Delete(), Exchange(), etc.

Veja, por exemplo, como usar o método Add() para adicionar um novo item na ListBox:

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos adicionar um novo item na ListBox
  listBox1.Items.Add('Arquivo de Códigos');
end;

É possível obter um referência à propriedade Items para manipular os itens da ListBox indiretamente. Veja:

procedure TForm1.Button1Click(Sender: TObject);
var
  lista: TStrings;
begin
  // vamos obter a lista de itens da ListBox
  lista := listBox1.Items;

  // vamos adicionar um novo item à lista
  lista.Add('Arquivo de Códigos');
end;

Esta técnica é útil quando queremos inserir itens em uma TListBox a partir de uma função ou procedure. Veja:

// procedure personalizada para inserir itens em uma TListBox
procedure inserirItensListBox(lista: TStrings);
begin
  lista.Add('Arquivo de Códigos');
  lista.Add('Osmar J. Silva');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos chamar a procedure que adiciona os itens na ListBox
  inserirItensListBox(listBox1.Items);
end;

Para finalizar, veja como escrever uma função personalizada que constrói e retorna uma lista de strings. Note como usamos o objeto TStrings retornado para preencher a ListBox:

// função personalizada que constrói e retorna uma lista
// de strings
function obterLista: TStrings;
var
  lista: TStringList;
begin
  lista := TStringList.Create;
  lista.Add('Arquivo de Códigos');
  lista.Add('Osmar J. Silva');

  Result := lista;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos obter a lista de strings
  ListBox1.Items := obterLista;
end;

Observe que, embora o retorno seja TStrings, no corpo da função nós construímos um objeto da classe TStringList. Isso acontece porque TStrings é uma classe abstrata e, portanto, não podemos chamar seu construtor. Como TStringList herda de TStrings e é uma classe concreta, esta é a escolha mais óbvia.

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


Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico

Exercícios Resolvidos de Python - Lendo a idade de um nadador e classificando sua categoria como infantil, juvenil, adolescente, adulto ou sênior

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

Escreva um programa Python que solicita a idade de um nadador e classifica sua categoria de acordo com as seguintes regras:

a) De 5 a 7 anos - Infantil;
b) De 8 a 10 anos - Juvenil;
c) De 11 a 15 anos - Adolescente;
d) De 16 a 30 anos - Adulto;
e) Acima de 30 anos - Sênior.

Sua saída deverá ser parecida com:

Informe sua idade: 19
Sua categoria é Adulto
Resposta/Solução:

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

# vamos solicitar a idade do nadador
idade = int(input("Informe sua idade: "))
     
# vamos verificar a categoria do nadador
if ((idade >= 5) and (idade <= 7)):
  print("Sua categoria é Infantil")
elif ((idade >= 8) and (idade <= 10)):  
  print("Sua categoria é Juvenil")  
elif ((idade >= 11) and (idade <= 15)):
  print("Sua categoria é Adolescente") 
elif ((idade >= 16) and (idade <= 30)):
  print("Sua categoria é Adulto")  
elif (idade > 30):
  print("Sua categoria é Sênior")  
else:
  print("Não pertence a nenhuma categoria.")



Delphi ::: VCL - Visual Component Library ::: TStringGrid

Como usar o controle TStringGrid em suas aplicações Delphi - O componente TStringGrid do Delphi

Quantidade de visualizações: 19467 vezes
Um objeto da classe TStringGrid representa um controle de grid que pode ser usado em suas aplicações Delphi para simplificar o processo de se lidar com strings e objetos associados a esta. Veja a posição desta classe na hierarquia de classes do Delphi:

System.TObject
  Classes.TPersistent
    Classes.TComponent
      Controls.TControl
        Controls.TWinControl
          Controls.TCustomControl
            Grids.TCustomGrid
              Grids.TCustomDrawGrid
                Grids.TDrawGrid
                  Grids.TStringGrid


Esta classe implementa também as interfaces IInterfaceComponentReference e IInterface.

O uso mais frequente de um controle TStringGrid é quando queremos apresentar um conteúdo texto em um formato tabular. Este controle fornece muitas propriedades para controlar a aparência da grid, assim como eventos e métodos que tiram vantagem da organização tabular da grid ao responder às ações do usuário.

Para adicionar um controle TStringGrid ao seu formulário você só precisa acessar a aba Additional no Tool Palette, clicar no controle e arrastá-lo para a posição desejada no formulário. Por padrão, um controle TStringGrid contém 5 linhas e 5 colunas. Novas linhas e novas colunas podem ser adicionadas por meio das propriedades RowCount e ColCount da classe TCustomGrid.

Cada célula da grid pode ter seu valor definido ou acessado usando-se a propriedade Cells. Veja um trecho de código no qual definimos o conteúdo da célula situada na segunda linha da primeira coluna do TStringGrid:

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos definir o conteúdo da célula na segunda linha
  // da primeira coluna da grid
  StringGrid1.Cells[0, 1] := 'Osmar J. Silva';
end;

Um controle TStringGrid introduz a possibilidade de associar um objeto com cada string na grid. Estes objetos podem encapsular quaisquer informações ou comportamento representado pelas strings apresentadas ao usuário.

Se as strings a serem apresentadas na grid representarem valores de campos dos registros de um conjunto de dados (dataset), devemos usar um TDBGrid em vez de um TStringGrid.


PHP ::: Dicas & Truques ::: Strings e Caracteres

Como remover espaços no início e no fim de uma string PHP usando a função trim()

Quantidade de visualizações: 88 vezes
The trim() function removes whitespaces and other predefined characters from both sides of a string.

A função trim() do PHP é muito útil quando precisamos excluir os espaços antes e depois de uma palavra, frase ou texto.

Veja um exemplo de seu uso:

<?php
  // uma frase contendo espaços no início e
  // no final
  $frase = "   PHP? Eu gosto de PHP.    ";
  
  // vamos remover os espaços no início e no fim
  $frase = trim($frase);
  
  // e mostramos o resultado
  echo "A frase é: " . $frase;
?>

Além dos espaços, a função trim() do PHP remove também os seguintes caracteres: "\0" (NULL), "\t" (Tabulação), "\n" (Nova linha), "\x0B" (Tabulação vertical), "\r" (Retorno para nova linha).


Java ::: Coleções (Collections) ::: Vector

Java Collections - Como remover um determinado elemento de um Vector baseado em seu valor

Quantidade de visualizações: 11859 vezes
Muitas vezes precisamos excluir um determinado elemento de um Vector baseado em seu valor. Isso pode ser feito com o método remove(). Veja sua assinatura:

public boolean remove(Object o)
Veja que só precisamos fornecer o valor do elemento a ser removido. O retorno será um valor boolean mostrando o resultado da operação. Eis um trecho de código exemplificando isso:

import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    // Cria o Vector
    Vector<String> nomes = new Vector<String>();

    // adiciona itens ao Vector
    nomes.addElement("Osmar");
    nomes.addElement("Marcos");
    nomes.addElement("Ingrid");

    // vamos exibir os elementos
    for(String nome : nomes)
      System.out.println(nome);

    // vamos excluir o elemento "Ingrid"
    boolean sucesso = nomes.remove("Ingrid");
    if(sucesso)    
      System.out.println("\nO elemento foi removido " +
        "com sucesso.\n");
    else 
      System.out.println("\nO elemento NAO foi removido " +
        "com sucesso.\n");

    // vamos exibir os elementos novamente
    for(String nome : nomes)
      System.out.println(nome);
  } 
}

Ao executar este exemplo nós teremos o seguinte resultado:

Osmar
Marcos
Ingrid

O elemento foi removido com sucesso.

Osmar
Marcos


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

Como ordenar uma lista de inteiros em Python de acordo com a soma dos dígitos de seus elementos usando uma função lambda

Quantidade de visualizações: 831 vezes
Nesta dica mostrarei como podemos usar uma função lambda em Python para ordenar uma lista de inteiros de acordo com a soma dos seus dígitos. Este é um código muito interessante e que permitirá um melhor entendimento de funções lambda em Python.

Veja o código completo para o exemplo:

# método usado para ordenar a lista de acordo com a soma
# de seus dígitos
def ordenar(vetor):
  return sorted(vetor, key=lambda n: sum(int(c) for c in str(n) if c != "-"))

# função principal do programa
def main():
  # vamos criar uma lista de inteiros
  valores = [21, 10, 8, 32, 70, 41, 40, 11]
  # vamos exibir a lista original
  print("Lista na ordem original: {0}".format(valores))
  
  # agora vamos ordenar de acordo com a soma dos dígitos
  lista_ordenada = ordenar(valores)
  print("Lista ordenada: {0}".format(lista_ordenada))
  
if __name__== "__main__":
  main()

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

Lista na ordem original: [21, 10, 8, 32, 70, 41, 40, 11]
Lista ordenada: [10, 11, 21, 40, 32, 41, 70, 8]


Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico

Exercícios Resolvidos de Python - Escreva um programa em Python que usa a função log10() para informar a quantidade de dígitos em um número inteiro

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

Escreva um algorítmo em Python que peça para o usuário informar um número inteiro de qualquer tamanho, ou seja, qualquer quantidade de dígitos. Em seguida seu código deverá informar a quantidade de dígitos contida no número inteiro digitado pelo usuário. Seu programa deverá, obrigatoriamente, usar a função log10() do módulo Math.

Sua saída deverá ser parecida com:

Informe um número inteiro de qualquer tamanho: 847
O número informado possui 3 dígitos
Resposta/Solução:

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

# vamos importar o módulo Math
import math

# método principal
def main():
  # vamos pedir para o usuário informar um número inteiro
  numero = int(input("Informe um número inteiro de qualquer tamanho: "))
  
  # agora vamos obter a quantidade de dígitos no
  # número informado
  tamanho = int(math.log10(numero)) + 1
	
  # mostramos o resultado
  print("O número informado possui {0} dígitos".format(tamanho))

if __name__== "__main__":
  main()



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

Como pesquisar um item em uma list e removê-lo usando a função remove() do Python

Quantidade de visualizações: 8671 vezes
Nesta dica mostrarei como é possível usar a função remove() do tipo de dados list para pesquisar um item em uma lista e removê-lo. Observe que, se o item a ser removido não for encontrado, um erro do tipo ValueError será exibido.

Veja o código completo para o exemplo:

# função principal do programa
def main():
  # cria uma lista de inteiros
  valores = [2, 5, 12, 2, 3, 32, 18]
 
  # exibe a lista
  print(valores)
 
  try:
    valor = int(input("Informe o valor a ser removido: "))
    valores.remove(valor)
  except ValueError:
    print("O valor pesquisado nao foi encontrado")
  else:
    print("O valor foi removido com sucesso")
 
  # exibe a lista
  print(valores)
  
if __name__== "__main__":
  main()

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

[2, 5, 12, 2, 3, 32, 18]
Informe o valor a ser removido: 2
O valor foi removido com sucesso
[5, 12, 2, 3, 32, 18]

Observe que a função remove() da list remove apenas o primeiro item encontrado, ou seja, se a lista possuir mais de um valor igual, apenas o primeiro será removido.

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



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