JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como retornar apenas os três primeiros elementos de um array em JavaScript usando a função slice() do objeto Array

Quantidade de visualizações: 8863 vezes
Nesta dica eu mostrarei como é possível usar o método slice() do objeto Array da linguagem JavaScript para retornar um ou mais elementos de um vetor, como um novo objeto array.

Para isso só precisamos fornecer ao método o índice inicial e o índice final (não incluindo) dos elementos a serem retornados. É importante observar que o método slice() não modifica o vetor original.

Veja o exemplo completo:

<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>
 
<script type="text/javascript">
  var valores = new Array(1, 2, 3, 4, 5, 6, 7);
  document.write("Valores no vetor: " + valores + "<br>");
  document.write("Retornando os três primeiros elementos<br>");
  var valores2 = valores.slice(0, 3);
  document.write("Valores no novo vetor: " + valores2);
</script>
 
</body>
</html>

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

Valores no vetor: 1,2,3,4,5,6,7
Retornando os três primeiros elementos
Valores no novo vetor: 1,2,3


Java ::: Pacote java.lang ::: Integer

Java Básico - Como usar a constante SIZE da classe Integer para obter a quantidade de bits necessária para armazenar um int

Quantidade de visualizações: 6817 vezes
Em algumas situações gostaríamos de obter a quantidade de bits necessária para armazenar um valor do tipo int (inteiro). Para isso podemos usar a constante SIZE da classe Integer (uma classe wrapper que encapsula o valor primitivo int). Veja como isso pode ser feito:

public class Estudos {
  public static void main(String[] args) {
    // vamos obter a quantidade de bits necessária para representar um int
    int quantBits = Integer.SIZE;
    
    // o resultado
    System.out.println("Um int ocupa " + quantBits + " bits, ou seja, " +
       (quantBits / 8) + " bytes");    
  }
}

Ao executarmos este código o resultado será:

Um int ocupa 32 bits, ou seja, 4 bytes.


Java ::: Dicas & Truques ::: Recursão (Recursividade)

Java Avançado - Como listar o conteúdo de um diretório recursivamente

Quantidade de visualizações: 119 vezes
Nesta dica mostrarei como podemos usar recursividade (recursão) para listar todo o conteúdo de um diretório. Este é um exercício para melhorar o seu entendimento de funções recursivas em Java.

Veja o código completo para o exemplo:

package arquivodecodigos;

import java.io.*;
import java.util.*;

public class Estudos {
  static int indentLevel = -1;

  public static void main(String[] args) {
    listPath(new File("c:\\estudos_c"));
  }

  static void listPath(File path) {
    File files[];
    indentLevel++;

    files = path.listFiles();

    Arrays.sort(files);

    for (int i = 0, n = files.length; i < n; i++) {
      for (int indent = 0; indent < indentLevel; indent++) {
        System.out.print("  ");
      }
      
      System.out.println(files[i].getName());
      
      if(files[i].isDirectory()) {
        listPath(files[i]);
      }
    }
    indentLevel--;
  }
}

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

DICA.txt
estudos
  .vs
    estudos
      v16
        .suo
        Browse.VC.db
        ipch
          AutoPCH
            1dcb307edee5acf8
              ORIGEM.ipch
  Debug
    estudos.exe
    estudos.exe.recipe
    estudos.ilk
    estudos.log
    estudos.pdb
    estudos.tlog
      CL.command.1.tlog
      CL.read.1.tlog
      CL.write.1.tlog
      estudos.lastbuildstate
      link.command.1.tlog
      link.read.1.tlog
      link.write.1.tlog
    estudos.vcxproj.FileListAbsolute.txt
    Origem.obj
    vc142.idb
    vc142.pdb
  estudos.sln
  estudos.vcxproj
  estudos.vcxproj.filters
  estudos.vcxproj.user
  Origem.cpp
Estudos_C.dev
Estudos_C.exe
Estudos_C.layout
main.c
main.o
Makefile.win



Python ::: wxPython ::: Janelas, Diálogos, Formulários e Painéis do wxPython

Como usar a classe wx.Frame para criar um objeto window top-level (janelas top-level) em aplicações wxPython

Quantidade de visualizações: 8927 vezes
Um objeto window top-level é um widget (geralmente um frame) que não está contido em nenhum outro widget na aplicação. É o que o usuário geralmente aponta e diz "Este é o programa". O objeto window top-level é geralmente a janela principal de sua aplicação e contém widgets (controles) e objetos de interface com os quais o usuário interage. Desta forma, a aplicação é encerrada quando todas as janelas top-level são fechadas.

