Jump to content
Fórum Script Brasil
  • 0

iniciante em javascript


lichtjaar

Question

Oi pessoal recentemente comecei a fazer um curso de javascript

atraves de e-learning,apesar de ler tudo e aprender alguns conceitos

estou com dificuldade na hora de programar e resolver esse exercicio,

alguém poderia me ajudar?

Faça uma classe para representar o aluguel de um quarto (dica: armazene as informações de data e horário de entrada e saída separadas, ou seja, um campo inteiro para o dia de entrada, um campo inteiro para o mês de entrada, um campo inteiro para o ano de entrada, um campo inteiro para o horário de entrada, etc.). Esta classe deve conter métodos para calcular o número de diárias e o valor a ser pago pelo locatário.

Utilize a classe desenvolvida e desenvolva um programa capaz de ler do teclado os dados de um aluguel do quarto e imprima o recibo com o seguinte formato:

========================================

Locatário:

Data e horário de entrada:

Data e horário de saída:

Número de diárias:

Total devido:

========================================

Utilize a classe modificad e faça um programa que leia primeiramente o valor de diária estabelecido por todos os moradores. Após isso, seu programa deve oferecer um menu com as seguintes opções:

1. Registrar entrada em quarto.

2. Registrar saída do quarto.

3. Atualizar o valor da diária

4. Sair

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0
Ok... e o que é que você já conseguiu fazer?

Em qual parte está a dificuldade?

olha eu fiz mais ou menos isso aqui

public class main
{
// instance variables - replace the example below with your own
private int diaentrada;
private int mesentrada;
private int anoentrada;
private int horaentrada;
private int minutoentrada;
private int diasaida;
private int messaida;
private int anosaida;
private int horasaida;
private int minutosaida;
private String locatario;
private int pessoas;
private int diarias;
private double valordiaria;
private double valortotal;
/**
* Constructor for objects of class main
*/
public main()
{
Scanner ler = new Scanner(System.in);
System.out.println(" -----------------------------------------------");
System.out.println(" Cálculo de Hospedagem");
System.out.println(" -----------------------------------------------");
System.out.print( " Digite o nome do locatário: ");
locatario = ler.nextLine();
System.out.print( " Digite o numero de pessoas: ");
pessoas = ler.nextInt();
System.out.print( " Digite o valor da diaria: ");
valordiaria = ler.nextInt();
System.out.println(" -----------------------------------------------");
System.out.println(" Digite os dados da entrada: ");
System.out.print( " Dia: ");
diaentrada = ler.nextInt();
System.out.print( " Mês: ");
mesentrada = ler.nextInt();
System.out.print( " Ano: ");
anoentrada = ler.nextInt();
System.out.print( " Hora: ");
horaentrada = ler.nextInt();
System.out.print( " Minutos: ");
minutoentrada = ler.nextInt();
System.out.println(" -----------------------------------------------");
System.out.println(" Digite os dados da saída: ");
System.out.print( " Dia: ");
diasaida = ler.nextInt();
System.out.print( " Mês: ");
messaida = ler.nextInt();
System.out.print( " Ano: ");
anosaida = ler.nextInt();
System.out.print( " Hora: ");
horasaida = ler.nextInt();
System.out.print( " Minutos: ");
minutosaida = ler.nextInt();
System.out.println("");
calculaDiarias(pessoas, valordiaria, diaentrada, mesentrada, anoentrada, horaentrada, minutoentrada, diasaida, messaida, anosaida, horasaida, minutosaida);
valortotal = valordiaria * pessoas * diarias;
System.out.println(" -----------------------------------------------");
System.out.println(" Locatário: " + locatario);
System.out.println(" Entrada: " + diaentrada + "/" + mesentrada + "/" + anoentrada + " - " + horaentrada + ":" + minutoentrada);
System.out.println(" Saída: " + diasaida + "/" + messaida + "/" + anosaida + " - " + horasaida + ":" + minutosaida);
System.out.println(" Diárias: " + diarias);
System.out.println(" Pessoas: " + pessoas);
System.out.println(" -----------------------------------------------");
System.out.println(" Valor Diária: " + valordiaria);
System.out.println(" Total: " + valortotal);
System.out.println(" -----------------------------------------------");
System.out.println(" Por Pessoa: " + (valortotal / pessoas));
}
public double calculaDiarias(int pessoas, double diariavalor, int diaentrada, int mesentrada, int anoentrada, int horaentrada, int minutoentrada, int diasaida, int messaida, int anosaida, int horasaida, int minutosaida)
{
diarias = 0;
// verificar dias
if (diasaida > diaentrada) {
// caso dia saida maior que dia da entrada, incluir numero de dias
diarias = diarias + (diasaida - diaentrada);
}
// verificar meses
if (messaida > mesentrada) {
// caso mes saida maior que mes da entrada
// verificar dias
if (diasaida > diaentrada) {
// caso dia saida maior que dia entrada, incluir numero de meses
diarias = diarias + ((messaida - mesentrada) * 30);
} else {
// caso dia saida menor, incluir numero de meses + parcial do ultimo mes
diarias = diarias + ((messaida - mesentrada - 1) * 30);
diarias = diarias + (30 - diaentrada + diasaida);
}
}
// verificar anos
if (anosaida > anoentrada) {
// caso ano saida maior que ano entrada
if (messaida > mesentrada) {
// e caso mes saida maior que mes entrada, incluir numero de anos
diarias = diarias + ((anosaida - anoentrada) * 365);
} else {
// mas caso mes saida menor que mes entrada
// verificar dias
if (diasaida >= diaentrada) {
// caso dia saida maior ou igual que dia entrada, incluir numero de anos
diarias = diarias + ((anosaida - anoentrada) * 365);
} else {
// caso dia saida menor, incluir numero de anos e dias
diarias = diarias + ((anosaida - anoentrada - 1) * 365);
diarias = diarias + (30 - diaentrada + diasaida);
// verificar meses
if (messaida < mesentrada) {
// caso mes saida menor que mes entrada, incluir meses
diarias = diarias + ((anosaida - anoentrada- 1) * 365);
} else {
// caso mes igual, incluir 11 meses
diarias = diarias + (11 * 30);
}
}
}
}
if (horasaida >= 12) {
if (horaentrada < 12) {
diarias = diarias + 2;
} else {
diarias = diarias + 1;
}
}
return diarias;
}
}

Edited by fercosmig
add tags
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...