Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.
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 Apenas R$ 19,90
PHP ::: Dicas & Truques ::: Data e Hora

Como retornar o dia da semana em PHP na forma abreviada e em português usando a função gmstrftime() e o sinalizador "%a"

Quantidade de visualizações: 282 vezes
Como retornar o dia da semana em PHP na forma abreviada e em português usando a função gmstrftime() e o sinalizador "%a"

Nesta dica mostrarei um código que retorna o nome do dia da semana de forma abreviada e em português usando a função gmstrftime() combinada com o sinalizador "%a". O resultado será agora como "seg", "ter", "qua", etc.

Veja o código PHP completo para o exemplo:

<?php
  // obtemos o locale padrão
  $locale_anterior = setlocale(LC_ALL, NULL); 
  // ajustamos o locale para português brasileiro
  setlocale(LC_ALL, "pt_BR");
  // obtemos o dia da semana   
  $dia_semana = gmstrftime("%a", time());
  // voltamos o locale anterior
  setlocale(LC_ALL, $locale_anterior);
  // e mostramos o resultado
  echo "O dia da semana é: " . $dia_semana;
?>

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

O dia da semana é: dom


C ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o comprimento da hipotenusa em C dadas as medidas do cateto oposto e do cateto adjascente

Quantidade de visualizações: 1868 vezes
Nesta dica mostrarei como é possível usar a linguagem C para retornar o comprimento da hipotenusa dadas as medidas do cateto oposto e do cateto adjascente. Vamos começar analisando a imagem a seguir:



Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados.

Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras):

\[c^2 = a^2 + b^2\]

Tudo que temos a fazer a converter esta fórmula para código C. Veja:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
int main(int argc, char *argv[]){
  float a = 20; // medida do cateto oposto
  float b = 30; // medida do cateto adjascente
  
  // agora vamos calcular o comprimento da hipotenusa
  float c = sqrt(pow(a, 2) + pow(b, 2));
 
  // e mostramos o resultado
  printf("O comprimento da hipotenusa é: %f", c);
 
  printf("\n\n");
  system("PAUSE");
  return 0;
}

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

O comprimento da hipotenusa é: 36.055511

Como podemos ver, o resultado retornado com o código C confere com os valores da imagem apresentada.


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

Como substituir todas as ocorrências de uma substring em uma string em Delphi sem considerar maiúsculas e minúsculas usando a função ReplaceText()

Quantidade de visualizações: 12016 vezes
Algumas vezes precisamos substituir todas as ocorrências de uma substring em uma string mas não queremos diferenciar letras maiúsculas de letras minúsculas. Em Delphi isso pode ser feito com o auxílio da função ReplaceText(). 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'
  // sem considerar maiúsculas e minúsculas
  frase := ReplaceText(frase, 'Php', 'Delphi');

  // vamos exibir o resultado
  ShowMessage(frase);
end;

Lembre-se de que esta função nã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.


JavaScript ::: Web APIs (APIs Web) ::: MediaDevices Interface (Interface MediaDevices)

HTML5 + JavaScript - Como usar a interface MediaDevices em seus códigos JavaScript

Quantidade de visualizações: 1736 vezes
A interface MediaDevices é um daqueles objetos que vemos com frequencia em códigos JavaScript e não entendemos muito bem o seu funcionamento. Nesta dica vou decifrá-la.

O objetivo da interface MediaDevices é fornecer acesso aos dispositivos de entrada de mídia conectadas e às quais o navegador tem acesso, a saber, câmeras, microfone e compartilhamento de tela. É por meio dessa interface que acessamos tais dispositivos.

A interface MediaDevices está disponível como um objeto do objeto navigator. Veja como testar sua existência e suporte no seu navegador web:

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 
<title>A interface MediaDevices</title>
  
</head>
<body>
 
<script type="text/javascript">
  // o browser suporta o MediaDevices?
  if(navigator.mediaDevices){
    window.alert("O navegador suporta o MediaDevices");  
  }
  else{
    window.alert("O navegador não suporta o MediaDevices");  
  }
</script>
  
</body>
</html>

Note que mediaDevices é um objeto Singleton do objeto navigator, ou seja, só há uma instância desse objeto disponível no contexto de execução de códigos no navegador. Há também a preocupação em relação à segurança. Alguns navegador podem restringir o acesso a este objeto se você não estiver em um ambiente HTTPS ou localhost.


Ruby ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o cosseno de um ângulo em Ruby usando o método cos() da biblioteca Math - Calculadora de cosseno em Ruby

Quantidade de visualizações: 958 vezes
Em geral, quando falamos de cosseno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função cosseno disponível nas linguagens de programação para calcular o cosseno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria.

No entanto, é sempre importante entender o que é a função cosseno. Veja a seguinte imagem:



Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles.

