JavaScript ::: Dicas & Truques ::: Formulários

Formulários HTML - Como marcar ou desmarcar todas as checkboxes de um formulário HTML de uma só vez usando JavaScript

Quantidade de visualizações: 18577 vezes
Nesta dica mostrarei como é possível clicar em um botão (pode ser um link também) e chamar uma função JavaScript que marca ou desmarca todos os elementos HTML checkbox de uma só vez. Para isso usaremos o método getElementsByName() para retornar todas as checkbox e em seguida manipular sua propriedade checked.

Veja a imagem abaixo:



E agora o código HTML e JavaScript completo:

<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>
 
<form name="teste">
  <input type="checkbox" name="linguagem">Java
  <input type="checkbox" name="linguagem">Delphi
  <input type="checkbox" name="linguagem">C++
</form>
 
<a href="javascript:marcar()">Marcar Todas</a> | 
<a href="javascript:desmarcar()">Desmarcar Todas</a>
 
<script language="JavaScript">
  function marcar(){
    var boxes = document.getElementsByName("linguagem");
    for(var i = 0; i < boxes.length; i++)
      boxes[i].checked = true;
  }
   
  function desmarcar(){
    var boxes = document.getElementsByName("linguagem");
    for(var i = 0; i < boxes.length; i++)
      boxes[i].checked = false;
  }
</script>
 
</body>
</html>



C ::: Dicas & Truques ::: Matemática e Estatística

Como calcular porcentagem em C - Como efetuar cálculos de porcentagem em C

Quantidade de visualizações: 28789 vezes
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em C.

Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas.

Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em C:

// Algoritmo que calcula porcentagem em C
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
  // variáveis usadas na resolução do problema
  float valor, percentual, valor_final;

  valor = 178.00; // valor original
  percentual = 15.0 / 100.0; // 15%
  valor_final = valor + (percentual * valor);

  // mostra o resultado
  printf("O valor final do produto é: %f", valor_final);

  // O resultado será 204,70
  
  printf("\n\n");
  system("PAUSE");
  return 0;
}

Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em C:

// Algoritmo que calcula porcentagem em C
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
  // variáveis usadas na resolução do problema
  float valor, percentual, valor_final;

  valor = 250.00; // valor original
  percentual = 8.0 / 100.0; // 8%
  valor_final = valor - (percentual * valor);

  // mostra o resultado
  printf("O valor final do produto é: %f", valor_final);
  
  // O resultado será 230,00
  
  printf("\n\n");
  system("PAUSE");
  return 0;
}

Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em C:

// Algoritmo que calcula porcentagem em C
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
  // variáveis usadas na resolução do problema
  float perguntas, acertos;

  perguntas = 90.0;
  acertos = 72.0;

  // mostra a porcentagem de acertos
  printf("Porcentagem de acertos: %f%%", ((acertos / perguntas) * 100));

  // mostra a porcentagem de erros
  printf("\nPorcentagem de erros: %f%%", ((perguntas - acertos) / perguntas) * 100);

  // Os resultados serão 80% e 20%

  printf("\n\n");
  system("PAUSE");
  return 0;
}

Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em C:

// Algoritmo que calcula porcentagem em C
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
  // variáveis usadas na resolução do problema
  float valor_anterior, novo_valor, porcentagem_lucro;

  valor_anterior = 300.0; // valor anterior
  novo_valor = 340.0; // valor novo

  // calcula a porcentagem de lucro
  // efetua o cálculo
  porcentagem_lucro = ((novo_valor * 100) / valor_anterior) - 100;

  printf("A porcentagem de lucro foi de: %f%%", porcentagem_lucro);

  // O resultado será 13,33

  printf("\n\n");
  system("PAUSE");
  return 0;
}

Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em C:

// Algoritmo que calcula porcentagem em C
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
  // variáveis usadas na resolução do problema
  float valor, percentual, comissao;

  valor = 70.0; // valor do produto
  percentual = 5.0 / 100.0; // 5%

  // calcula a comissão
  comissao = percentual * valor;

  // mostra o resultado
  printf("O valor repassado ao vendedor é: %f", comissao);

  // O resultado será 3,5

  printf("\n\n");
  system("PAUSE");
  return 0;
}



