Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: Java ::: Coleções (Collections) ::: ArrayList

Como testar se um valor está contido em uma ArrayList do Java usando a função contains()

Quantidade de visualizações: 19015 vezes
Em algumas situações nós queremos verificar se um determinado valor está contido em um dos elementos da ArrayList. Para isso nós podemos usar o método contains(), que retorna true se o valor existir e false em caso contrário.

Veja um exemplo de seu uso:

package estudos_java;

import java.util.ArrayList;

public class Estudos{
  public static void main(String[] args){
    // cria uma ArrayList que conterá inteiros
    ArrayList<Integer> valores = new ArrayList<>();
    
    // adiciona itens na lista
    valores.add(34);
    valores.add(12);
......


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

O valor pesquisado foi encontrado.

Link para compartilhar na Internet ou com seus amigos:

Python ::: Estruturas de Dados ::: Lista Ligada Simples

Como excluir um nó no final de uma lista encadeada simples em Python

Quantidade de visualizações: 871 vezes
Nesta dica mostrarei como podemos escrever um método remover_final() que remove e retorna o nó no final de uma lista encadeada simples em Python, ou seja, excluí o último nó da lista.

É importante observar que o método exclui o último nó e o retorna completo, inclui o valor que está incluído nele. Se a lista estiver vazia o método retorna o valor None para indicar lista vazia.

Vamos começar então com o código para a classe No da lista singularmente ligada (que salvei em um arquivo no_lista_singularmente_ligada.py):

# classe No para uma lista singularmente encadeada ou
# ligada - Singly Linked List
class No:
  # construtor da classe No
  def __init__(self, info, proximo):
    self.info = info
    self.proximo = proximo

  # método que permite definir o conteúdo do nó
  def set_info(self, info):
    self.info = info

  # método que permite obter a informação de um nó 
  def get_info(self):
......


Veja que o código para a classe Nó não possui muitas firulas. Temos apenas um campo info, que guardará o valor do nó, e um campo próximo, que aponta para o próximo nó da lista, ou null, se este for o único nó ou o último nó da lista ligada.

Veja agora o código para a classe ListaLigadaSimples (lista_ligada_simples.py), com os métodos inserir_inicio(), remover_final() e exibir():

# importa a classe No
from no_lista_singularmente_ligada import No

# classe ListaLigadaSimples   
class ListaLigadaSimples:
  # construtor da classe
  def __init__(self):
    self.inicio = None # nó inicial da lista

  # método que deleta um nó no final de uma lista ligada
  # este método retorna o nó excluído
  def remover_final(self):
    # a lista está vazia?  
    if self.inicio == None:
      return None
    else:
      # vamos excluir e retornar o primeiro nó da lista
      removido = self.inicio
      
      # a lista possui apenas um nó?
      if self.inicio.get_proximo() == None:
        # a lista agora ficará vazia
        self.inicio = None
      else:
        # começamos apontando para o início da lista   
        no_atual = self.inicio
        no_anterior = self.inicio

        # enquanto o próximo do nó atual for diferente de nulo
        while no_atual.get_proximo() != None:
          # avançamos o nó anterior
          no_anterior = no_atual
          # saltamos para o próximo nó
          no_atual = no_atual.get_proximo()

        # na estamos na posição de exclusão
......


E agora o código main() que insere alguns valores no início da nossa lista singularmente encadeada e testa o método remover_final():

# importa a classe ListaLigadaSimples
from lista_singularmente_ligada import ListaLigadaSimples

# método principal  
def main():
  # cria uma nova lista encadeada simples
  lista = ListaLigadaSimples()

  print("Insere o valor 12 no início da lista")
  lista.inserir_inicio(12)
  print("Conteúdo da lista: ")
  lista.exibir()
  print("Insere o valor 30 no início da lista")
  lista.inserir_inicio(30)
  print("Conteúdo da lista: ")
  lista.exibir()
......


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

c:\estudos_python>python estudos.py
Insere o valor 12 no início da lista
Conteúdo da lista:
12
Insere o valor 30 no início da lista
Conteúdo da lista:
30
12
Insere o valor 27 no início da lista
Conteúdo da lista:
27
30
12
Remove um nó no final da lista
Nó removido: 12
Conteúdo da lista:
27
30


Delphi ::: Dicas & Truques ::: Strings e Caracteres

Como substituir todas as ocorrências de uma substring em uma string Delphi usando a função ReplaceStr()

Quantidade de visualizações: 15984 vezes
Algumas vezes precisamos substituir todas as ocorrências de uma substring em uma string. Em Delphi isso pode ser feito com o auxílio da função ReplaceStr(). Esta função requer a string na qual a substituição ocorrerá, a substring a ser substituída e a nova substring. O resultado será uma nova string resultante da substituição. Veja o exemplo:

procedure TForm1.Button1Click(Sender: TObject);
var
  frase: string;
begin
  frase := 'PHP? Sim, eu gosto muito de PHP';

  // vamos substituir todas as ocorrências de "PHP" por "Delphi'
......


Lembre-se de que esta função diferencia maiúsculas e minúsculas.

Não se esqueça de adicionar a unit StrUtils no uses do seu formulário.

Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009.


GNU Octave ::: Dicas & Truques ::: Matemática e Estatística

Como calcular raiz quadrada usando a função sqrt() do GNU Octave

Quantidade de visualizações: 3974 vezes
A raiz quadrada de um algarismo é dada por um número positivo n, que ao ser elevado ao quadrado (multiplicado por ele mesmo), se iguala a x. Na área da matemática, a raiz quadrada auxilia na resolução de vários problemas, entre eles as equações de segundo grau e o Teorema de Pitágoras.

Relembrando que a raiz quadrada é o inverso da potenciação com expoente dois, temos que:

\[\sqrt{9} = 3\]

então, pela potenciação:

\[3^2 = 9\]

Agora veremos como calcular a raiz quadrada usando a função sqrt() do GNU Octave. Se você ainda não o fez, abra o GNU Octave e digite a seguinte expressão na janela de comandos:

>> raiz = sqrt(9) [ENTER]
......


Agora veja como podemos usar a função sqrt() em um script do GNU Octave:

valor = input("Informe o valor desejado: ");
raiz = sqrt(valor);
......


Uma saída deste código poderia ser:

Informe o valor desejado: 25
A raiz quadrada do valor informado é 5
>>

É importante ter em mente que a função sqrt() do GNU Octave retorna um erro caso o valor do radicando for negativo. Veja:

Informe o valor desejado: -5
A raiz quadrada do valor informado é error: octave_base_value::int64_scalar_value
(): wrong type argument 'complex scalar'
>>


C ::: Desafios e Lista de Exercícios Resolvidos ::: Razão e Proporção

Exercícios Resolvidos de C - Como resolver problemas de razão e proporção em C - Em uma empresa, a razão entre o número de mulheres e o número

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

Em uma empresa, a razão entre o número de mulheres e o número de homens é de 3/5. Sabendo que há 30 homens nessa empresa, então o número de mulheres é:

A) 18
B) 20
C) 22
D) 24
E) 27

