Anúncio Patrocinado
Chat de Sexo - Site para adultso - Maiores de 18 anos. Converse com pessoas de todo o Brasil, de forma discreta e anônima
Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: JavaScript ::: Fundamentos da Linguagem ::: Comentários

Tutorial JavaScript para iniciantes - Como inserir comentários em seus códigos JavaScript

Quantidade de visualizações: 882 vezes
Comentários em nossos códigos são sempre uma boa idéia. Primeiro porque, no momento que estamos escrevendo, a lógica está fresca em nossa cabeça. Porém, alguns dias depois podemos não entender muito bem a estratégia usada na resolução de um determinado problema. Além disso, os compiladores e interpretadores ignoram por completo os comentários inseridos em nossos códigos.

A outra razão para o uso de comentários é facilitar o trabalho da pessoa que dará manutenção em nossos códigos, ou talvez permitir um melhor entendimento por parte do cliente que nos contratou para desenvolver uma determinada rotina.

Comentários em JavaScript podem ser usados de duas formas diferentes. Para comentários de múltiplas linhas, devemos usar a sintáxe da linguagem C/C++ e Java (aproveito para lembrar que JavaScript não é Java). Veja:

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

<script type="text/javascript">
  /*
  Este é um exemplo de comentário de múltiplas
  linhas. Você pode usar quantas linhas quiser neste
  tipo de comentário. Este tipo de comentário é o mesmo
  usado nas linguagens C/C++ e Java.
  */
    
  var valor = 15;
  document.writeln("O valor informado é: " + valor);
</script>

</body>
</html>

Podemos usar comentários de uma linha apenas, usando a sintáxe das linguagens C++ e Java. Veja:

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

<script type="text/javascript">
  var valor = 30; // Define o valor da variável
  document.writeln("O valor informado é: " + valor);
</script>

</body>
</html>

Lembre-se! Na dúvida, comente o seu código. Se não conseguir comentar cada função, comente no mínimo as partes mais importantes e talvez, as mais difíceis de entender decorrido um tempo. Palavra de programador.

Link para compartilhar na Internet ou com seus amigos:

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

Como obter a quantidade de caracteres em uma palavra ou texto usando a função Length() do Delphi

Quantidade de visualizações: 20511 vezes
Em algumas situações precisamos saber o tamanho de uma string, ou seja, quantos caracteres ela contém. Isso pode ser feito por meio da função Length(). Veja:

procedure TForm1.Button1Click(Sender: TObject);
var
  nome: string; // declara uma variável do tipo string
  tamanho: integer; // declara uma variável do tipo inteiro
begin
  nome := 'Osmar';

  // vamos obter a quantidade de caracteres na string
  tamanho := Length(nome);

  // mostra o resultado
  ShowMessage('A string contém : ' + IntToStr(tamanho) +
    ' caracteres');
end;

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


Laravel ::: Dicas de Estudo e Anotações ::: Passos Iniciais

Primeiros passos no Laravel? Como escrever sua primeira aplicação usando rotas e views - Tutorial básico de Laravel

Quantidade de visualizações: 1713 vezes
Primeiros passos no Laravel? Como escrever sua primeira aplicação usando rotas e views

Entre as perguntas mais frequentes que recebemos estão: Como aprendo Laravel? Onde encontro instruções para criar minha primeira aplicação Laravel? Existe algum tutorial básico de Laravel? Por onde começo a aprender Laravel, Tutorial de Laravel, Laravel para iniciantes, exemplos de Laravel, entre outras.

Nesta dica ajudarei você a dar os primeiros passos. Depois é só seguir as nossas dicas e truques de Laravel para começar a escrever aplicações bem interessantes.

O primeiro passo é instalar o Laravel. Se você ainda não o fez, clique aqui e aprenda a instalar o Laravel agora mesmo.

Para esta dica eu mostrarei como criar a aplicação Laravel e executá-la no servidor Apache Web Server que vem junto com a instalação do XAMPP, que inclui também o PHP e o MySQL (ou MariaDB).

Então, com o Laravel devidamente instalado e o XAMPP (na verdade é o servidor Apache Http Server) já rodando, abra uma janela de terminal e vá até o diretório htdocs do XAMPP:

C:\Users\Osmar>cd C:\xampp\htdocs

Dentro dessa pasta, dispare o seguinte comando:

C:\xampp\htdocs>laravel new escola