C# ::: Namespace System.Drawing ::: Graphics

Como desenhar texto usando o método DrawString() da classe Graphics do C#

Quantidade de visualizações: 6015 vezes
Em algumas situações precisamos desenhar uma string (texto) no formulário ou algum outro controle. Para isso podemos usar o método DrawString() da classe Graphics. A assinatura mais comumente usada deste método é:

Graphics.DrawString(String, Font, Brush, Single, Single)
Note que precisamos fornecer a string a ser desenhada, a fonte a ser usada (como um objeto da classe Font), a cor e preenchimento (um objeto de alguma classe que herde de Brush) e as coordenadas x e y. Veja um trecho de código no qual desenhamos a string "Arquivo de Códigos" no formulário:

private void button1_Click(object sender, EventArgs e){
  // vamos obter o Graphics do formulário
  Graphics g = this.CreateGraphics();

  // vamos desenhar a string "Arquivo de Códigos"
  g.DrawString("Arquivo de Códigos", this.Font, new 
    SolidBrush(Color.Red), 40, 60);

  // vamos liberar o objeto Graphics
  g.Dispose();
}

Aqui a string será desenhada usando a fonte do formulário e na cor vermelha e sólida. Se quiséssemos definir a fonte, o código ficaria algo assim:

g.DrawString("Arquivo de Códigos", new Font("Verdana", 30), 
  new SolidBrush(Color.Red), 40, 60);

As coordenadas x e y nas quais o desenho ocorrerá podem ser informadas como um objeto da estrutura PointF. Veja:

g.DrawString("Arquivo de Códigos", new Font("Verdana", 30), 
  new SolidBrush(Color.Red), new PointF(80f, 120f));



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

Como pesquisar uma substring em uma string C++ usando o método find() e retornar o índice do primeiro caractere

Quantidade de visualizações: 10330 vezes
Nesta dica mostrarei como podemos usar a função find() da classe String do C++ para pesquisar parte de uma palavra, frase ou texto. Se a substring for encontrada, o índice do seu primeiro caractere é retornado. Caso contrário o valor npos é retornado.

Veja o código C++ completo para o exemplo:

#include <string>
#include <iostream>

using namespace std;

int main(int argc, char *argv[]){
  // vamos criar uma string
  string frase = "Gosto de Java e C++";
  cout << "A string informada foi: " << frase << endl;
  
  // agora vamos checar a existência da substring
  size_t pos = frase.find("Java");

  // a substring foi encontrada?
  if(pos == string::npos){
    cout << "A substring nao foi encontrada." << endl;
  }
  else{
    cout << "A substring foi encontrada" <<
      " no indice " << pos << endl;
  }

  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}

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

A string informada foi: Gosto de Java e C++
A substring foi encontrada no indice 9


PHP ::: Fundamentos da Linguagem ::: Comentários

Aprenda a programar em PHP - Como inserir comentários em seus códigos PHP

Quantidade de visualizações: 16034 vezes
Comentários em nossos códigos são sempre uma boa idéia. Primeiro porque, no momento que estávamos 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.

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 PHP podem ser usados de três formas diferentes. Para comentários de múltiplas linhas, devemos usar a sintáxe da linguagem C/C++:

<?
  /*
  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 na linguagem C/C++.
  */
   
  $valor = 15;
  echo "O valor informado é: " . $valor;
?>

Podemos usar comentários de uma linha apenas, usando a sintáxe da linguagem C++:

<?
  $valor = 30; // Define o valor da variável
  echo "O valor informado é: " . $valor; // exibe resultado
?>

A terceira forma de comentário usa o modelo de Shell:

<?
  $valor = 120; # Define o valor da variável
  echo "O valor informado é: " . $valor; # exibe resultado
?>



Python ::: Desafios e Lista de Exercícios Resolvidos ::: Hidrologia e Hidráulica

Exercícios Resolvidos de Python - Qual seria a vazão (m3/h) de saída para uma bacia hidrográfica "completamente impermeável", com área de 60 km2, sob uma chuva constante

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