Antes de tentarmos resolver esse problema em C, vamos relembrar o que são razão e proporção. Os conceitos de razão e proporção estão ligados ao quociente. A razão é o quociente de dois números, e a proporção é a igualdade entre duas razões.

No exercício acima, o valor de 30 homens está fixo, mas seu programa C deverá pedir para o usuário informar a quantidade de homens. Isso vai permitir aplicar o algoritmo em situações diferentes da exposta aqui.

Sua saída deve ser parecida com:

Informe a quantidade de homens: 30
A quantidade de homens é: 30
A quantidade de mulheres é: 18.0
Resposta/Solução:

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

#include <stdio.h>
#include <stdlib.h>

// função principal do programa
int main(int argc, char *argv[]){
  // variáveis usadas na resolução do problema
  float dividendo = 3.0;
  float divisor = 5.0;
  int quant_homens;
  float quant_mulheres;
    
  // vamos ler a quantidade de homens
  printf("Informe a quantidade de homens: ");
  scanf("%d", &quant_homens);
  printf("A quantidade de homens é: %d", quant_homens);
......



C# ::: Dicas & Truques ::: Strings e Caracteres

Como remover espaços em branco no início e final de uma string C# usando o método Trim() da classe String

Quantidade de visualizações: 13344 vezes
Nesta dica mostrarei como podemos usar a função Trim() da classe String da linguagem C# para remover os espaços no início e no fim de uma palavra, frase ou texto. Esta técnica é muito útil quando estamos trabalhando com dados informados pelos usuários de nossas aplicações.

Veja o código completo para o exemplo:

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      string texto = "  temos espaços no início e fim   ";
      Console.WriteLine(texto);

      // remove os espaços no início e fim da string
......


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

  temos espaços no início e fim
......



Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

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



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