About Question enthuware.ocajp.i.v7.2.1042 :

All the posts and topics that contain only an error report will be moved here after the error is corrected. This is to ensure that when users view a question in ETS Viewer, the "Discuss" button will not indicate the presence of a discussion that adds no value to the question.

Moderators: Site Manager, fjwalraven

Post Reply
smearaDubha
Posts: 6
Joined: Wed Apr 17, 2013 6:35 am
Contact:

About Question enthuware.ocajp.i.v7.2.1042 :

Post by smearaDubha »

Hi

I have a question in relation to this line :

int j = (i*30 - 2)/100;

I don't understand how this is allowed by the compiler. i is 7 so I thought it would be :

(7*30 - 2)/100 = 2.08

However the compiler makes it equal to 2.

How can this be?

Great questions and forum by the way :D

Richie

admin
Site Admin
Posts: 10384
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: About Question enthuware.ocajp.i.v7.2.1042 :

Post by admin »

When both the operands of the division operator are int, it performs an integer division i.e. it just truncates the decimal part. In this case, i*30 - 2 is an int and so is 100. So (i*30 - 2)/100 will result in 2.

HTH,
Paul.

smearaDubha
Posts: 6
Joined: Wed Apr 17, 2013 6:35 am
Contact:

Re: About Question enthuware.ocajp.i.v7.2.1042 :

Post by smearaDubha »

Thank you Paul, good to know

Richie

geozak
Posts: 1
Joined: Thu Jan 18, 2018 1:07 pm
Contact:

Re: About Question enthuware.ocajp.i.v7.2.1042 :

Post by geozak »

Shouldn't the explanation be:
Remember that a labeled break or continue statement must always exist inside the block where the label is declared. Here, if(j == 4) break POINT1; is a labelled break that is occurring in the second loop while the label POINT1 is declared for the first loop.

Instead of:
Remember that a labeled break or continue statement must always exist inside the loop where the label is declared. Here, if(j == 4) break POINT1; is a labelled break that is occurring in the second loop while the label POINT1 is declared for the first loop.

admin
Site Admin
Posts: 10384
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: About Question enthuware.ocajp.i.v7.2.1042 :

Post by admin »

You can't have a labeled break or continue unless there is a loop so they must be within a loop and not just any kind of block.

maria_maria
Posts: 10
Joined: Wed Mar 03, 2021 5:39 am
Contact:

Re: About Question enthuware.ocajp.i.v7.2.1042 :

Post by maria_maria »

Code: Select all

Consider the following method which is called with an argument of 7:

public void method1(int i, double d){
   int j = (i*30 - 2)/100;
   
   POINT1 : for(;j<10; j++){
       var flag  = false;
       while(!flag){
	if(d > 0.5) break POINT1;
       }
   }
  while(j>0){
     System.out.println(j--);
     if(j == 4) break POINT1;
   }
}
What will it print?
Isn't the premise wrongly worded method which is called with an argument of 7 when the method takes two params?
Isn't this the point where all goes haywire and doesn't compile regardless of the code inside the method?

admin
Site Admin
Posts: 10384
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: About Question enthuware.ocajp.i.v7.2.1042 :

Post by admin »

Yes, but what you have quoted is not the code presented in the question. The code given in the question is :

Code: Select all

public void method1(int i){
   int j = (i*30 - 2)/100;
...

maria_maria
Posts: 10
Joined: Wed Mar 03, 2021 5:39 am
Contact:

Re: About Question enthuware.ocajp.i.v7.2.1042 :

Post by maria_maria »

I've attached a print-screen:
Attachments
this is the question I see on my EnthuWare exam
this is the question I see on my EnthuWare exam
Screenshot from 2021-04-09 09-50-29.png (61.5 KiB) Viewed 3750 times

admin
Site Admin
Posts: 10384
Joined: Fri Sep 10, 2010 9:26 pm
Contact:

Re: About Question enthuware.ocajp.i.v7.2.1042 :

Post by admin »

Ok, I found the issue. Since the thread titled mentioned OCA, I checked the OCA 8 questions bank (where the code was correct) while you are using OCP 11 question bank, where it is incorrect. For some reason, this was changed in OCP 11 question bank.
Fixed now.
thank you for your feedback!

Post Reply

Who is online

Users browsing this forum: No registered users and 7 guests