Sua aplicação deve ter no mínimo um objeto window top-level. O objeto window top-level geralmente é uma subclasse de wx.Frame, embora ele possa também ser uma subclasse de wx.Dialog. Na maioria das vezes, definiremos subclasses customizadas de wx.Frame para usar em nossas aplicações.

Contudo, há um grande número de subclasses pré-definidas de wx.Dialog que fornecem muitos dos diálogos típicos que poderíamos encontrar em uma aplicação.

A classe wx.Frame é derivada de: wx.TopLevelWindow, wx.Window, wx.EvtHandler e wx.Object.


AngularJS ::: Angular / AngularJS + JavaScript ::: Controllers AngularJS

Como adicionar funções (ou métodos) ao seu controller AngularJS

Quantidade de visualizações: 2031 vezes
Nesta dica mostrarei como adicionar comportamento ao seu controller AngularJS, ou seja, adicionar funções ou métodos para acessar e/ou modificar as variáveis contidas no escopo.

Para este exemplo criaremos um controller chamado "VolumeTV". Este controller terá uma variável chamada "volume" e dois botões para aumentar ou diminuir o volume. Note que, tanto a variável quanto as duas funções são colocadas no $scope para facilitar o acesso destes a partir da view.

Veja o exemplo completo, sem usar AngularJS CLI nem TypeScript, somente JavaScript e HTML:

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Cadastro de Alunos AngularJS</title>

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.7.9/angular.min.js">
</script>

</head>
<body>

<script type="text/javascript">
  // vamos criar uma nova aplicação
  var app = angular.module('MinhaApp', []);
     
  // vamos criar o controller VolumeTV	 
  app.controller('VolumeTV', function ($scope){
    // define o volume inicial
    $scope.volume = 5;
	
    // função para aumentar o volume
    $scope.aumentarVolume = function(){
       $scope.volume++;
    };
	
    // função para diminuir o volume
    $scope.diminuirVolume = function(){
       $scope.volume--;
    };      
  });
</script>

<div ng-app="MinhaApp" ng-controller="VolumeTV">
  <h1>Volume atual: {{volume}}</h1>
  <button ng-click="aumentarVolume()">Aumentar Volume</button>
  <button ng-click="diminuirVolume()">Diminuir Volume</button>
</div>

</body>
</html>



Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle

Exercício Resolvido de Dart - Como testar se um ano é bissexto em Dart - Um programa que lê um ano com quatro dígitos e informa se ele é bissexto ou não

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

Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando ele com 366 dias, um dia a mais do que os anos normais de 365 dias, ocorrendo a cada quatro anos (exceto anos múltiplos de 100 que não são múltiplos de 400). Isto é feito com o objetivo de manter o calendário anual ajustado com a translação da Terra e com os eventos sazonais relacionados às estações do ano. O último ano bissexto foi 2012 e o próximo será 2016.

Um ano é bissexto se ele for divisível por 4 mas não por 100, ou se for divisível por 400.

Escreva um programa Dart que pede ao usuário um ano com quatro dígitos e informa se ele é bissexto ou não.

Sua saída deverá ser parecida com:

Informe o ano: 2024
O ano informado é bissexto.
Resposta/Solução:

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

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

void main(){
  // vamos solicitar que o usuário informe um ano
  stdout.write("Informe o ano: ");
  int ano = int.parse(stdin.readLineSync());  
  
  // vamos verificar se o ano informado é bissexto
  if(((ano % 4 == 0) && (ano % 100 != 0)) || (ano % 400 == 0)){
    print("O ano informado é bissexto.");  
  }
  else{
    print("O ano informado não é bissexto.");  
  }
}



Delphi ::: VCL - Visual Component Library ::: TComboBox

Como detectar o evento OnSelect da classe TComboBox do Delphi

Quantidade de visualizações: 13559 vezes
O evento OnSelect da classe TComboBox é disparado quando o usuário seleciona um item (uma string) na lista drop-down do componente. Este evento possui a seguinte assinatura:

property OnSelect: TNotifyEvent;

Um evento do tipo TNotifyEvent não possui parâmetros específicos ao evento ocorrido. Assim, no evento OnSelect temos acesso somente ao parâmetro Sender, do tipo TObject, que nos informa em qual componente o evento ocorreu.

Vamos ver um exemplo? Veja o código para o tratamento do evento OnSelect de um ComboBox. Aqui, todas as vezes que o evento disparar, nós vamos exibir o valor do novo item:

procedure TForm3.ComboBox1Select(Sender: TObject);
begin
  // vamos mostrar o novo item selecionado
  ShowMessage('O novo item selecionado é: ' +
    ComboBox1.Items[ComboBox1.ItemIndex]);
end;

