Solved

last digit ending with 7

Posted on 2014-10-10
9
109 Views
Last Modified: 2014-10-11
Hi,
I am trying below challenge

http://codingbat.com/prob/p125339

I wrote as below

public boolean lastDigit(int a, int b) {
if(a%10==7 && b%7==7){
return true;
}
return false;

 
}


I have test cases failing as below
Expected      Run            
lastDigit(7, 17) → true      false      X         
lastDigit(6, 17) → false      false      OK         
lastDigit(3, 113) → true      false      X         
lastDigit(114, 113) → false      false      OK         
lastDigit(114, 4) → true      false      X         
lastDigit(10, 0) → true      false      X         
lastDigit(11, 0) → false      false      OK         


How to improve and fix my program
0
Comment
Question by:gudii9
9 Comments
 
LVL 7

Author Comment

by:gudii9
Comment Utility
public boolean lastDigit(int a, int b) {
if(a%10==7&& b%10==7){
return true;
}

if(a%10==7&& b%10==7){
return true;
}

if(a%10==1&& b%10==1){
return true;
}

if(a%10==2&& b%10==2){
return true;
}

if(a%10==3&& b%10==3){
return true;
}

if(a%10==7&& b%10==7){
return true;
}

if(a%10==4&& b%10==4){
return true;
}

if(a%10==5&& b%10==5){
return true;
}

if(a%10==6&& b%10==6){
return true;
}

if(a%10==8&& b%10==8){
return true;
}

if(a%10==9&& b%10==9){
return true;
}

if(a%10==0&& b%10==0){
return true;
}
return false;

  
}

Open in new window



Expected      Run            
lastDigit(7, 17) → true      true      OK         
lastDigit(6, 17) → false      false      OK         
lastDigit(3, 113) → true      true      OK         
lastDigit(114, 113) → false      false      OK         
lastDigit(114, 4) → true      true      OK         
lastDigit(10, 0) → true      true      OK         
lastDigit(11, 0) → false      false      OK         

Actually i modifed the code but still looks lengthy code. Please advise how to simplify and improve my code above
0
 
LVL 27

Expert Comment

by:rrz
Comment Utility
What is wrong with the solution given when you click on the "Show Solution" button(at posted link)?
0
 
LVL 84

Accepted Solution

by:
ozo earned 350 total points
Comment Utility
return a%10 == b%10;
0
 
LVL 7

Author Comment

by:gudii9
Comment Utility
I would like to work the solution myself and improve and correct my own mistakes. I am not looking at the solutions at this point as they seems too complex for me at times.
0
Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

 
LVL 84

Expert Comment

by:ozo
Comment Utility
return (a-b)%10 == 0;
0
 
LVL 7

Author Comment

by:gudii9
Comment Utility
How both below statements are same? Please advise

return(a % 10 == b % 10);
 

return (a-b)%10 == 0;
0
 
LVL 26

Assisted Solution

by:dpearson
dpearson earned 150 total points
Comment Utility
a % 10 returns the remainder when you divide by 10.  So "15 % 10" is 5.

So (a % 10 == b % 10) is true when both a and b have the same remainder when divided by 10.  E.g 25 and 15.

(a - b) % 10 returns the remainder when you divide the difference between the two values by 10.

So if we go back to our example (25 and 15) then the difference is 10 and if we figure out the remainder when we divide that by 10, we'll get 0.

So they're just 2 equivalent ways of saying the same thing.
For my money "a % 10 == b % 10" is the clearer of the two.

Doug
0
 
LVL 7

Author Comment

by:gudii9
Comment Utility
So if we go back to our example (25 and 15)

Open in new window


instead if i pass (15 and 25) difference is -10(not positive number)
still the reminder does not effect right? it is still 0.

Please advise
0
 
LVL 84

Expert Comment

by:ozo
Comment Utility
There are differences in how various languages handle % for negative integers, but all of them should agree when the answer is 0
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Whether you’re a college noob or a soon-to-be pro, these tips are sure to help you in your journey to becoming a programming ninja and stand out from the crowd.
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now