Assim, o cosseno é a razão entre o cateto adjascente e a hipotenusa, ou seja, o cateto adjascente dividido pela hipotenusa. Veja a fórmula:

\[\text{Cosseno} = \frac{\text{Cateto adjascente}}{\text{Hipotenusa}} \]

Então, se dividirmos 30 por 36.056 (na figura eu arredondei) nós teremos 0.8320, que é a razão entre o cateto adjascente e a hipotenusa (em radianos).

Agora, experimente calcular o arco-cosseno de 0.8320. O resultado será 0.5881 (em radianos). Convertendo 0.5881 radianos para graus, nós obtemos 33.69º, que é exatamente o ângulo em graus entre o cateto adjascente e a hipotenusa na figura acima.

Pronto! Agora que já sabemos o que é cosseno na trigonometria, vamos entender mais sobre a função cos() da linguagem Ruby. Esta método, que faz parte da biblioteca Math, recebe um valor numérico e retorna um valor, também numérico) entre -1 até 1 (ambos inclusos). Veja:

puts "Cosseno de 0 = " + Math.cos(0).to_s
puts "Cosseno de 1 = " + Math.cos(1).to_s
puts "Cosseno de 2 = " + Math.cos(2).to_s

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

Cosseno de 0 = 1.0
Cosseno de 1 = 0.5403023058681398
Cosseno de 2 = -0.4161468365471424

Note que calculamos os cossenos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função cosseno mostrada abaixo:




PHP ::: Dicas & Truques ::: Gráficos e Cores

Como obter o tipo de uma imagem usando a função getimagesize() do PHP

Quantidade de visualizações: 10307 vezes
Muitas vezes precisamos saber o tipo de uma imagem antes de processá-la. Nestes casos podemos usar a função getimagesize() da linguagem PHP e obter o tipo da imagem no terceiro valor retornado. Este valor é um número inteiro correspondente a algumas das constantes IMAGETYPE_GIF, IMAGETYPE_JPEG, IMAGETYPE_PNG, etc. Veja um exemplo:

<?php
  // nome e local da imagem
  $imagem = "/home/xxxx/xxxx/public_html/imagem.jpg";
  
  // vamos obter o tipo da imagem...ele estará no terceiro 
  // elemento da lista
  list($largura, $altura, $tipo) = getimagesize($imagem);
  
  // testamos o tipo de imagem
  if($tipo == IMAGETYPE_JPEG)
    echo "O tipo da imagem é JPG ou JPEG";
  else if($tipo == IMAGETYPE_GIF)
    echo "O tipo da imagem é GIF";
  else if($tipo == IMAGETYPE_PNG)
    echo "O tipo da imagem é PNG"; 
  else
    echo "O tipo da imagem não está entre os tipos testados";
?>

Ao executar este código você terá um resultado parecido com:

O tipo da imagem é JPG ou JPEG



Java ::: Coleções (Collections) ::: LinkedList

Java Collections - Como adicionar elementos no final de uma LinkedList usando os métodos add() e addLast()

Quantidade de visualizações: 9330 vezes
O trecho de código a seguir mostra como adicionar elementos no final de um lista ligada (objeto da classe LinkedList). Para isso podemos usar os métodos add() e addLast(). Ambos possuem a mesma funcionalidade. É claro que addLast() representa melhor a idéia de adicionar elementos no final da lista ligada. Veja ainda como usar um ListIterator para percorrer a lista e exibir os elementos. Outra técnica que você perceberá é o uso de unboxing dentro do laço while:

import java.util.*;
 
public class Estudos{ 
  public static void main(String args[]){ 
    // Cria uma LinkedList de inteiros
    LinkedList<Integer> valores = new 
      LinkedList<Integer>();
     
    // adiciona valores no final da lista ligada 
    // usando os métodos add() e addLast(). Lembre-se 
    // de que ambos fornecem a mesma funcionalidade
    valores.add(56);
    valores.addLast(3);
    valores.add(28);
 
    // obtém um ListIterator para percorrer toda a
    // lista ligada, começando no primeiro elemento
    ListIterator<Integer> iterador = 
      valores.listIterator(0);
    while(iterador.hasNext()){  
      // note o unboxing aqui
      int valor = iterador.next(); 
      System.out.println(valor); 
    }
  } 
}

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

56
3
28


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

Como testar se um número é par ou ímpar em C#

Quantidade de visualizações: 3187 vezes
Muitas vezes precisamos saber se um determinado número é par ou ímpar. Isso pode ser feito em C# usando-se o operador de módulo %, que retorna o resto de uma divisão entre números inteiros. Veja:

static void Main(string[] args){
  Console.Write("Informe um valor inteiro: ");
  int num = int.Parse(Console.ReadLine());

  if(num % 2 == 0){
    Console.WriteLine("Você informou um numero par");
  }
  else{
    Console.WriteLine("Você informou um numero impar");
  } 

  Console.WriteLine("\nPressione qualquer tecla para sair...");
  // pausa o programa
  Console.ReadKey();
}

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

