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

Como testar se todos os elementos de uma determinada coleção estão contidos em um Vector

Quantidade de visualizações: 7329 vezes
/*
  Este exemplo mostra como verificar se todos
  os elementos de uma determinada coleção estão
  contidos em um Vector. O método usado para tal
  tarefa é:
 
  public boolean containsAll(Collection<?> c) 

  Veja que se a coleção fornecida como argumento
  for null, uma exceção NullPointerException 
  será atirada.

  Aqui nós criaremos dois Vectors e depois
  verificaremos se todos os elementos do primeiro
  vector estão contidos no segundo.
*/

import java.util.*;

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

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

    // Cria o segundo Vector
    Vector<String> maisNomes = new Vector<String>();

    // adiciona itens ao segundo Vector
    maisNomes.addElement("Marcela");
    maisNomes.addElement("Ricardo");
    maisNomes.addElement("Marcos");
    maisNomes.addElement("Ingrid");
    maisNomes.addElement("Fernanda");
    maisNomes.addElement("Osmar");

    // Lista os itens do primeiro Vector
    for(Enumeration e = nomes.elements(); 
           e.hasMoreElements();){
      String valor = (String)e.nextElement();
      System.out.print(valor + "  ");
    }

    // Lista os itens do segundo Vector
    System.out.println();
    for(Enumeration e = maisNomes.elements(); 
           e.hasMoreElements();){
      String valor = (String)e.nextElement();
      System.out.print(valor + "  ");
    }

    // vamos verificar se todos os elementos do
    // primeiro Vector estão contidos no segundo
    if(maisNomes.containsAll(nomes))
      System.out.print("\nO segundo Vector contem " +
        "todos os elementos do primeiro.");
    else
      System.out.print("\nO segundo Vector NAO contem " +
        "todos os elementos do primeiro.");
  } 
}


Link para compartilhar na Internet ou com seus amigos:

Lisp ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço loop para contar de 1 até 10 em Lisp

Quantidade de visualizações: 471 vezes
A estrutura de repetição loop da linguagem Common Lisp é o laço mais simples fornecido pela linguagem. Este laço nos permite repetir uma ou mais instruções de código repetidamente, até que o comando return seja encontrado, o que faz com que o laço seja interrompido.

Veja no trecho de código abaixo como podemos usar o laço loop da Common Lisp para contar e exibir os valores de 1 até 10:

(
  ; vamos declarar a variável que vamos usar
  let (numero)	
  ; vamos inicializar a variável com o valor 1
  (setq numero 1)
  ; agora iniciamos o laço
  (loop 
    ; escrevemos o valor da variável
    (write numero)
......


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

1
2
3
4
5
6
7
8
9
10

Veja que usamos a macro when para testar o ponto de parada do laço. Note ainda o uso da função terpri da Common Lisp para provocar uma quebra de linha na saída do programa.


JavaScript ::: Dicas & Truques ::: Data e Hora

Como exibir a data e hora atual em JavaScript usando o objeto Date

Quantidade de visualizações: 7952 vezes
O objeto Date da linguagem JavaScript pode ser usado quando queremos retornar ou exibir a data e hora atual. Nesta dica eu mostro como criar um objeto Date e em seguida mostrar os resultados na página.

Veja o código HTML completo para o exemplo:

<!doctype html>
<html>
<head>
  <title>Datas em JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // vamos obter a data e hora atual
......


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

Data e hora atual: Sat Feb 04 2023 15:08:32 GMT-0300 (Horário Padrão de Brasília)


PHP ::: Sistemas Completos com Código Fonte ::: Controle de Estoque

Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades

Quantidade de visualizações: 20052 vezes
Como escrever um Controle de Estoque em PHP e MySQL do zero?

Promoção Relâmpago: Este código fonte está disponível gratuitamente para os apoiadores do site. Chama no WhatsApp +55 (062) 98553-6711 para mais detalhes

Sim, é isso mesmo. Você já imaginou o trabalho que dá criar um sistema de Controle de Estoque do zero? Você já pensou na quantidade de horas de trabalho que isso envolve? Não seria bom já ter boa parte do sistema já desenvolvido e você implementar apenas mais algumas poucas funcionalidades? A resposta está no código fonte que desenvolvemos para você nessa seção.

Comece analisando a imagem a seguir:



Nesta tela inicial podemos ver que o sistema é composto de cadastro de usuários, de categorias de produtos, um cadastro de fornecedores e um cadastro de produtos. Tanto o cadastro de produtos quanto o cadastro de fornecedores permitem inserir imagens, incluindo o recorte de imagens, para deixar todas as imagens com o mesmo tamanho e mesma resolução. Isso é importante, pois permite que qualquer usuário com conhecimento básico de informática consiga escolher uma imagem no computador, fazer o upload, recortar e salvar no diretório de imagens do programa.

Na tela inicial podemos ver também a quantidade de produtos e itens cadastrados no estoque, a quantidade de produtos com estoque zero e estoque mínimo, assim como o investimento feito no estoque, o retorno e a margem de lucro.

O sistema é responsivo?

Sim, por ter sido escrito em Bootstrap, todas as páginas do sistema são responsíveis, ou seja, se adaptam à tela do computador e também do celular. Veja:



Neste código fonte nós usamos o Bootstrap 5, mas você conseguirá, com pouca ou nenhuma modificação, rodá-lo nas versões anteriores. No entanto, como estamos o tempo todo melhorando este código para nossos clientes, é bem provável que teremos versões compatíveis com as novas versões do Bootstrap. Ah, e não se preocupe, todo o código Bootstrap, jQuery, Choise.js, Datatable, e outros scripts necessários estão devidamente colocados nos diretórios do sistema, não havendo a necessidade de baixar nada, nem mesmo usar CDNs.

As telas do sistema obedecem um padrão de design?

Sim, o design das telas é bem consistente, exibindo uma combinação de cores muito agradáveis aos olhos. Veja:



Aqui nós o temos o Cadastro de Usuários do Sistema. Como se pode ver, é possível adicionar uma foto para cada usuário, com a opção de recortar a imagem antes de efetuar o download da mesma. Além disso, os usuários possuem níveis de acesso. O usuário admin possui os maiores privilégios. Os demais usuários podem ter permissões para cadastrar, alterar, excluir, ou somente cadastrar, ou somente visualizar, etc.

O sistema mantém um registro de log para cada ação efetuada. Dessa forma, o admin saberá, com apenas um clique, quem cadastrou, alterou ou excluiu dados do sistema.

Como o sistema controla a entrada e saída de produtos no estoque?

Veja a seguinte imagem:



Aqui nós temos o cadastro dos produtos, assim como suas fotos, as quais o usuário poderá recortar antes de fazer o upload. Note que a entrada no estoque solicita um fornecedor e a lista de produtos que farão parte da entrada. Assim que a entrada no estoque é confirmada, o valor de compra de cada produto é atualizado, assim como seu estoque. Na saída de estoque o sistema verifica se há estoque suficiente para as retiradas.

O sistema é fácil de instalar?

Sim, junto com o código fonte nós adicionamos instruções detalhadas de como criar a base de dados e as tabelas do MySQL. Em seguida você só precisa ajustar o servidor, usuário e senha do banco de dados no arquivo config.php, definir o caminho para os uploads das fotos dos usuários, fornecedores e produtos e executar o index.php. E o melhor de tudo: como apenas alguns "copiar-colar" você adiciona mais funcionalidades ao sistema, tornando-o ainda mais útil.

Como posso obter este código fonte?

Para adquirir este código fonte, me chama no WhatsApp +55 (062) 9 8553-6711 ou no e-mail osmar@arquivodecodigos.com.br. Se necessário podemos combinar e faço a instalação na sua máquina ou no seu domínio. Podemos também combinar as alterações ou a adição de novas funcionalidades.

Não se esqueça: Uma boa forma de estudar o código é fazendo pequenas alterações e rodando para ver os resultados. Outra opção é começar um projeto PHP do zero e ir adicionando trechos do código fonte para melhor entendimento de suas partes.

Para quem deseja ver o sistema funcionando antes de fazer o download, colocamos uma demonstração no link abaixo (Usuário "admin" e senha "admin"):

Clique aqui para visualizar a demonstração (Live Demo) desse sistema


jQuery ::: Dicas & Truques ::: AJAX

Quais os parâmetros que podem ser usados com o método ajax() da biblioteca jQuery

Quantidade de visualizações: 12895 vezes
O método ajax() do jQuery aceita um mapa de opções para a requisição HTTP a ser realizada. Boa parte destas opções possuem valores padrões e, portanto, não precisam ser especificadas. A lista a seguir mostra os parâmetros disponíveis para o método ajax() na versão 1.2.3:

url: Uma string contendo a URL para a qual a requisição HTTP será feita.

type (opcional): Uma string definindo o método HTTP a ser usado na requisição (GET ou POST). O valor padrão é GET.

dataType (opcional): Uma string definindo o tipo de dados aguardados como resposta do servidor (xml, html, json ou script).

ifModified (opcional): Um valor Boolean indicando se o servidor deverá verificar se a página foi modificada antes de responder à requisição.

timeout (opcional): O número de milisegundos após o qual a requisição sofrerá timeout e apresentará uma falha.

global (opcional): Um valor Boolean indicando se gerenciadores de eventos AJAX globais serão disparados por esta requisição. O valor padrão é true.

beforeSend (opcional): Uma função de callback que será executada antes da requisição HTTP ser feita.

error (opcional): Uma função de callback que é executada se a requisição falhar.

success (opcional): Uma função de callback que será executada se a requisição for feita com sucesso.

complete (opcional): Uma função de callback que é executada quando a requisição finalizar.

data (opcional): Um mapa ou string que será enviado ao servidor junto com a requisição.

processData (opcional): Um valor boolean indicando se a conversão dos dados enviados em um formato objeto para o formato query-string deverá ser feita. O valor padrão é true.

contentType (opcional): Uma string contendo o tipo de conteúdo MIME a ser definindo para a requisição. O valor padrão é application/x-www-form-urlencoded.

async (opcional): Um valor Boolean indicando se a requisição deverá ser feita de forma assíncrona. O valor padrão é true.

Nesta seção você encontra vários exemplos de uso da função ajax() do jQuery.


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

Exercício Resolvido de C++ - Um método recursivo que calcula o número de Fibonacci para um dado índice

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

Observe a série de números Fibonacci abaixo:

Série:  0  1  1  2  3  5  8  13  21  34  55  89 
Índice: 0  1  2  3  4  5  6   7   8   9  10  11 
Cada número da série é a soma dos dois números anteriores. A linha de baixo reflete o índice do número. Assim, quando falamos "O quinto número de Fibonacci", nós estamos nos referindo ao índice 4, ou seja, o valor 3.

Este algoritmo consiste em, dado um determinado índice, retornar o número de Fibonacci correspondente. Recursivamente, o cálculo pode ser feito da seguinte forma:

fib(0) = 0;
fib(1) = 1;
fib(indice) = fib(indice - 2) + fib(indice - 1); sendo o indice >= 2

Os casos nos quais os índices são 0 ou 1 são os casos bases (aqueles que indicam que a recursividade deve parar). Seu método deverá possuir a seguinte assinatura:

int fibonacci(int indice){
  // sua implementação aqui
}
Sua saída deverá ser parecida com:
Informe o índice: 6
O número de Fibonacci no índice informado é: 8

Resposta/Solução:

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

#include <string>
#include <iostream>

using namespace std;

// assinatura da função recursiva
int fibonacci(int indice);

int main(int argc, char *argv[]){
  // variáveis usadas na resolução do problema
  int indice;
  
  // vamos solicitar o índice do número de Fibonacci
  cout << "Informe o índice: ";
  // lê o índice
  cin >> indice;
    
  // calcula o número de Fibonacci no índice informado
  cout << "O número de Fibonacci no índice informado é: " <<
......



Mais Desafios de Programação e 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á 14 usuários muito felizes estudando em nosso site.