Se tudo correr bem, você verá uma série de mensagens indicando a criação da aplicação e o download de algumas dependências. Hora de ir pegar um cafezinho, pois essa operação é um pouco demorada mesmo.

A instalação da aplicação já finalizou? Hora de testar. Abra seu navegador no endereço http://localhost/escola/public e você verá o seguinte resultado:



Veja que o Laravel já criou para nós, automaticamente, uma rota para a página inicial da aplicação e já criou também uma view. Vamos começar entendendo como a rota foi criada. Vá até o diretório C:\xampp\htdocs\escola\routes e abra o arquivo web.php no seu editor favorito. Você verá o seguinte código:

<?php

use Illuminate\Support\Facades\Route;

/*
|-----------------------------------------
| Web Routes
|-----------------------------------------
|
| Here is where you can register web routes for
| your application. These routes are loaded by the
| RouteServiceProvider within a group which
| contains the "web" middleware group. 
| Now create something great!
*/

Route::get('/', function(){
  return view('welcome');
});

Vamos alterar a rota criada automaticamente para a versão abaixo:

Route::get('/', function(){
  return view('pagina_inicial');
});

Note que apenas troquei return view('welcome'); por return view('pagina_inicial');. Agora abra o endereço http://localhost/escola/public novamente. Agora teremos um erro:

InvalidArgumentException
View [pagina_inicial] not found.
http://localhost/escola/public/
pagina_inicial was not found.
Are you sure the view exists and is a .blade.php file?

Isso aconteceu porque não temos uma view chamada pagina_inicial. Vamos criá-la agora. Salve o código abaixo com o nome de pagina_inicial.blade.php no diretório C:\xampp\htdocs\escola\resources\views.

<html>
<head>
  <title>Controle Escolar</title>
</head>
<body>

<h1>Esta é a página inicial</h1>

</body>
</html>

Agora abra o endereço http://localhost/escola/public e teremos o resultado abaixo:



Viu que maravilha? Agora, experimente acrescentar mais uma rota ao web.php:

<?php

use Illuminate\Support\Facades\Route;

Route::get('/', function(){
  return view('pagina_inicial');
});

Route::get('/cursos', function(){
  return view('nossos_cursos');
});

?>

Abra seu navegador no endereço http://localhost/escola/public/cursos e verá que o Laravel vai reclamar da inexistência da view nossos_cursos.blade.php. Crie essa view e faça o teste novamente. Agora é só criar algo fantástico em Laravel.


Java ::: Dicas & Truques ::: Threads

Threads em Java - Como usar a interface Runnable da Java API em suas aplicações

Quantidade de visualizações: 17532 vezes
A interface pública Runnable deve ser implementada em nossas classes quando queremos que instâncias destas possam ser executadas por uma thread. Esta interface está no pacote java.lang e entre as classes que a implementam podemos citar AsyncBoxView.ChildState, FutureTask, RenderableImageProducer, Thread e TimerTask.

Esta interface apresenta apenas um método, a saber:

public void run();
Assim, uma classe que implementa Runnable deverá redefinir este método, sem argumentos, e fornecer a funcionalidade desejada.

Este interface foi idealizada para fornecer um protocolo comum para objetos que têm como objetivo executar determinadas porções de código enquanto ativos. Por exemplo, Runnable é implementada pela classe Thread. Estar ativa significa que uma thread foi iniciada e ainda não finalizou sua tarefa.

Além disso, a interface Runnable fornece meios para que uma classe esteja ativa sem fazer sub-classe de Thread. Uma classe que implementa Runnable pode ser executada sem fazer sub-classe de Thread criando-se uma instância de Thread e fornecendo tal classe como alvo. Na maioria dos casos, a interface Runnable deve ser usada se estivermos planejando apenas sobrescrever o método run() e nenhum outro método da classe Thread. Isso é importante, uma vez que não devemos extender classes a menos que tenhamos a intenção de modificar ou extender o comportamento fundamental da classe.

Veja uma aplicação na qual temos uma classe que implementa Runnable. Note como criamos instâncias de Thread e fornecemos nossa classe como alvo:

// criamos uma classe que servirá como thread
class MinhaThread implements Runnable{
  private String nome;  

  public MinhaThread(String nome){
    this.nome = nome;
  }   

  public void run(){
    for(int i = 1; i <= 20; i++){
      System.out.println(nome + ": " + i);
    }
  }
}