Note que o evento OnSelect é disparado somente após a mudança de seleção e, consequentemente, a atualização da propriedade Text, que deverá refletir o novo item.


C++ ::: Fundamentos da Linguagem ::: Estruturas de Controle

C++ para iniciantes - Como usar a instrução switch em C++

Quantidade de visualizações: 10562 vezes
A instrução switch é usada quando queremos testar várias possibilidades de fluxo de código mas não queremos usar vários else if. Desta forma, cada possibilidade é testada em um bloco case. Veja um exemplo:

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
  int valor = 4;

  switch(valor){
    case 0:
      cout << "Valor e igual a 0" << endl;
      break;
    case 1:
      cout << "Valor e igual a 1" << endl;
      break;
    case 2:
      cout << "Valor é igual a 2" << endl;
      break;
    default:
      cout << "Nenhuma das anteriores" << endl;
  }
    
  system("PAUSE");
  return EXIT_SUCCESS;
}

Veja que, se nenhuma das condições testadas em um bloco case for satisfatória, a parte default da instrução switch será executada.

A variável fornecida para uma instrução switch pode ser de qualquer tipo integral, ou de um tipo criado pelo usuário mas que pode ser convertido para um tipo integral (mesmo que seja uma conversão forçada - cast).


JavaScript ::: Dicas & Truques ::: Cookies

Cookies em JavaScript - Como registrar a quantidade de vezes que o usuário visitou a sua página HTML

Quantidade de visualizações: 99 vezes
Nesta dica mostrarei como podemos cookies em JavaScript para gravar e exibir para o usuário a quantidade de vezes que ele visitou o nosso site ou página. Veja que, no código, nós temos duas funções: gravarCookie(), que recebe o nome, o valor e a direção do cookie em dias, e obterCookie(), que recebe o nome do cookie e retorna o seu valor.

O resultado ficará parecido ao que temos na figura abaixo:



E agora o código JavaScript completo para o exemplo, incluindo a página HTML:

<html>
<head>
<title>Estudando JavaScript</title>

<script type="text/javascript">
  // função que permite gravar um cookie
  function gravarCookie(nome, valor, diasDuracao){
    var dataExpiracao = new Date();
    dataExpiracao.setTime(dataExpiracao.getTime() 
      + (diasDuracao * 24 * 3600 * 1000));
    document.cookie = nome + "=" + escape(valor) +
      ((diasDuracao == null) ? "" : "; expires=" + dataExpiracao);
  }
   
  // função quer permite obter um cookie
  function obterCookie(nome){    
    if(document.cookie.length > 0){
      var c_start = document.cookie.indexOf(nome + "=");
      if(c_start != -1){ 
        c_start = c_start + nome.length + 1; 
        c_end = document.cookie.indexOf(";", c_start);
        
        if(c_end == -1){
          c_end = document.cookie.length;
        }
        
        return unescape(document.cookie.substring(
          c_start, c_end));
      } 
    }
    return null;
  }
</script>

</head>
<body>
  
</HEAD>
<BODY>
 
<script type="text/javascript">
  // verifica se o visitante já esteve aqui
  var vezes = obterCookie('visitas');
  if(vezes != null){
    document.write("<h1>Esta é a sua " + vezes + "ª visita.</h1>");
    gravarCookie("visitas", ++vezes, 30);
  }
  else{ // é a primeira vez. grave a visita
    // grava um cookie que durará 30 dias
    gravarCookie("visitas", 1, 30); 
    document.write("<h1>Esta é a sua primeira visita ao site</h1>");
  }
</script>
 
</body>
</html>



PHP ::: Dicas & Truques ::: Data e Hora

Como verificar se uma determinada data é um dia útil usando PHP

Quantidade de visualizações: 228 vezes
Nesta dica eu mostro como é possível usar um código PHP para verificar se uma determinada data é um dia útil. Para isso nós usamos o argumento "w" para retornar um valor inteiro para o dia da semana e testamos se ele é diferente de 0 e 6, ou seja, sábado e domingo.

Veja o código PHP completo:

<html>
<head>
  <title>Estudos PHP</title>
</head>
 
<body>

<?php  
  // data: 22/11/2006
  $data = mktime(0, 0, 0, 11, 22, 2006);
  $dia_semana = date("w", $data);
   
  // domingo = 0;
  // sábado = 6;
  // verifica sábado e domingo
  if(($dia_semana != 0) && ($dia_semana != 6)){
    echo "Esta data é um dia útil";
  }
  else{
    echo "Esta data NÃO é um dia útil";
  }
?>  

</body>
</html>

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

Esta data é um dia útil

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á 25 usuários muito felizes estudando em nosso site.