Questões "drag n drop" podem ter mais de uma alternativa?

10 respostas
T

Questões “drag n drop” podem ter mais de uma alternativa na prova de SCJP 6???

10 Respostas

V

geralmente nessas questões tem fragmentos de código a mais do que vc precisa usar

AUser

E ao menos pelo que vi, não é possível ter mais de uma alternativa.

T

Mas eu acho que pode ter mais de uma solução. Veja essa questão drag n drop:

Place the code fragments into position to produce the output "true true false "

import java.util.*;

public class HasNext
{
	public static void main(String... tiago){

		Scanner scanner = new Scanner("One,5,true,3,true,6,7,false");
		scanner.useDelimiter(",");

		while( _____ ){
			if( ________ ){
				System.out.print( ________+" ");
			}else __________;
		}
	}

}

Code Fragments

scanner.hasNextBoolean()
scanner.next()
scanner.nextBoolean()
scanner.hasNext()
________________________________________
Observe que, o seguinte código é solução para o problema:

import java.util.*;

public class HasNext
{
	public static void main(String... tiago){

		Scanner scanner = new Scanner("One,5,true,3,true,6,7,false");
		scanner.useDelimiter(",");

		while( scanner.hasNext() ){
			if( scanner.hasNextBoolean() ){
				System.out.print( scanner.next()+" ");
			}else scanner.next();
		}
	}

}

Porém, este também é:

import java.util.*;

public class HasNext
{
	public static void main(String... tiago){

		Scanner scanner = new Scanner("One,5,true,3,true,6,7,false");
		scanner.useDelimiter(",");

		while( scanner.hasNext() ){
			if( scanner.hasNextBoolean() ){
				System.out.print( scanner.nextBoolean()+" ");
			}else scanner.next();
		}
	}

}

Ou seja, neste caso, deu pra fazer 2 soluções!

V

acho que tb não é possível ter mais de uma alternativa…mas fique esperto porq geralmente tem mais fragmentos de código do que vc vai utilizar para preencher as lacunas.

V
TiagoTC:
Mas eu acho que pode ter mais de uma solução. Veja essa questão drag n drop:

Place the code fragments into position to produce the output "true true false "

import java.util.*;

public class HasNext
{
	public static void main(String... tiago){

		Scanner scanner = new Scanner("One,5,true,3,true,6,7,false");
		scanner.useDelimiter(",");

		while( _____ ){
			if( ________ ){
				System.out.print( ________+" ");
			}else __________;
		}
	}

}

Code Fragments

scanner.hasNextBoolean()
scanner.next()
scanner.nextBoolean()
scanner.hasNext()
________________________________________
Observe que, o seguinte código é solução para o problema:

import java.util.*;

public class HasNext
{
	public static void main(String... tiago){

		Scanner scanner = new Scanner("One,5,true,3,true,6,7,false");
		scanner.useDelimiter(",");

		while( scanner.hasNext() ){
			if( scanner.hasNextBoolean() ){
				System.out.print( scanner.next()+" ");
			}else scanner.next();
		}
	}

}

Porém, este também é:

import java.util.*;

public class HasNext
{
	public static void main(String... tiago){

		Scanner scanner = new Scanner("One,5,true,3,true,6,7,false");
		scanner.useDelimiter(",");

		while( scanner.hasNext() ){
			if( scanner.hasNextBoolean() ){
				System.out.print( scanner.nextBoolean()+" ");
			}else scanner.next();
		}
	}

}

Ou seja, neste caso, deu pra fazer 2 soluções!


acho dificil aparecer uma dessa na prova mas se aparecer provavelmente vira junto uma mensagem do tipo qual seria a solução mais correta que no caso seria o segundo código porq no primeiro vc está usando um scanner.next() mais genérico

palilo

Para o pessoal que já fez a prova, as questões drag and drop são aceitas parciais ou somente quando o código inteiro fica correto?

Nos simulados da whizlabs ele considera questões parciais, só queria ter certeza…

B

São aceitas apenas quando o código inteiro fica correto

T

Achei outro exemplo de uma questão drag-n-drop com mais de uma possível solução:

Chain these constructors to create objects to read a file named "in" and to write to a file named "out".

reader = _____________  _________________ "in" ) );
writer =  _____________  _________________  _______________ "out" ) ) );


Constructors

new FileReader(
new PrintReader(
new BufferedReader(
new BufferedWriter(
new FileWriter(
new PrintWriter(
Observe que as seguintes soluções são válidas:
reader = new BufferedReader( new FileReader( new File("in") ) );
writer = new BufferedWriter( new PrintWriter( new FileWriter("out") ) );
e
reader = new BufferedReader( new FileReader( new File("in") ) );
writer = new PrintWriter( new BufferedWriter( new FileWriter("out") ) );
T

Achei uma que permite 3 respostas!!! :shock: Só espero que o exame aceite todas...

import java.util.*;

public class GenericB<___>
{
  public ___ foo;

  public void setFoo(__ foo){
    this.foo = foo;
  }

  public ___ getFoo(){
    return foo;
  }

  public static void main(String[] args){
    GenericB<Cat> bar = new GenericB<Cat>();
    bar.setFoo( new Cat() );
    Cat c = bar.getFoo();
  }
}

interface Pet{}
class Cat implements Pet{}

Os fragmentos de código são:

? extends Pet
T extends Pet
? implements Pet
T implements Pet
Pet extends T
?
T
<?>
Pet

Resposta 1:

public class GenericB<T>//Mudança aqui
{
  public T foo;

  public void setFoo(T foo){
    this.foo = foo;
  }

  public T getFoo(){
    return foo;
  }

  public static void main(String[] args){
    GenericB<Cat> bar = new GenericB<Cat>();
    bar.setFoo( new Cat() );
    Cat c = bar.getFoo();
  }
}

interface Pet{}
class Cat implements Pet{}

Resposta 2:

public class GenericB<T extends Pet>//Mudança aqui
{
  public T foo;

  public void setFoo(T foo){
    this.foo = foo;
  }

  public T getFoo(){
    return foo;
  }

  public static void main(String[] args){
    GenericB<Cat> bar = new GenericB<Cat>();
    bar.setFoo( new Cat() );
    Cat c = bar.getFoo();
  }
}

interface Pet{}
class Cat implements Pet{}

Resposta 3:

public class GenericB<T extends Cat> //Mudança aqui
{
  public T foo;

  public void setFoo(T foo){
    this.foo = foo;
  }

  public T getFoo(){
    return foo;
  }

  public static void main(String[] args){
    GenericB<Cat> bar = new GenericB<Cat>();
    bar.setFoo( new Cat() );
    Cat c = bar.getFoo();
  }
}

interface Pet{}
class Cat implements Pet{}
Rafael_Marques1

palilo:
Para o pessoal que já fez a prova, as questões drag and drop são aceitas parciais ou somente quando o código inteiro fica correto?

Nos simulados da whizlabs ele considera questões parciais, só queria ter certeza…

tanto drag n drop quando questoes de multipla escolha são consideradas ou certa ou errada, não tem meio termo…

eu nao sei como ficou na 6, mas na versao 5 da prova, é até chato a quantidade de questao drag n drop que caiu =(

Criado 14 de janeiro de 2010
Ultima resposta 16 de fev. de 2010
Respostas 10
Participantes 6