public class Estudos{
  public static void main(String[] args){
    // vamos criar duas threads
    MinhaThread mt1 = new MinhaThread("Thread 1");
    Thread t1 = new Thread(mt1);
    t1.start();    

    MinhaThread mt2 = new MinhaThread("Thread 2");
    Thread t2 = new Thread(mt2);
    t2.start();

    System.exit(0);
  }
}



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

Exercícios Resolvidos de C - Ler um número de três dígitos, separá-lo e invertê-lo, escrevendo o número lido e sua forma inversa

Quantidade de visualizações: 972 vezes
Algorítmo Resolvido de C - Ler um número de três dígitos, separá-lo e invertê-lo, escrevendo o número lido e sua forma inversa

Pergunta/Tarefa:

Escreva um programa C que leia um número de 3 dígitos e o inverta, escrevendo o número lido e o invertido. Por exemplo, se o usuário informar o valor 753, seu programa deverá invertê-lo, resultando em 357. Seu programa deverá exibir a seguinte saída:

Observação: Seu código deverá usar apenas os operadores matemáticos disponíveis, por padrão, na linguagem C.

Informe um valor inteiro de três dígitos: 753
O valor original é: 753
O valor invertido é: 357
Resposta/Solução:

Veja a resolução comentada deste exercício usando C console (modo texto):

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>  
   
int main(int argc, char *argv[])
{
  int numero, temp, inverso;
	
  setlocale(LC_ALL,""); // para acentos do português
  
  // vamos solicitar ao usuário que informe um valor inteiro
  // na faixa 100 a 999 (incluindo)
  printf("Informe um valor inteiro de três dígitos: ");
  // vamos ler o valor informado
  scanf("%d", &numero);

  // vamos verificar se o valor está na faixa permitida
  if(numero < 100 || numero > 999){
    printf("Valor fora da faixa permitida");
  }
  else{
    // vamos criar uma variável temporária para 
    // manter intacto o valor lido
    temp = numero;
    inverso = 0; // guardará o valor invertido

    // vamos inverter o valor agora
    while(temp != 0){
      inverso = (inverso * 10) + (temp % 10);
      temp = temp / 10;
    }

    // vamos mostrar o resultado
    printf("O valor original é: %d\n", numero);
    printf("O valor invertido é: %d", inverso);
  }  
  
  printf("\n\n");
  system("pause");
  return 0;
}



Java ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Dados - Listas Ligadas

Exercícios Resolvidos de Java - Como inserir um nó em qualquer posição de uma lista ligada em Java - Escreva um programa Java que cria uma lista dinamicamente encadeada

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

Escreva um programa Java que cria uma lista dinamicamente encadeada (lista singularmente encadeada) e pede para o usuário inserir 5 elementos do tipo inteiro. Em seguida peça para o usuário informar um índice e um novo elemento e insira tal elemento no índice informado.

Faça a validação dos índices para que ele não saia da faixa permitida.

Sua saída deve ser parecida com:

Inserindo 5 valores na lista

Informe o 1.o valor: 8
Informe o 2.o valor: 2
Informe o 3.o valor: 4
Informe o 4.o valor: 7
Informe o 5.o valor: 3

Valores na lista: 8 -> 2 -> 4 -> 7 -> 3 -> null

Inserindo um elemento no índice k

Informe o índice desejado: 2
Informe o valor do nó: 9

Valores na lista: 8 -> 2 -> 9 -> 4 -> 7 -> 3 -> null
Resposta/Solução:

Na saída podemos ver que o índice 2 corresponde ao terceiro elemento da lista ligada. Por isso o valor 4 foi empurrado para a frente para abrir espaço para o valor 9. Se o índice 0 fosse informado, o número 8 seria empurrado para a frente e o nó com valor 9 passaria a ser o início da lista ligada.

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

package estudos;
  
import java.util.Scanner;

// classe interna usada para representar um
// nó na lista ligada
class No {
  int valor; // valor do nó
  No proximo; // aponta para o novo nó
 
  // construtor cheio da classe No
  public No(int valor, No proximo) {
    this.valor = valor;
    this.proximo = proximo;
  }
  
  // construtor vazio da classe No
  public No() {
    this.valor = 0;
    this.proximo = null;
  }
}