Informe um valor inteiro: 8
Você informou um numero par


Python ::: Dicas & Truques ::: Ordenação e Pesquisa (Busca)

Como usar a busca binária em Python - Pesquisa binária na linguagem Python

Quantidade de visualizações: 722 vezes
A busca binária, ou pesquisa binária, é um algoritmo eficiente para encontrar um item em uma lista (vetor ou array) ordenada. Sim, os itens devem, obrigatoriamente, estar ordenados.

O processo é bem simples. A busca binária começa a partir do meio da lista e compara o item nesta posição com o valor sendo pesquisado. Se o valor não for encontrado e for menor que o item no meio da lista, o algoritmo passa para a porção à esquerda da lista, eliminando, assim, metade dos elementos do vetor ou array (a porção maior que o valor pesquisado).

Se o valor não for encontrado e for maior que o item no meio da lista, então a busca reinicia a partir da metade da sub-lista à direita (os itens maiores que o valor pesquisado). Essa divisão continua até que o valor seja encontrado ou não seja mais possível dividir a lista pela metade.

Se um array ou vetor possuir 100 elementos e usarmos a busca binária nele, precisaremos efetuar no máximo 7 tentativas para encontrar o valor desejado. Se a lista possuir 4 bilhões de itens nós teremos que fazer no máximo 32 tentativas.

Isso acontece porque a pesquisa binária é executada em tempo logarítmico, ou seja, log2 n, onde n é a quantidade de itens no vetor. Dessa forma, se tivemos 1.000 itens em um array, log2 1000 = 10 tentativas. Lembre-se de que, na programação log e log2 retornam resultados diferentes: log(10) = 2.302585092994046 enquanto log2(10) = 3.321928094887362. Na análise da busca binária nós usamos sempre log2.

Vamos agora ver como podemos codificar a busca binária em Python. Veja o código a seguir:

# função principal do programa
def main():
  # vamos criar uma lista ordenada de inteiros
  valores = [3, 5, 7, 8, 9, 12, 43, 50, 52, 60]
  print("Os valores da lista são: {0}".format(valores))

  # vamos pedir o item a ser pesquisado
  numero = int(input("Informe o número a ser pesquisado: "))

  # agora vamos pesquisar o número no array usando a pesquisa
  # binária
  # a variável esquerda aponta para o primeiro elemento do vetor
  esquerda = 0
  # a variável direita aponta para o último elemento do vetor
  direita = len(valores) - 1
  # para indicar se o valor foi encontrado
  encontrado = False

  # enquanto houver mais de um elemento a ser comparado
  while esquerda <= direita:
    # obtemos o elemento na metade da lista
    meio = (esquerda + direita) // 2
    
    # fazemos a comparação
    if numero == valores[meio]:
      print("O número foi encontrado no índice {0}".format(
        meio))
      encontrado = True
      break # sai do laço  

    # o item atual é maior que o valor pesquisado?
    if valores[meio] > numero:
      direita = meio - 1
    # o item atual é menor que o valor pesquisado?
    else:
      esquerda = meio + 1

  # o valor foi encontrado?
  if not encontrado:
    print("O valor pesquisado não foi encontrado")  

if __name__== "__main__":
  main()

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

Os valores da lista são: [3, 5, 7, 8, 9, 12, 43, 50, 52, 60]
Informe o número a ser pesquisado: 9
O número foi encontrado no índice 4


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

Exercício Resolvido de Java - Um programa que lê três números inteiros e mostra o maior

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

Faça um programa Java que solicita três números inteiros e mostra o maior deles. Exiba uma mensagem caso os três números não forem diferentes. Sua saída deverá ser parecida com:



Resposta/Solução:

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

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);  
    
    // vamos solicitar os três números inteiros
    System.out.print("Informe o primeiro número: ");
    int num1 = Integer.parseInt(entrada.nextLine());
    System.out.print("Informe o segundo número: ");
    int num2 = Integer.parseInt(entrada.nextLine());
    System.out.print("Informe o terceiro número: ");
    int num3 = Integer.parseInt(entrada.nextLine());
    
    // o primeiro número é o maior?
    if((num1 > num2) && (num1 > num3)){
      System.out.println("O primeiro número é o maior");
    }
    // o segundo número é o maior?
    else if((num2 > num1) && (num2 > num3)){
      System.out.println("O segundo número é o maior");
    }
    // o terceiro número é o maior?
    else if((num3 > num1) && (num3 > num2)){
      System.out.println("O terceiro número é o maior");
    }
    // os número não são diferentes
    else{
      System.out.println("Os três números não são diferentes");
    }
    
    System.out.println("\n");
  }
}


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