Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Física - Mecânica - Movimento Retilíneo Uniforme (MRU) |
|
Exercícios Resolvidos de Física usando Java - (Unitau) Uma motocicleta com velocidade constante de 20 m/s ultrapassa um trem de comprimento 100 m e velocidade 15 m/s. A duração da ultrapassagem... - Desafio de Programação Resolvido em JavaQuantidade de visualizações: 5138 vezes |
|
Pergunta/Tarefa: (Unitau) Uma motocicleta com velocidade constante de 20 m/s ultrapassa um trem de comprimento 100 m e velocidade 15 m/s. A duração da ultrapassagem é: a) 5 s. b) 15 s. c) 20 s. d) 25 s. e) 30 s. Resposta/Solução: Os problemas de Movimento Retilíneo Uniforme (MRU) que envolvem ultrapassagem e encontro de partículas (carros, bicicletas, atletas, etc) são muito interessantes, pois retratam situações que vivenciamos todos os dias. E a Física é bem mais fácil de entender quando seus efeitos podem ser visualizados na prática. Para entender bem a resolução deste exercício, e de vários outros que são bem parecidos, tirando alguns detalhes complementares, vamos começar desenhando o cenário abaixo: Note que o enunciado não fala as dimensões da moto, ou seja, ela é tratada como uma partícula qualquer. Podemos levar essa idéia para o trem também, tratanto a frente dele como uma partícula. Dessa forma, temos que a partícula trem está 100 metros a frente da partícula moto. O primeiro passo então, é obter as posições iniciais das duas particulas usando a Função Horária da Posição ou Deslocamento em Movimento Retilíneo Uniforme - MRU, tomando como referencial o instante t = 0. Veja o código Java a seguir: package arquivodecodigos; public class Estudos{ public static void main(String args[]){ // valocidade da moto double vMoto = 20; // em metros por segundo // valocidade do trem double vTrem = 15; // em metros por segundo // posição inicial dos dois veículos // a partícula trem está 100 metros a frente da // partícula moto double sInicialMoto = 0; double sInicialTrem = 100; ...... Ao executar este código Java nós teremos o seguinte resultado: A posição da moto é: 0.0 metros A posição do trem é: 100.0 metros Lembre-se de que nós estamos trabalhando apenas com a frente do trem, ou seja, a partícula trem está 100 metros a frente da partícula moto. De posse da Função Horária da Posição dos dois veículos, só precisamos aplicar a fórmula para obtenção do tempo gasto na ultrapassagem, que é a variação da posição dividida pela variação da velocidade, subtraindo sempre o menor do maior. Veja o código Java: package arquivodecodigos; public class Estudos{ public static void main(String args[]){ // valocidade da moto double vMoto = 20; // em metros por segundo // valocidade do trem double vTrem = 15; // em metros por segundo // posição inicial dos dois veículos // a partícula trem está 100 metros a frente da // partícula moto double sInicialMoto = 0; double sInicialTrem = 100; // tempo inicial em segundos double tempo_inicial = 0; // calcula a posição atual dos dois veículos double sMoto = sInicialMoto + (vMoto * tempo_inicial); ...... Ao executar este novo código Java nós teremos o seguinte resultado: A posição da moto é: 0.0 metros A posição do trem é: 100.0 metros A duração da ultrapassagem é: 20.0 segundos Como podemos ver, a resposta correta é a letra c (20 s). Agora, experimente fazer alterações no código Java para simular outras situações e melhorar seu entendimento de Movimento Retilíneo Uniforme. |
|
Link para compartilhar na Internet ou com seus amigos: | |
jQuery ::: Dicas & Truques ::: Manipulação e Conteúdo Dinâmico |
Como definir o conteúdo de um elemento HTML usando o método text() do jQueryQuantidade de visualizações: 6927 vezes |
O método text("conteudo") nos permite definir o conteúdo de um elemento HTML de forma muito simplificada. Veja um trecho de código que define o conteúdo de uma DIV com o id "div_1": <script type="text/javascript"> <!-- function definirTexto(){ var texto = "Veja este texto"; ...... Lembre-se de que este método atuará em todos os elementos retornados sob uma determinada condição. Observe ainda que este método substitui "<" e ">" por "<" e ">". O retorno deste método é um objeto jQuery, que pode ser usado para possíveis encadeamentos de chamadas de métodos. |
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Python para iniciantes - Como contar de 0 a 10 usando o laço for da linguagem PythonQuantidade de visualizações: 10013 vezes |
Nesta dica veremos como usar o loop for da linguagem Python para contar de 0 até 10. É um exemplo bem simples, mas serve para nos lembrar da sintáxe dessa construção. Veja o código completo: # função principal do programa def main(): for i in range(11): print(i, end = " ") ...... Ao executar este código Python nós teremos o seguinte resultado: 0 1 2 3 4 5 6 7 8 9 10 |
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como usar um laço for para pesquisar valores nos itens de uma ListBox do DelphiQuantidade de visualizações: 12392 vezes |
Nesta dica mostro como é possível pesquisar valores nos itens de uma ListBox. Note que, se o valor pesquisado for encontrado, nós o selecionamos na lista e informamos seu índice. Se não for encontrado nós ajustamos uma variável Boolean e avisamos do não sucesso da operação. Finalmente note que este código faz diferenciação de letras maiúsculas e minúsculas, ou seja, Osmar será diferente de OSMAR. Veja o código: procedure TForm1.Button2Click(Sender: TObject); var i: Integer; pesquisa: string; encontrou: Boolean; begin // vamos solicitar o texto a ser pesquisado na ListBox pesquisa := InputBox('Pesquisar', 'Informe o texto', ''); encontrou := false; // vamos usar um laço for para percorrer todos os itens // da ListBox for i := 0 to ListBox1.Count - 1 do begin if ListBox1.Items[i] = pesquisa then ...... Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular desvio padrão em Python - Python para Matemática e EstatísticaQuantidade de visualizações: 4693 vezes |
Em Matemática e Estatística, o Desvio padrão (em inglês: Standard Deviation) é uma medida de dispersão, ou seja, é uma medida que indica o quanto um conjunto de dados é uniforme. Quando o desvio padrão é baixo, isso quer dizer que os dados do conjunto estão mais próximos da média. Como calcular o desvio padrão de um conjunto de dados? Vamos começar analisando a fórmula mais difundida na matemática e na estatística: \[\sigma = \sqrt{ \frac{\sum_{i=1}^N (x_i -\mu)^2}{N}}\] Onde: a) __$\sigma__$ é o desvio; b) __$x_i__$ é um valor qualquer no conjunto de dados na posição i; c) __$\mu__$ é a média aritmética dos valores do conjunto de dados; d) N é a quantidade de valores no conjunto. O somatório dentro da raiz quadrada nos diz que devemos somar todos os elementos do conjunto, desde a posição 1 até a posição n, subtrair cada valor pela média do conjunto e elevar ao quadrado. Obtida a soma, nós a dividimos pelo tamanho do conjunto. Veja o código Python completo que obtém o desvio padrão a partir de um conjunto de dados contendo quatro valores: # precisamos importar o módulo Math import math # função principal do programa def main(): # conjunto dos dados conjunto = [10, 30, 90, 30] soma = 0.0 # soma dos elementos desvio_padrao = 0.0 # desvio padrão tam = len(conjunto) # tamanho dos dados # vamos somar todos os elementos for i in range(0, tam): soma = soma + conjunto[i] # agora obtemos a média do conjunto de dados ...... Ao executar este código Python nós teremos o seguinte resultado: Desvio Padrão Populacional: 30.0 Desvio Padrão Amostral: 34.64101615137755 Veja que, para calcular o Desvio Padrão Populacional, nós dividimos o somatório pela quantidade de elementos no conjunto, enquanto, para calcular o Desvio Padrão Amostral, nós dividimos o somatório pela quantidade de elementos - 1 (cuidado com a divisão por zero no caso de um conjunto com apenas um elemento). |
PHP ::: Dicas & Truques ::: Data e Hora |
Como gerar um calendário mensal completo para um determinado mês e ano usando PHPQuantidade de visualizações: 1467 vezes |
Nesta dica eu mostro como podemos usar as principais funções de data e hora da linguagem PHP para montar um calendário PHP completo (com comentários e fácil de modificar). Basta passar um mês e ano e a função se encarrega do restante. Este código é muito útil em aplicações PHP para escolas, faculdades, sistemas financeiros, etc. Veja o resultado na imagem abaixo: E agora o código completo: <html> <head> <title>Estudando PHP</title> </head> <body> <?php // função que permite montar o calendário function montar_calendario($mes, $ano){ // um vetor para guardar os meses $meses = array(1 => 'Janeiro', 2 => 'Fevereiro', 3 => 'Março', 4 => 'Abril', 5 => 'Maio', 6 => 'Junho', 7 => 'Julho', 8 => 'Agosto', 9 => 'Setembro', 10 => 'Outubro', 11 => 'Novembro', 12 => 'Dezembro'); // um vetor com os dias da semana $dias_semana = array('Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'); // vamos obter o primeiro dia do calendário $primeiro_dia = mktime(0, 0, 0, $mes, 1, $ano); // obtém a quantidade de dias no mês $dias_mes = date('t', $primeiro_dia); // dia da semana que o calendário inicia (começa em 0) $dia_inicio = date('w', $primeiro_dia); // cria a tabela HTML para o calendário echo '<table border="1" cellspacing="0" cellpadding="4"> <tr><th colspan="7">'. $meses[$mes] . ' - ' . $ano . '</th> </tr> <tr><td align="center">'; echo implode('</td><td align="center">', $dias_semana); echo '</td></tr>'; // precisamos de células vazias até encontrarmos // o dia inicial da semana if($dia_inicio > 0){ for($i = 0; $i < $dia_inicio; $i++){ echo '<td> </td>'; ...... |
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
Quem Somos |
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
|
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..
|
Linguagens Mais Populares |
1º lugar: Java |