Dúvida com lógica

7 respostas
I

Dois carros (X e Y) partem em uma mesma direção. O carro X sai com velocidade constante de 60 Km/h e o carro Y sai com velocidade constante de 90 Km/h. Leia a distância (em Km) e calcule quanto tempo leva (em minutos) para o carro Y tomar essa distância do outro carro.
Suponham que a distancia que um carro tome do outro seja 10km, quanto tempo demoraria para chegarem a essa distancia?

alguem poderia me ajudar com esse exercio eu seu que tem a ver com fisica mas nao sei como fazer.
Ajudem-me agradeço desde ja.

7 Respostas

drsmachado

Opa, aqui tem tudo o que você precisa.

Vynko

Não podemos fazer a sua lição de casa, conforme algumas regras que você encontra > http://www.guj.com.br/java/287484-gujnautas-how-to.
Tente pelo menos! Use as informações do mruv(está no link que o drsmachado te passou), e se não conseguir, poste seu teste e volte à perguntar aqui :smiley:

EDIT: (Sua lição de casa nem ao menos parece(e creio que nem seja) um exercício de java, lol…)

ViniGodoy

Cara, isso tem pouco a ver com física, já que ambos os carros estão em velocidade constante, ou seja, em MRU.

Isso aí é uma aplicação simples de mínimo multiplo comum (MMC), matéria de primeiro grau:
http://www.matematicamuitofacil.com/mmc01.html

Mas pode ser resolvido facilmente na força bruta também.
Basta usar um pouquinho a cabeça.

I
public class Distancia{

	public static void main(String[] args){
	
		final int velocidadeCarroX = 60;
		final int velocidadeCarroY = 90;
		float distanciaPercorridaCarroX;
		float distanciaPercorridaCarroY;
		int comecoCarroY = 0;
		int comecoCarroX = 10;
		int tempoCarroX = 1;
		int tempoCarroY = 1;
		
		// distanciaPercorridaCarroX = comecoCarroX + (velocidadeCarroX * tempoCarroX) calcula distancia percorrida carro x
		// distanciaPercorridaCarroY = comecoCarroY + (velocidadeCarroY * tempoCarroY) calcula distancia percorrida carro y
		// distanciaPercorridaCarroY = distanciaPercorridaCarroX Igualar as distancias
		// 90t(90.tempoCarroY) = 10(comecoCarroX) + 60t(60.tempoCarroX)
		// 90t - 60t = 10
		// 30t = 10
		// t = 10/30
		// t = 1/3 (1/3 de 1 hora = 20minutos)
		
		distanciaPercorridaCarroX = comecoCarroX + velocidadeCarroX * tempoCarroX;
		System.out.println(distanciaPercorridaCarroX);
		distanciaPercorridaCarroY = comecoCarroY + (velocidadeCarroY * tempoCarroY);
		System.out.println(distanciaPercorridaCarroY);
	
	}
	
	

}

o raciocinio esta ali galera, agora como que eu faço pra implementar isso em um algoritimo nao estou dando conta
O exercicio e deste site

Vynko
ivanGuima:
public class Distancia{

	public static void main(String[] args){
	
		final int velocidadeCarroX = 60;
		final int velocidadeCarroY = 90;
		float distanciaPercorridaCarroX;
		float distanciaPercorridaCarroY;
		int comecoCarroY = 0;
		int comecoCarroX = 10;
		int tempoCarroX = 1;
		int tempoCarroY = 1;
		
		// distanciaPercorridaCarroX = comecoCarroX + (velocidadeCarroX * tempoCarroX) calcula distancia percorrida carro x
		// distanciaPercorridaCarroY = comecoCarroY + (velocidadeCarroY * tempoCarroY) calcula distancia percorrida carro y
		// distanciaPercorridaCarroY = distanciaPercorridaCarroX Igualar as distancias
		// 90t(90.tempoCarroY) = 10(comecoCarroX) + 60t(60.tempoCarroX)
		// 90t - 60t = 10
		// 30t = 10
		// t = 10/30
		// t = 1/3 (1/3 de 1 hora = 20minutos)
		
		distanciaPercorridaCarroX = comecoCarroX + velocidadeCarroX * tempoCarroX;
		System.out.println(distanciaPercorridaCarroX);
		distanciaPercorridaCarroY = comecoCarroY + (velocidadeCarroY * tempoCarroY);
		System.out.println(distanciaPercorridaCarroY);
	
	}
	
	

}

o raciocinio esta ali galera, agora como que eu faço pra implementar isso em um algoritimo nao estou dando conta

Como a velocidade continua a mesma, o tempo em que os dois vão percorrer é 10km dividido pela velocidade do carro, que no caso é por hora, então, o resultado final será A horas de viajem para um carro e B horas de viajem para o outro carro.