1) Qual seria a vazão (m3/h) de saída para uma bacia hidrográfica "completamente impermeável", com área de 60 km2, sob uma chuva constante à taxa de 10 mm/h?

A) 180.000 m3/h

B) 6.000 m3/h

C) 600.000 m3/h

D) 60.000 m3/h

E) 600.000.000 m3/h

Sua saída deve ser parecida com:

Área da bacia em km2: 60
Precipitação em mm/h: 10
A vazão é: 600000.0 m3/h
Resposta/Solução:

O primeiro passo para resolver esta questão é relembrar a fórmula da vazão:

\[\text{Q} = \text{A} \cdot \text{v}\]

Onde:

Q = vazão em m3/s, m3/h, etc;

A = área da bacia m2, km2, etc.

v = a taxa da chuva, ou seja, a precipitação em mm/s, mm/h, etc.

A maior dificuldade aqui é a conversão das unidades, pois o exercício nos pede a vazão em m3/h. Por essa razão temos que converter a área para metros quadrados e a precipitação em milímetros para precipitação em metros.

Então, hora de vermos a resolução comentada deste exercício usando Python:

# função principal do programa
def main():
  # vamos ler a área da bacia em km2
  area = float(input("Área da bacia em km2: "))
    
  # vamos ler a precipitação em milímetros por hora
  precipitacao = float(input("Precipitação em mm/h: "))
    
  # vamos calcular a vazão em metros cúbicos por hora
  # primeiro convertemos a área para metros quadrados
  area = area * 1000000.0
  # agora convertemos milímetros para metros
  precipitacao = precipitacao / 1000.0
  # e calculamos a vazão
  vazao = area * precipitacao
    
  # e mostramos o resultado
  print("A vazão é: {0} m3/h".format(vazao))
  
if __name__== "__main__":
  main()



C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções

Exercício Resolvido de C++ - Escreva um programa que solicite dois números do tipo inteiro distintos ao usuário e que apresente na tela o maior deles

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

Escreva um programa que solicite dois números do tipo inteiro distintos ao usuário e que apresente na tela o maior deles. Esse programa deve possuir uma função para verificar qual é o maior número.

Atenção: seu código deverá assegurar que os dois números informados pelo usuário sejam diferentes. Exiba uma mensagem na tela caso isso acontecer.

Sua saída deverá ser parecida com:

Informe o primeiro número inteiro: 6
Informe o segundo número inteiro: 3
O maior número é: 6
Resposta/Solução:

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

#include <string>
#include <iostream>

using namespace std;

// protótipo da função que receberá dois números inteiros
// e retornará o maior deles
int maior_numero(int num1, int num2);

int main(int argc, char *argv[]){
  // variáveis usadas na resolução do problema
  int num1, num2, maior;
  
  // vamos pedir para o usuário informar os dois números
  cout << "Informe o primeiro número inteiro: ";
  cin >> num1;
  cout << "Informe o segundo número inteiro: ";
  cin >> num2;
  
  // os números são iguais?
  if(num1 == num2){
    cout << "Erro. Os dois números são iguais.\n" << endl;
  }
  else{
    // vamos chamar a função para obter o número maior
    maior = maior_numero(num1, num2);
    cout << "O maior número é: " << maior << "\n" << endl;	
  }
  
  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS; 
}

// função que receberá dois números inteiros e retornará
// o maior deles
int maior_numero(int num1, int num2){
  // o primeiro número é maior que o segundo?
  if(num1 > num2){
    return num1;
  }
  else{
    return num2;
  }
}



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

Como testar se uma matriz é uma matriz identidade usando Java

Quantidade de visualizações: 1078 vezes
Seja M uma matriz quadrada de ordem n. A matriz M é chamada de Matriz Identidade de ordem n (indicada por In) quando os elementos da diagonal principal são todos iguais a 1 e os elementos restantes são iguais a zero.

Para melhor entendimento, veja a imagem de uma matriz identidade de ordem 3, ou seja, três linhas e três colunas:



Veja um código Java completo no qual nós declaramos uma matriz quadrada de ordem 3, pedimos para o usuário informar os valores de seus elementos e no final informamos se a matriz é uma matriz identidade ou não:

package estudos;

import java.util.Scanner;

public class Estudos{
  public static void main(String[] args){
    int n = 3; // ordem da matriz quadrada
    int matriz[][] = new int[n][n]; // matriz quadrada

    // para efetuar a leitura do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos pedir para o usuário informar os elementos da matriz
    for (int i = 0; i < n; i++){
      for (int j = 0; j < n; j++) {
        System.out.print("Elemento na linha " + (i + 1) +
          " e coluna " + (j + 1) + ": ");
        matriz[i][j] = Integer.parseInt(entrada.nextLine());
      }
    }
    
    // agora verificamos se a matriz é uma matriz identidade
    boolean identidade = true;
    for(int linha = 0; linha < n; linha++){
      for(int coluna = 0; coluna < n; coluna++){
    	if(matriz[linha][coluna] != 1 && matriz[coluna][linha] != 0){
    	  identidade = false;
    	  break;
	}
      }
    }
    
    // agora mostramos a matriz lida
    System.out.printf("\n");
    for (int i = 0; i < n; i++) {
      for (int j = 0; j < n; j++) {
        System.out.printf("%d ", matriz[i][j]);
      }
      System.out.printf("\n");
    }

    if (identidade){
       System.out.printf("\nA matriz informada é uma matriz identidade.\n");
    }
    else{
      System.out.printf("\nA matriz informada não é uma matriz identidade.\n");
    }
  }
}

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

Elemento na linha 1 e coluna 1: 1
Elemento na linha 1 e coluna 2: 0
Elemento na linha 1 e coluna 3: 0
Elemento na linha 2 e coluna 1: 0
Elemento na linha 2 e coluna 2: 1
Elemento na linha 2 e coluna 3: 0
Elemento na linha 3 e coluna 1: 0
Elemento na linha 3 e coluna 2: 0
Elemento na linha 3 e coluna 3: 1

1 0 0 
0 1 0 
0 0 1 

A matriz informada é uma matriz identidade.



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

Como remover espaços em excesso de uma string C# usando expressões regulares

Quantidade de visualizações: 14744 vezes
Nesta dica mostrarei como podemos usar expressões regulares em C# para remover os espaços em excesso de uma frase ou texto. Esta técnica é bem útil quando estamos trabalhando com dados informados pelos usuários de nossas aplicações. Temos sempre que verificar, não somente o excesso de espaços no meio do texto, quanto espaços no início e no fim das strings informadas.

Veja o código completo para o exemplo:

using System;
using System.Text.RegularExpressions;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      // vamos construir o Regex com o padrão que queremos
      Regex regex = new Regex("\\s +", RegexOptions.IgnoreCase | 
        RegexOptions.Compiled);

      // frase com espaços
      string frase = "   Gosto    muito     de    C#    ";

      // frase sem espaços
      string resultado = (regex.Replace(frase, " ")).Trim();

      // mostramos o resultado
      Console.WriteLine("Frase com espaços em excesso: {0}", frase);
      Console.WriteLine("Espaços em excesso removidos: {0}", resultado);

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

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

Frase com espaços em excesso:
    Gosto    muito     de    C#
Espaços em excesso removidos:
Gosto muito de C#



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

Como verificar se um ano é bissexto usando PHP

Quantidade de visualizações: 71 vezes
Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando 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.

Na linguagem PHP podemos verificar se um ano é bissexto checando o valor retornado por date("L"). Se o valor retornado for "1", então o ano é bissexto. Observe que, em PHP, o valor 1 é considerado true (verdadeiro).

Veja um trecho de código completo no qual testamos se um determinado ano é bissexto ou não:

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

<?php  
  // função que verifica se o ano é bissexto
  function ano_bissexto($ano){  
    return (date('L', mktime(0, 0, 0, 1, 1, $ano)) == 1);  
  }  

  // agora vamos testar a função
  $ano = 2020;
  if(ano_bissexto($ano)){
    echo "O ano $ano é bissexto";
  }
  else{
    echo "O ano $ano não é bissexto";
  }
?>  

</body>
</html>

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

O ano 2020 é bissexto

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