Você está aqui: PHP ::: Desafios e Lista de Exercícios Resolvidos ::: PHP Básico

Um programa PHP que receberá a duração de um evento expresso em segundos e exiba-o expresso em horas, minutos e segundos - Desafio de Programação Resolvido em PHP

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

Escreva um programa PHP que receberá a duração de um evento expresso em segundos e exiba-o expresso em horas, minutos e segundos. Seu programa deverá exibir uma saída parecida com:

Informe a duração do evento em segundos: 3712
Duração do evento: 01:01:52
Resposta/Solução:

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

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<?php
  // para executar abra uma janela de comando
  // cmd e dispare o comando abaixo:
  // C:\xampp\php>php c:\estudos_php\estudos.php
   
  // para ler a entrada do usuário
  $entrada = fopen("php://stdin","r");
   
  // vamos solicitar a duração do evento em segundos
  echo "Informe a duração do evento em segundos: ";
  $duracao_segundos = fgets($entrada);
  
  // vamos obter a quantidade de horas do evento
  $horas = $duracao_segundos / 3600;
  // vamos obter os minutos
  $minutos = ($duracao_segundos / 60) % 60;
  // vamos obter os segundos restantes
  $segundos = $duracao_segundos % 60;

  //  vamos exibir a duração do evento em horas, minutos e segundos
  printf("Duração do evento: %02d:%02d:%02d", $horas,
    $minutos, $segundos);
?>


Link para compartilhar na Internet ou com seus amigos:

C# ::: Threads ::: Thread

Como usar a classe Thread para criar threads em seus programas C#

Quantidade de visualizações: 11577 vezes
A classe Thread permite criar e controlar uma thread, além de definir sua prioridade e obter seu status. Veja a posição desta classe na hierarquia de classes da plataforma .NET:

System.Object
  System.Runtime.ConstrainedExecution.CriticalFinalizerObject
    System.Threading.Thread


Um processo pode criar uma ou mais threads para executar parte do código do programa associado a tal processo. Usamos um delegate ThreadStart ou um delegate ParameterizedThreadStart para especificar o código do programa que será executado pela thread. O delegate ParameterizedThreadStart nos permite passar dados para as funções a serem executadas pela thread.

Durante seu ciclo de vida, uma thread está sempre em um ou mais dos estados definidos pela enumeração ThreadState. Um nível de prioridade de agendamento, como definido na enumeração ThreadPriority, pode ser requisitado para a thread, mas, este comportamento nem sempre é garantido pelo sistema operacional.

O método GetHashCode() fornece identificação para threads gerenciadas. Durante o ciclo de vida de uma thread, seu código de identificação não colidirá com os códigos das demais threads, independente do domínio da aplicação a partir do qual obtemos tal valor.

Veja um trecho de código no qual criamos uma thread e a agendamos para execução paralela com a thread principal da aplicação. Note como os valores dos dois laços são exibidos de forma compartilhada pelas duas threads, ou seja, um thread exibe alguns valores e pára, para permitir que a outra faça parte do seu trabalho:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