public class Estudos { 
  public static void main(String args[]){
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos criar uma referência para o início da lista
    No inicio = null;
    
    // vamos inserir 5 valores inteiros na lista ligada
    int valor;
    System.out.println("Inserindo 5 valores na lista\n");
    for (int i = 0; i < 5; i++) {
      System.out.print("Informe o " + (i + 1) + ".o valor: ");
      valor = Integer.parseInt(entrada.nextLine());
      // vamos inserir este valor no final da lista
      inicio = inserirFinal(inicio, valor);
    }
    
    // vamos exibir os valores na lista ligada
    System.out.print("\nValores na lista: ");
    exibirLista(inicio);
    
    // vamos inserir um novo elemento no índice informado
    System.out.println("\nInserindo um elemento no índice k\n");
    System.out.print("Informe o índice desejado: ");
    int indice = Integer.parseInt(entrada.nextLine());
    
    // o índice é válido?
    if ((indice < 0) || (indice > tamanhoLista(inicio) - 1)) {
      System.out.println("O índice é inválido.");
    }
    else {
      // vamos inserir o novo nó no índice indicado
      System.out.print("Informe o valor do nó: ");
      valor = Integer.parseInt(entrada.nextLine());
      inicio = inserirIndice(inicio, indice, valor);
      
      // vamos exibir os valores na lista ligada
      System.out.print("\nValores na lista: ");
      exibirLista(inicio);
    }
  }
  
  // função que permite adicionar um nó em uma determinada
  // posição da lista ligada
  public static No inserirIndice(No inicio, int indice, int valor) {
    // vamos apontar para o nó inicial
    No atual = inicio;
    // criamos um novo nó
    No novo = criarNo(valor);
    
    // a lista ligada ainda está vazia?
    if (atual == null){
      // inicio recebe o novo nó
      inicio = novo;
    }
    else if (indice == 0) {
      // o índice é igual a 0? vamos inserir
      // o nó no início da lista ligada
      novo.proximo = inicio;
      inicio = novo;
    }
    else {
      // vamos procurar o local adequado para inserção
      // primeiro criamos um nó temporário
      No temp = new No();
      // apontamos o nó temporário para o início da lista
      temp = inicio;
      // e percorremos os nós até encontrar a posição
      // de inserção
      for(int i = 1; i < indice; i++) {
        if (temp != null) {
          // passa para o próximo nó
          temp = temp.proximo;
        }
      }
   
      // concluimos a inserção
      novo.proximo = temp.proximo;
      temp.proximo = novo;
    }
    
    // e retornamos o início da lista
    return inicio;
  }

  // função que permite adicionar um nó no final da
  // lista ligada
  public static No inserirFinal(No inicio, int valor) {
    // vamos apontar para o nó inicial
    No atual = inicio;
    // criamos um novo nó
    No novo = criarNo(valor);
  
    // a lista ligada ainda está vazia?
    if (atual == null){
      // inicio recebe o novo nó
      inicio = novo;
    }    
    else { // temos um ou mais nós na lista ligada
      // vamos localizar o último nó
      while (atual.proximo != null) {
        atual = atual.proximo;
      }
       
      // encontramos o último nó. Agora vamos inserir
      // o novo nó depois dele
      atual.proximo = novo;
    }
     
    // e retornamos o início da lista
    return inicio;
  }
  
  // função usada para construir e retornar um novo nó
  public static No criarNo(int valor) {
    // cria o novo nó
    No no = new No(valor, null);
    // retorna o nó criado
    return no;
  }
  
  // função usada para percorrer a lista ligada e
  // exibir os valores contidos em seus nós
  public static void exibirLista(No inicio) {
    // vamos apontar para o início da lista
    No temp = inicio;
    
    // a lista está vazia?
    if (temp == null) {
      System.out.println("A lista está vazia.");
    }
    else {
      // esse laço se repete enquanto tempo for
      // diferente de null
      while (temp != null) {
        // vamos mostrar o valor desse nó
        System.out.print(temp.valor + " -> ");
        // avança para o próximo nó
        temp = temp.proximo;
      }
    
      // mostra o final da lista
      System.out.println("null");
    }
  }
  
  // função que retorna a quantidade de nós na lista ligada
  public static int tamanhoLista(No inicio) {
    int tamanho = 0;
    
    // vamos apontar para o início da lista
    No temp = inicio;
    
    // a lista está vazia?
    if (temp == null) {
      return 0;
    }
    else {
      // esse laço se repete enquanto tempo for
      // diferente de null
      while (temp != null) {
        // vamos incrementar o tamanho
        tamanho++;
        // avança para o próximo nó
        temp = temp.proximo;
      }
    }
    
    return tamanho;
  }
}



Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

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