Porquê o boolean neste metodo

9 respostas
CondeGil

isto hj ta imapravel xD

Implemente o método estático boolean geraNumeros(int inf, int sup) da classe Grupo2, que mostra no
standard output todos os números compreendidos entre inf e sup que resultam do produto de três números naturais
consecutivos.
Ex: para inf=50 e sup=230 temos como output 60 120 210, pois:
345=60, 456 = 120 e 567 = 210

eu tenho uma ideia de como resolver isso, so nao percebo pq q o meto é boolean, e sendo boolean nao vai ter de retornar um true ou false?

9 Respostas

renzonuccitelli

Pode ser o que vc kiser. Poderia retornar false se não encontrou nenhum número nesse intervalo que respeita as condições, e verdadeiro caso contrário.

CondeGil

pois, mas segundo o enunciado o output nao é true ou false, e sim um valor numerico! e isso é q me incomoda, nao percebo a intenção, eu até ja fiz um metodo q faz o q é pedido, mas nao é boolean, é um string! se o meter boolean ele da erro (como é logico)

DiegoMau

CondeGil posta o código aqui pra ver se tem como eu ajudar

jcmird

o garoto posta o codigo aiiiiiiiiiiii … desse jeito fica dificil para analisar o codigo …

CondeGil

não ha codigo nenhum, a questao é essa, so assim! vou copiar todo o grupo:

II Grupo (10 Valores) 1) [3] Implemente o método estático boolean geraNumeros(int inf, int sup) da classe Grupo2, que mostra no standard output todos os números compreendidos entre inf e sup que resultam do produto de três números naturais consecutivos. Ex: para inf=50 e sup=230 temos como output 60 120 210, pois: 3*4*5=60, 4*5*6 = 120 e 5*6*7 = 210 2) [4] Implemente o método estático int[] indiceInfSup(int[] v, int dim ) da classe Grupo2, que recebe o array v contendo 0 ́s ou 1 ́s e uma dada dimensão dim. Este método devolve um novo array de dois inteiros, a preencher com os índices de início e fim da última sequência de 1 ́s que seja de dimensão dim. O método devolve null caso não exista nenhuma sequência de 1 ́s da dimensão pretendida. Exemplo: int[] v = { 0,1,1,0,0,1,1,1,0,1,1,1,1,1 }; int[] a = Grupo2.indiceInfSup(v,3); // a={5,7} 3) [3] Implemente o método static boolean testaPadrao1(int[][] matrix), da classe Grupo2, que verifica se o array bidimensional de inteiros matrix contém um determinado padrão definido por duas linhas diagonais: A linha diagonal do canto superior esquerdo para o canto inferior direito apresenta valores em sequência crescente. A linha diagonal do canto inferior esquerdo para o canto superior direito apresenta valores em sequência decrescente. Todos os outros valores da matriz são desprezados. O método retorna true se o padrão se verificar e false, caso contrário. Exemplo: Dada a matriz teste cujo conteúdo está representado na seguinte figura: 12 0 9 1 3 13 4 2 4 7 15 0 10 1 5 20 A linha de código System.out.prinln(testaPadrao1(teste)) tem como output: true

a minha duvida é apenas na primeira questao, e a class Grupo 2 nao existe, é suposto eu criala com esses metodos!
o q eu fiz foi um metodo gerarNumero mas do tipo String, e assim funciona, agora boolean nao dá, pq boolean tem de retornar verdadeiro ou falso.
caso sirva para alguma coisa ca vai o q fiz:

public class test {

	static String geraNumeros(int inf, int sup){
		int i=0, d=-1;
		String res = new String();
		res = "Sem Resultado";
		while (i*(i+1)*(i+2)<=sup){
			if (i*(i+1)*(i+2) >= inf && i*(i+1)*(i+2)<= sup){
				if (d==-1){
					res="";
					d=0;
				}
				res=res+(i*(i+1)*(i+2)+" ");
			}
		i++;
		}
		return res;
	}
}
britoboy

CondeGil:
[3] Implemente o método estático boolean geraNumeros(int inf, int sup) da classe Grupo2, que mostra no
standard output
todos os números compreendidos

Se o objetivo é jogar no output o resultado, não há razão para haver retorno nesse metodo (na verdade, nem pra haver método, bastaria enfiar no main()) - questão mal formulada, só isso. (cheira a copy-paste)

rodrigo.bossini
Se o objetivo é jogar no output o resultado, não há razão para haver retorno nesse metodo (na verdade, nem pra haver método, bastaria enfiar no main()) - questão mal formulada, só isso.

Dependendo do projeto e de sua complexidade pode haver a necessidade sim de criar um método específico para tal tarefa, afinal, essa é a função dos métodos não?

Veja o trecho de código abaixo, acho que fica bem claro a utilidade do retorno booleano:

class Grupo2{

	public static boolean geraNumeros (int inf, int sup){

		boolean algumNumeroNoIntervalo = false;
		int numero;

		for ( int i = 1; i < sup/2; i++){
			numero = i* (i+1) * (i+2);
			
			if ( numero  >= inf && numero <=sup){
				algumNumeroNoIntervalo = true;
				System.out.printf ("%d\t", numero);
			}
			
		}
		System.out.println ();
		if ( algumNumeroNoIntervalo) return true; return false;
						
	}

	
	public static void main (String args[]){
		System.out.println (geraNumeros (50,230) ? "\nSim, havia numeros no intervalo especificado" : "Nao, nao havia qualquer numero no intervalo especificado");
	}
}

Abraços

britoboy

Sorry, não me covenceu… alem disso o quesito não pedia mensagem no caso de nao haver numero

rodrigo.bossini

Qual a dúvida?

Criado 11 de janeiro de 2009
Ultima resposta 11 de jan. de 2009
Respostas 9
Participantes 6