class Program{
  static void Main(string[] args){
    // using using System.Threading;

    // vamos criar uma nova instância da clase Thread
    // e fornecer o método que será executado
    Thread thread = new Thread(contar);
     
    // vamos agendar a thread para futura execução
    thread.Start();

    // agora vamos contar na thread principal
    for (int i = 0; i <= 20; i++){
      Console.Write("#" + Thread.CurrentThread.GetHashCode() 
        + ": " + i + ", ");
    }

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

  // método que será chamado pela thread
  static void contar(){
    for (int i = 0; i <= 20; i++){
      Console.Write("#" + Thread.CurrentThread.GetHashCode() 
        + ": " + i + ", ");
    }
  }
}

Aqui eu usei a sintáxe de criação de objetos da classe Thread que cria uma instância de ThreadStart nos bastidores, ou seja, forneci apenas o método a ser executado pela nova thread. Note também que uma chamada ao método Start() da thread não faz com que a thread seja executada imediatamente. Este método apenas torna a thread elegível para execução, ou seja, no estado "pronta" (Running). É o sistema operacional que determina quando a mesma será executada.


jQuery ::: Dicas & Truques ::: AJAX

Apostila jQuery para iniciantes - Como fazer requisições assíncronas usando o método ajax() do jQuery

Quantidade de visualizações: 18859 vezes
O jQuery fornece formas bem simples de se fazer requisições assíncronas usando AJAX. Uma destas formas é o método ajax(). Este método possui quase uma dezena de parâmetros adicionais e retorna um objeto XMLHttpRequest, que pode ser usado para fins de encadeamento ou cancelamento da requisição HTTP.

Enquanto outras dicas cobrem todos os parâmetros deste método, aqui nos concentraremos apenas em escrever um exemplo completo de seu uso. Trata-se de uma aplicação que fará uma solicitação HTTP POST a um código PHP que retornará um arquivo XML com alguns valores.

Vamos começar analisando o codigo PHP:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<?
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Content-Type: text/xml");

$nome = utf8_decode($_POST["nome"]);
$cidade = utf8_decode($_POST["cidade"]);
$estado = utf8_decode($_POST["estado"]);

echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n";
echo "<pessoas>\n";
echo "  <pessoa>\n";
echo "    <nome>" . $nome . "</nome>\n";
echo "    <cidade>" . $cidade . "</cidade>\n";
echo "    <estado>" . $estado . "</estado>\n";
echo "  </pessoa>\n";
echo "</pessoas>";
?>

Salve este código PHP como pesquisa.php. Tudo que ele faz é receber alguns parâmetros POST e usá-los para montar um arquivo XML. Em um determinado momento, o arquivo XML retornado poderá ser algo como:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<?xml version="1.0" encoding="iso-8859-1"?>
<pessoas>
 <pessoa>
  <nome>OSMAR J. SILVA</nome>
  <cidade>GOIÂNIA</cidade>
  <estado>GO</estado>
 </pessoa>
</pessoas>

Fique de olho na estrutura deste arquivo XML enquanto progredimos. Veja agora uma página HTML completa que mostra como usar o método ajax() para se conectar a este código PHP e obter os dados gerados em forma de XML:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

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

<!-- Importa a biblioteca jQuery -->
<script src="jquery.js" type="text/javascript"></script>

<script type="text/javascript">
  function carregarDados(){
    var dados = {'nome': "Osmar J. Silva",
	         'cidade': "Goiânia",
		 'estado': "GO"}
	
    $.ajax({
      url: 'pesquisar.php',
      type: 'post',
      dataType: 'xml',
      data: dados,
      success: function(data){
        $(data).find('pessoa').each(function(){
          var nome = $(this).find('nome').text();
	  var cidade = $(this).find('cidade').text();
	  var estado = $(this).find('estado').text();
	  $("#parag").html("Nome: " + nome + "<br>");
	  $("#parag").append("Cidade: " + cidade + "<br>");
	  $("#parag").append("Estado: " + estado);
	});	
      },
      error: function(XMLHttpRequest, textStatus, 
                      errorThrown){
        window.alert('Houve um erro!');
      }
    });
  }
</script>

</head>
<body>

<button onclick="carregarDados()">Carregar dados
</button>

<p id="parag"></p>

</body>
</html>

Veja como usamos os métodos find() e each() para acessar e percorrer os elementos XML. Estes métodos são encontrados na seção de métodos para percorrer o HTML DOM e o XML DOM. Para finalizar lembre-se de que o método ajax() retorna um objeto XMLHttpRequest.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços

Exercícios Resolvidos de Java - Usando o laço while para encontrar o MDC (Máximo Divisor Comum) de dois números

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

Escreva um programa Java que usa o laço while para calcular o MDC (Máximo Divisor Comum) de dois números. Sejam a, b e c números inteiros não nulos, dizemos que c é um divisor comum de a e b se c divide a (escrevemos c|a) e c divide b (c|b). Chamaremos D(a,b) o conjunto de todos os divisores comum de a e b.

Sua saída deve ser parecida com:

Informe o primeiro número: 16
Informe o segundo número: 24
O MDC de 16 e 24 é: 8
Resposta/Solução:

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

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);
      
    // vamos que o usuário informe dois números
    System.out.print("Informe o primeiro número: ");
    int n1 = Integer.parseInt(entrada.nextLine());
    System.out.print("Informe o segundo número: ");
    int n2 = Integer.parseInt(entrada.nextLine());
    
    int mdc = 1; // partimos do principio de que 1 é o MDC inicial
    int k = 2; // MDC possível
    while((k <= n1) && (k <= n2)){ // enquanto k for menor ou igual aos dois números
       if((n1 % k == 0) && (n2 % k == 0)){
          mdc = k; // já temos um novo MDC
       }
       k++; // buscamos o novo MDC
    }

    // mostramos o resultado
    System.out.println("O MDC de " + n1 + " e " + n2 + " é: " + mdc);
    
    System.out.println("\n");
  }
}



JavaScript ::: Dicas & Truques ::: Cookies

Como verificar se cookies estão habilitados no navegador do usuário usando JavaScript

Quantidade de visualizações: 10927 vezes
Em algumas situações nós gostaríamos de checar se os cookies estão habilitados no browser do usuário antes de gravarmos alguma informação. Nesta dica eu mostro como isso pode ser feito.

Note que tudo que precisamos fazer é criar um cookie temporário e tentar acessá-lo em seguida. Veja o código completo para o exemplo (incluindo a página HTML):

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

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

<script type="text/javascript">
  // vamos criar um cookie temporário
  var cookieTemp = (new Date()).getTime() + '';
   
  // colocamos o cookie como parte do documento
  document.cookie = "cookieTemp=" + cookieTemp + "; path=/";
   
  // o cookie existe?
  if (document.cookie.indexOf(cookieTemp, 0) < 0){
    window.alert("Os cookies não estão habilitados no seu navegador");  
  }
  else{
    window.alert("Os cookies estão habilitados no seu navegador");
  } 
</script>

</body>
</html>

Ao executar este código teremos o seguinte resultado:

Os cookies estão habilitados no seu navegador.


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

Como calcular porcentagem em Python - Eu tenho um valor de R$ 500,00 que aumentou para R$ 800,00. Qual foi o aumento percentual?

Quantidade de visualizações: 726 vezes
Nesta dica mostrarei como calcular a porcentagem do aumento sofrido por um determinado valor usando a linguagem Python. Este é um cenário muito comum. Veja a seguinte situação:

a) Temos um produto x que custava R$ 500,00 e que foi aumentado para R$ 800,00. Queremos, dessa forma, descobrir o percentual de aumento que o preço do produto sofreu.

Veja o código Python para a realização deste cálculo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# método principal
def main():
  # preço anterior do produto
  precoAnterior = float(input("Informe o preço anterior: "))
  # preço atual do produto
  precoAtual = float(input("Informe o preço atual: "))
  
  # efetua o cálculo
  a = precoAnterior
  b = 100 * precoAtual
  c = b / a
  d = c - 100
  
  # mostra o resultado
  print("A porcentagem de aumento foi: %f%%" % d)
 
if __name__== "__main__":
  main()

Ao executar este código Python nós teremos um resultado parecido com:

Informe o preço anterior: 500
Informe o preço atual: 800
A porcentagem de aumento foi: 60.000000%


Desafios, Exercícios e Algoritmos Resolvidos de Python

Veja mais Dicas e truques de Python

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