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: 5143 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: | |
C# ::: Fundamentos da Linguagem ::: Métodos, Procedimentos e Funções |
Tutorial C# para iniciantes - Como escrever seu primeiro método ou função em C#Quantidade de visualizações: 15119 vezes |
À medida que estamos desenvolvendo nossos códigos, percebemos que estes podem ser divididos de acordo com suas funcionalidades. Ao efetuar esta divisão, estamos na verdade criando blocos de códigos que executam uma determinada tarefa. E, descobrimos que tais blocos de códigos podem ser reaproveitados com frequencia em um mesmo programa. Assim, ao mecanismo usado para disparar a execução destes blocos de códigos é dado o nome de método (ou função em linguagens tais como C e C++). Um método, em sua forma mais simples, é apenas um conjunto de instruções que podem ser chamadas a partir de locais estratégicos de um programa. Veja um exemplo: // um método que não recebe nenhum argumento // e não retorna nenhum valor ...... Este método apenas exibe o texto "Sou um método". Veja o uso das chaves { e } para delimitar a área de atuação do método (o corpo do método). A palavra-chave void indica que este método não retorna nenhum valor ao finalizar sua execução enquanto a palavra-chave static é melhor explicada na nossa seção sobre modificadores em C#. Todos os métodos em C# possuem parênteses, os quais servem como marcadores para a lista de parâmetros do método. Parênteses vazios indicam que o método não possui parâmetros.[br][br] Veja agora um trecho de código completo exemplificando a chamada ao método recém-criado: // um método que não recebe nenhum argumento // e não retorna nenhum valor static void metodo(){ Console.WriteLine("Sou um método"); } static void Main(string[] args){ ...... |
Python ::: Dicas & Truques ::: Lista (List) |
Como ordenar uma lista de inteiros em Python de acordo com a soma dos dígitos de seus elementos usando uma função lambdaQuantidade de visualizações: 522 vezes |
Nesta dica mostrarei como podemos usar uma função lambda em Python para ordenar uma lista de inteiros de acordo com a soma dos seus dígitos. Este é um código muito interessante e que permitirá um melhor entendimento de funções lambda em Python. Veja o código completo para o exemplo: # método usado para ordenar a lista de acordo com a soma # de seus dígitos def ordenar(vetor): return sorted(vetor, key=lambda n: sum(int(c) for c in str(n) if c != "-")) # função principal do programa def main(): # vamos criar uma lista de inteiros valores = [21, 10, 8, 32, 70, 41, 40, 11] ...... Ao executarmos este código Python nós teremos o seguinte resultado: Lista na ordem original: [21, 10, 8, 32, 70, 41, 40, 11] Lista ordenada: [10, 11, 21, 40, 32, 41, 70, 8] |
PHP ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como adicionar novos elementos a um array PHP usando a notação [] - Adicionando elementos ao final de um array PHPQuantidade de visualizações: 15617 vezes |
Em várias situações nós precisamos incluir novos elementos ao final de um vetor (array) PHP. Para isso nós podemos usar a notação [], que adiciona o novo vetor e incrementa seu índice automaticamente. Veja um exemplo completo no qual declaramos um vetor e em seguida usamos a notação [] para adicionar três elementos ao seu final: <? // vamos declarar o vetor $pessoas = array(); // define o elemento no índice 0 $pessoas[] = "Osmar J. Silva"; // define o elemento no índice 1 $pessoas[] = "Salvador M. Andrade"; ...... Ao executarmos este código nós teremos o seguinte resultado: array(3) { [0]=> string(14) "Osmar J. Silva" [1]=> string(19) "Salvador M. Andrade" [2]=> string(24) "Dyego Fernandes de Sousa" } Esta dica foi revisada e testado no PHP 8. |
C ::: Dicas & Truques ::: Matemática e Estatística |
Como elevar uma base a um determinado expoente usando a função pow() da linguagem CQuantidade de visualizações: 1902 vezes |
Em algumas situações nós precisamos efetuar cálculos de potenciação em C, ou seja, elevar um número (uma base) a um determinado expoente e obter sua potência. Veja a figura a seguir: Veja que aqui o valor 5 foi elevado ao cubo, ou seja, ao expoente 3 e obtemos como resultado sua potência: 125. A linguagem C nos fornece a função pow(), presente no header math.h que recebe como argumentos a base e o expoente e nos retorna a potência (como um valor double). Veja um exemplo de seu uso no código abaixo: #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]){ int base = 4; int expoente = 5; double potencia = pow(4, 5); ...... Ao executarmos este código C nós teremos o seguinte resultado: A base 4 elevada ao expoente 5 é igual à potência 1024.000000 Note que a função pow() da linguagem C retorna um valor double. |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como abrir um arquivo em PHP - Passos necessários para abrir um arquivo usando PHPQuantidade de visualizações: 17886 vezes |
Nesta dica mostrarei os passos necessários para abrir um arquivo usando PHP. Note que usei a função file_exists() para verificar se o caminho e nome do arquivo indicados existem no sistema. Em seguida efetuamos uma chamada à função fopen() indicando que o arquivo será aberto no modo leitura. Veja como coloquei todo o código em uma exceção try..catch. Usar exceções em PHP é a melhor forma de garantir que seus códigos responderão corretamente a eventos inesperados. Veja o código completo para o exemplo: <?php // Informe o nome do arquivo que você deseja abrir $arquivo = "c:\\estudos_php\\teste.txt"; // Use a função file_exists() para confirmar a existência do // do arquivo. if(file_exists($arquivo)){ // Tente abrir o arquivo (neste exemplo vamos abrí-lo para leitura) try{ if($readfile = fopen($arquivo, "r")){ // Já podemos manipular o arquivo. ...... Ao executar este código PHP nós teremos duas situações. Se o arquivo existir, a mensagem "Arquivo aberto com sucesso." será exibida. Se o arquivo não existir, a mensagem "Arquivo não existe". Há ainda uma terceira mensagem, que será exibida caso a exceção for atirada, indicando que o arquivo não pôde ser aberto por alguma outra razão. |
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 |