You are on page 1of 17

Coding Exercise 14: Number In Word

public class NumberInWord {

public static void printNumberInWord(int number) {

switch (number) {

case 0:

System.out.println("ZERO");

break;

case 1:

System.out.println("ONE");

break;

case 2:

System.out.println("TWO");

break;

case 3:

System.out.println("THREE");

break;

case 4:

System.out.println("FOUR");

break;

case 5:

System.out.println("FIVE");

break;

case 6:

System.out.println("SIX");

break;

case 7:

System.out.println("SEVEN");

break;

case 8:
System.out.println("EIGHT");

break;

case 9:

System.out.println("NINE");

break;

default:

System.out.println("OTHER");

break;

Coding Exercise 14: Number Of Days In Month

public class NumberOfDaysInMonth {

public static boolean isLeapYear(int year) {

if (year >= 1 && year <= 9999) {

return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);

return false;

public static int getDaysInMonth(int month, int year) {

if (month < 1 || month > 12 || year < 1 || year > 9999) {

return -1;

switch (month) {

case 1: case 3: case 5: case 7: case 8: case 10: case 12:


return 31;

case 4: case 6: case 9: case 11:

return 30;

case 2:

return isLeapYear(year) ? 29 : 28;

default:

return -1;

Coding Exercise 15: Sum Odd

public class SumOddRange {

public static boolean isOdd(int number) {

return (number > 0) && (number % 2 != 0);

public static int sumOdd(int start, int end) {

if (start > 0 && end >= start) {

int sum = 0;

for (int i = start; i <= end; i++) {

if (isOdd(i)) {

sum += i;

return sum;

return -1; // Invalid input


}

Coding Exercise 16: Number Palindrome

public class NumberPalindrome{

public static boolean isPalindrome(int number) {

int reverse = 0;

int originalNumber = number;

while (number != 0) {

int lastDigit = number % 10;

reverse = (reverse * 10) + lastDigit;

number /= 10;

return originalNumber == reverse;

Coding Exercise 17: First and Last Digit Sum

public class FirstLastDigitSum {

public static int sumFirstAndLastDigit( int number){

if (number < 0){

return -1;

}
int lastDigit = number % 10;

while( number >= 10){

number /= 10;

return (number + lastDigit);

} // end of sumFirstAndLastDigit method

}// end of main class

Coding Exercise 18: Even Digit Sum

public class EvenDigitSum {

public static int getEvenDigitSum(int number) {

int sumEvenDigits = 0;

if (number < 0)

return -1;

while (number > 0) {

int evenDigits = number % 10;

if (evenDigits % 2 == 0 )

sumEvenDigits += evenDigits;

number /= 10;

return sumEvenDigits;

}//end of getEvenDigitSum method


}//end of main class

Coding Exercise 19: Shared Digit


public class SharedDigit {

public static boolean hasSharedDigit(int fNumber, int sNumber) {

if ((fNumber >= 10 && fNumber <= 99) && (sNumber >= 10 && sNumber <= 99)) {

return (fNumber / 10 == sNumber / 10 || fNumber / 10 == sNumber % 10 || fNumber % 10 ==


sNumber / 10 || fNumber % 10 == sNumber % 10);

return false;

Coding Exercise 20: Last Digit Checker

public class LastDigitChecker {

public static boolean hasSameLastDigit(int fDigit, int sDigit, int lDigit) {

if (isValid(fDigit) && isValid(sDigit) && isValid(lDigit)) {

int fLastDigit = fDigit % 10;

int sLastDigit = sDigit % 10;

int lLastDigit = lDigit % 10;

return (fLastDigit == sLastDigit || sLastDigit == lLastDigit || fLastDigit == lLastDigit);

return false;

}
public static boolean isValid(int number) {

return (number >= 10 && number <= 1000);

Coding Exercise 21: All Factors

public class FactorPrinter {

public static void printFactors(int number) {

if (number < 1) {

System.out.println("Invalid Value");

} else {

for (int i = 1; i <= number; i++) {

if (number % i == 0) {

System.out.println(i);

Coding Exercise 22: Greatest Common Divisor

public class GreatestCommonDivisor {

public static int getGreatestCommonDivisor(int first, int second) {

if(first < 10 || second < 10) {

return -1;
}

while(first != second) {

if(first > second) {

first -= second;

else {

second -= first;

return first;

Coding Exercise 23: Perfect Number

public class PerfectNumber {

public static boolean isPerfectNumber(int number) {

if(number < 1) {
return false;

int perfect = 0;

for(int i = 1; i < number; i++) {

if(number % i == 0) {

perfect += i;

if(perfect == number) {

return true;

return false;

Coding Exercise 24: Number To Words

public class NumberToWords {

public static void numberToWords(int number){

if(number < 0){


System.out.println("Invalid Value");

else{

int rev = reverse(number);

int count = getDigitCount(number);

while(count > 0) {

int lastDigit = rev % 10;

rev = rev / 10;

count--;

switch (lastDigit) {

case 0:

System.out.println("Zero");

break;

case 1:

System.out.println("One");

break;

case 2:

System.out.println("Two");

break;

case 3:

System.out.println("Three");

break;

case 4:

System.out.println("Four");

break;

case 5:

System.out.println("Five");
break;

case 6:

System.out.println("Six");

break;

case 7:

System.out.println("Seven");

break;

case 8:

System.out.println("Eight");

break;

case 9:

System.out.println("Nine");

break;

default:

System.out.println();

public static int reverse(int number){

int rev = 0;

if(number < 0) {

number = -1 * number;

while (number > 0) {

int lastDigit = number % 10;

rev = lastDigit + rev * 10;

number /= 10;
}

return - rev;

while (number > 0) {

int lastDigit = number % 10;

rev = lastDigit + rev * 10;

number /= 10;

return rev;

public static int getDigitCount(int num){

if(num < 0){

return -1;

else if(num == 0){

return 1;

int count = 0;

while(num > 0){

count++;

num /= 10;

return count;

}
Coding Exercise 25: Flour Pack Problem

public class FlourPacker {

public static boolean canPack(int bigCount, int smallCount, int goal) {

if (bigCount < 0 || smallCount < 0 || goal < 0) {

return false;

bigCount *= 5; // Each big bag contains 5 kilos

if (bigCount + smallCount < goal) {

return false;

} else if (bigCount + smallCount == goal || smallCount >= goal % 5) {

return true;

return false;

Coding Exercise 26: Largest Prime

public class LargestPrime {

public static int getLargestPrime(int number) {

if (number <= 0 || number <= 1) {

return -1;

else {

int largestPrime = 2;
while (largestPrime < number) {

if (number % largestPrime != 0) {

largestPrime++;

} else {

number = number / largestPrime;

return number;

Coding Exercise 27: Diagonal Star

public class DiagonalStar {

/*

public static void main(String [] args){

System.out.println(printSquareStar(5));

System.out.println(printSquareStar(8));

*/

// write your code here

public static void printSquareStar(int number) {

if (number < 5) {

System.out.println("Invalid Value");

} else {

int rowCount;

int columnCount;
int currentRow;

rowCount = columnCount = number;

for (int row = 0; row < rowCount; row++) {

currentRow = row;

for (int column = 0; column < columnCount; column++) {

if (row == 0 || column == 0 || row == rowCount - 1 || column == columnCount - 1 || column


== row ||

column == (rowCount - currentRow - 1)) {

System.out.print("*");

} else {

System.out.print(" ");

System.out.println();

Coding Exercise 28: Input Calculator

import java.util.Scanner;

public class InputCalculator {

// Write your code here

public static void inputThenPrintSumAndAverage() {

Scanner scanner = new Scanner(System.in);

int sum = 0;
int counter = 0;

long average = 0;

while (true) {

boolean isAnInt = scanner.hasNextInt();

if (isAnInt) {

int num = scanner.nextInt();

counter++;

sum += num;

average = Math.round((double) sum / counter);

} else {

break;

scanner.nextLine();// handles input keyboard

System.out.println("SUM = " + sum + " AVG = " + average);

scanner.close();

Coding Exercise 29: Paint Job

public class PaintJob {

// write your code here

public static int getBucketCount(double width, double height, double areaPerBucket, int extraBuckets)
{
if(width <= 0 || height <= 0 || areaPerBucket <= 0 || extraBuckets < 0){

return -1;

int numOfBuckets = (int) Math.ceil((width * height) / areaPerBucket);

numOfBuckets -= extraBuckets;

return numOfBuckets;

}// end of getBucketCount method 1

public static int getBucketCount(double width, double height, double areaPerBucket){

if(width <= 0 || height <= 0 || areaPerBucket <= 0){

return -1;

int numOfBuckets = (int) Math.ceil((width * height) / areaPerBucket);

return numOfBuckets;

}// end of getBucketCount method 2

public static int getBucketCount(double area, double areaPerBucket){

if(area <= 0 || areaPerBucket <= 0){

return -1;

int numOfBuckets = (int) Math.ceil(area / areaPerBucket);

return numOfBuckets;

} // end of getBucketCount method 3

You might also like