public class Distancia{
	public static void main(String[] args){
		int velocidadeCarro1 = 60, velocidadeCarro2 = 90, distanciaPercorrida=10;
		float resultadoCarro1 = (float)distanciaPercorrida / velocidadeCarro1, resultadoCarro2 = (float)distanciaPercorrida / velocidadeCarro2;
		System.out.println("O tempo que o carro1 percorreu "+distanciaPercorrida+"km foi "+resultadoCarro1+" horas.");
		System.out.println("O tempo que o carro2 percorreu "+distanciaPercorrida+"km foi "+resultadoCarro2+" horas.");
	}
}
O tempo que o carro1 percorreu 10km foi 0.16666666666666666 horas. O tempo que o carro2 percorreu 10km foi 0.1111111111111111 horas.

Ou seja, o tempo que o carro1 levaria para chegar seria 16 minutos e o carro2, 11 minutos. Se fosse 10000km que eles iriam percorrer, o carro1 demoraria 166 horas e o carro2 111 horas, e assim por diante.
Pode ter que eu tenha errado algo, creio que as horas possam estar erradas, pois não estão na lógica de 0, 60(1h), 120(2h), 180(3h);

Espero ter ajudado!

I
Vynko:
ivanGuima:
public class Distancia{

	public static void main(String[] args){
	
		final int velocidadeCarroX = 60;
		final int velocidadeCarroY = 90;
		float distanciaPercorridaCarroX;
		float distanciaPercorridaCarroY;
		int comecoCarroY = 0;
		int comecoCarroX = 10;
		int tempoCarroX = 1;
		int tempoCarroY = 1;
		
		// distanciaPercorridaCarroX = comecoCarroX + (velocidadeCarroX * tempoCarroX) calcula distancia percorrida carro x
		// distanciaPercorridaCarroY = comecoCarroY + (velocidadeCarroY * tempoCarroY) calcula distancia percorrida carro y
		// distanciaPercorridaCarroY = distanciaPercorridaCarroX Igualar as distancias
		// 90t(90.tempoCarroY) = 10(comecoCarroX) + 60t(60.tempoCarroX)
		// 90t - 60t = 10
		// 30t = 10
		// t = 10/30
		// t = 1/3 (1/3 de 1 hora = 20minutos)
		
		distanciaPercorridaCarroX = comecoCarroX + velocidadeCarroX * tempoCarroX;
		System.out.println(distanciaPercorridaCarroX);
		distanciaPercorridaCarroY = comecoCarroY + (velocidadeCarroY * tempoCarroY);
		System.out.println(distanciaPercorridaCarroY);
	
	}
	
	

}

o raciocinio esta ali galera, agora como que eu faço pra implementar isso em um algoritimo nao estou dando conta

Como a velocidade continua a mesma, o tempo em que os dois vão percorrer é 10km dividido pela velocidade do carro, que no caso é por hora, então, o resultado final será A horas de viajem para um carro e B horas de viajem para o outro carro.

public class Distancia{
	public static void main(String[] args){
		int velocidadeCarro1 = 60, velocidadeCarro2 = 90, distanciaPercorrida=10;
		float resultadoCarro1 = (float)distanciaPercorrida / velocidadeCarro1, resultadoCarro2 = (float)distanciaPercorrida / velocidadeCarro2;
		System.out.println("O tempo que o carro1 percorreu "+distanciaPercorrida+"km foi "+resultadoCarro1+" horas.");
		System.out.println("O tempo que o carro2 percorreu "+distanciaPercorrida+"km foi "+resultadoCarro2+" horas.");
	}
}
O tempo que o carro1 percorreu 10km foi 0.16666666666666666 horas. O tempo que o carro2 percorreu 10km foi 0.1111111111111111 horas.

Ou seja, o tempo que o carro1 levaria para chegar seria 16 minutos e o carro2, 11 minutos. Se fosse 10000km que eles iriam percorrer, o carro1 demoraria 166 horas e o carro2 111 horas, e assim por diante.
Pode ter que eu tenha errado algo, creio que as horas possam estar erradas, pois não estão na lógica de 0, 60(1h), 120(2h), 180(3h);

Espero ter ajudado!

Eentao cara mas e o seguinte: o exercicio fala que eu digite uma distancia q no caso e 10km/h
ai ele quer como resposta quanto tempo demora para o carro B ficar 10km de distancia do carro A
a resposta dele e 20, meu problema ta sendo com o algoritmo. mas vlw pela ajuda.

I

Conssegui resolver vlw galera pela ajuda.

import java.util.Scanner;

public class Main{

	public static void main(String[] args){
	
		Scanner entradaTeclado = new Scanner(System.in);
		final int carroX = 60;
		final int carroY = 90;
		int distancia = entradaTeclado.nextInt();
		int x = (carroX*distancia) / 30;
		System.out.printf("%d minutos\n", x);
	
	}

}
Criado 9 de julho de 2013
Ultima resposta 23 de jul. de 2013
Respostas 7
Participantes 4