Ajuda c/ boolean - com setar este tipo de dado?

Oi galera, comecei a estudar linguagens de programação há pouco tempo, estou estudando por uma apostila que baixei na net, “Introdução à Linguagem Java” por Chistian Cleber Masdeval Braz, alguém conhece essa apostila?, bom, a cada capitulo tem aguns exercicios e justamente em um desses que eu não consigo concluir, pede pra criar um programa, dando valores a dois itens, calcular uma taxa e somar essa taxa ao valor dos itens, até aqui eu fui bem mas faltou criar uma variavel do tipo boolean em que se o resultado fosse maior que 10 deveria escrever na tela a mensagem “Muito Caro”, mas eu não sei como fazer isso, alguém pode me ajudar?
P.S: pede-se para não utilizar “if”.

Desde já agradeço.

JavaE,

não precisa criar nenhuma variavel basta depois de fazer o calculo colocar o seguinte if

if (valor > 10){
System.out.println("Muito Caro");

}

sendo "valor" o numero que voce somou com a taxa.

bem simples não!

[quote=phfcosta]JavaE,

não precisa criar nenhuma variavel basta depois de fazer o calculo colocar o seguinte if

if (valor > 10){
System.out.println("Muito Caro");

}

sendo "valor" o numero que voce somou com a taxa.

bem simples não![/quote]

Bem, sem utilizar o if só utilizando o while(ou outra expressão condicional != if() ). Não existe outra maneira de o fazer sem ser recorrendo ao uso de expressões condicionais. Posta o teu código para nós entendermos melhor e manipularmos a estrutura de modo a que faça o sugerido pelo enunciado.

Talvez ficasse semelhante a isto:


while(valor < 10) {

//soma das taxas etc...

}

System.out.println("Valor muito alto");

Espero ter sido útil :wink:

Não entendi bem o que a variavel boolean tem a ver, afinal o valor (10) é um inteiro então deveria ser uma variavel int ou algo semelhante.

Sobre como fazer sem usar o if, pode ser assim:

[code]int valor = //soma

System.out.println(valor > 10 ? “Muito Caro” : “Barato”);[/code]

Exacto, penso que é desnecessário usar uma variável boolean para este efeito. No entanto, a intenção do enunciado é que o programador consiga criar uma relação entre esse mesmo valor inteiro com um valor de verdade(boolean)…ou seja, fazer o utilizador TESTAR o valor inteiro e apartir daí atribuir um valor de verdade á variável boolean. Enfim, existem exercícios bem melhores para se trabalhar com booleans naquilo que é o contexto básico de programação.

e aê pessoal, obrigado pela ajuda, com ela pude então conseguir um resultado.

o codigo que escrevi foi esse:

class PrecoProduto
{
public static void main(String [] arg)
{
double itemClasseA = 2.95;
double itemClasseB = 3.50;
{
System.out.println("O cafe custa R$ “+itemClasseB+” e o leite custa R$ "+itemClasseA);
}
double custoTotal = itemClasseA+itemClasseB;
{
System.out.println("Total R$ "+custoTotal);
}
final double Taxa = 8.25;
double custoTaxa = custoTotal*Taxa/100;
{
System.out.println("Taxa em R$ "+custoTaxa);
}
double itemATx = itemClasseA+custoTaxa,
itemBTx = itemClasseB+custoTaxa;
double novoCusto = itemATx+itemBTx;
[color=red] System.out.println(novoCusto >= 10 ? “Muito Caro” : “Barato”); [/color]
}
}

já com a setagem corrigida, obrigado mais uma vez, muito bom este forum.

Ola!!
Cara eu tb sou iniciante e tiro minhas duvidas aqui, mas naum eh isso q vim falar, na verdade o interessante eh vc entender o q foi feito e naum apenas copiar e colar.
Vc ja tinha visto esses operadores (’?’, ‘:’)?

[quote=FernandoGrilo]Ola!!
Cara eu tb sou iniciante e tiro minhas duvidas aqui, mas naum eh isso q vim falar, na verdade o interessante eh vc entender o q foi feito e naum apenas copiar e colar.
Vc ja tinha visto esses operadores (’?’, ‘:’)?
[/quote]

fala aê FernandoGrilo, ver eu já vi, mas o que me ajudou mesmo foi a ajuda dos amigos daqui do forum, comecei estudar algoritimo e linguagem pascal, como eu não achei um compilador dessa linguagem, parti pro java, que é bem mais facil.
valeu!! continue o seus estudos aí, que continuarei com os meus aqui.

[quote=JavaE]e aê pessoal, obrigado pela ajuda, com ela pude então conseguir um resultado.

o codigo que escrevi foi esse:

class PrecoProduto
{
public static void main(String [] arg)
{
double itemClasseA = 2.95;
double itemClasseB = 3.50;
{
System.out.println("O cafe custa R$ “+itemClasseB+” e o leite custa R$ "+itemClasseA);
}
double custoTotal = itemClasseA+itemClasseB;
{
System.out.println("Total R$ "+custoTotal);
}
final double Taxa = 8.25;
double custoTaxa = custoTotal*Taxa/100;
{
System.out.println("Taxa em R$ "+custoTaxa);
}
double itemATx = itemClasseA+custoTaxa,
itemBTx = itemClasseB+custoTaxa;
double novoCusto = itemATx+itemBTx;
[color=red] System.out.println(novoCusto >= 10 ? “Muito Caro” : “Barato”); [/color]
}
}

já com a setagem corrigida, obrigado mais uma vez, muito bom este forum.
[/quote]

bom essa foi uma maneira de fazer isto, mas acabei de conseguir fazer exatamente o que o enunciado pede:

[color=red] boolean muitoCaro= novoCusto > 10 == true;
System.out.println(muitoCaro ? “Muito Caro” : “Barato”);
[/color]

esta aí a variavel boolean pedida no enunciado, com valor true tendo como resultado “Barato”, se modificar o valor para false o resultado será “Muito Caro”. bom ajuda de vocês me fez ver como setar corretamente. mais uma vez obrigado a todos.

boolean muitoCaro= novoCusto > 10 == true; 

Excelente :slight_smile: não sabia que era possível este tipo de sintaxe. Estamos sempre a aprender eheh

cumprimentos.

[quote=SrFabio] boolean muitoCaro= novoCusto > 10 == true;

Excelente :slight_smile: não sabia que era possível este tipo de sintaxe. Estamos sempre a aprender eheh

cumprimentos.[/quote]

fala aê SrFabio td blz, mas está certo, não está? se não tiver, será algum bug? a versão do jdk que tenho é a 1.6.0_03
quem puder testar isso e postar os resultados agradeço.

Está correctíssimo, testei no 1.5 e deu certo também. Eu é que não conhecia essa sintaxe…muito bem implementada realmente :slight_smile:

Cumprimentos.