0% found this document useful (0 votes)
384 views

User Defined Methods - 10

The document discusses user defined methods in Java programming. It contains questions about functions/methods, their definitions, parameters, return types, overloading, recursion, calling conventions and more. Multiple choice and fill in the blank questions are included to test understanding of key concepts related to defining and using methods in Java.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
384 views

User Defined Methods - 10

The document discusses user defined methods in Java programming. It contains questions about functions/methods, their definitions, parameters, return types, overloading, recursion, calling conventions and more. Multiple choice and fill in the blank questions are included to test understanding of key concepts related to defining and using methods in Java.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 47

User Defined Methods

Class 10 - APC Understanding Computer Applications with


BlueJ
Fill in the blanks

Question 1

A function can return only one value to its caller program.

Question 2

If a function does not return any value its return type is void.

Question 3

A function indicating the function name, return type along with function arguments is known
as function header/prototype.

Question 4

The variables used to receive the values in function header are known as formal parameters.

Question 5

Method in a Java program resides in package.

Question 6

The entire function body is enclosed under curly brackets.

Question 7

The procedural function performs some actions without returning any output.

Question 8

A function contains header and body.

Question 9
Functions used with same name but different types of arguments are known as function
overloading.

Question 10

A function that is called by itself in its body is known as recursive function.

Tick the correct option

Question 1

The function which changes the state of an object is known as:

1. pure function
2. impure function
3. replace function
4. none of the above

Question 2

Parameters used in function call statement are known as:

1. defined parameter
2. passed parameter
3. actual parameter
4. formal parameter

Question 3

Parameters used in the function definition are called:

1. forward parameter
2. actual parameter
3. formal parameter
4. none of the above

Question 4

The process of calling a function in such a way that the change in the formal arguments reflects
on the actual parameter is known as:

1. call by reference
2. call by value
3. call by method
4. none

Question 5

A function with many definitions is called:

1. multiple function
2. function overloading
3. floating function
4. none

Question 6

A function may be associated with:

1. return
2. call
3. promote
4. none

Question 7

Which of the following type can be used for a non-returnable function?

1. int
2. float
3. double
4. void

Question 8

A function body is enclosed within a pair of:

1. {}
2. []
3. ()
4. under a rectangular box

Question 9

A function is invoked through an:


1. object
2. system
3. parameter
4. none

Write TRUE or FALSE

Question 1

Calling and invoking a function is same.


True

Question 2

A method can use a single return statement.


True

Question 3

Overloading of methods even depends on return type.


False

Question 4

A function cannot be defined without parameters.


False

Question 5

A function body is enclosed within curly brackets.


True

Answer the following

Question 1

Define a function. What is meant by function prototype?

A function or a method is a sequence of statements grouped together and given a name.


This group of statements can be called at any point in the program using its name to
perform a specific task.
First line of function definition that tells about the type of value returned by the function
and the number and type of arguments is called function prototype.
Question 2

What are the two ways of invoking functions?

Two ways of invoking functions are:

1. Pass by value.
2. Pass by reference.

Question 3

When a function returns the value, the entire function call can be assigned to a variable. Do you
agree with the statement?

Yes, when a function returns a value, we can assign the entire function call to a variable.
Below example illustrates the same:

public class Example {

public int sum(int a, int b) {


int c = a + b;
return c;
}

public static void main(String args[]) {


Example obj = new Example();
int x = 2, y = 3;
int z = obj.sum(x, y);
System.out.println(z);
}
}

Question 4

When a function is invoked how many values can be returned from the function?

A function can only return a single value.

Question 5

Debug the errors and rewrite the following function prototypes:

(a) int sum(x,y);

Answer
int sum(int x, int y);
(b) float product(a,int y);

Answer

float product(float a, int y);


(c) float operate(int x, float=3.4);

Answer

float operate(int x, float y);


(d) float sum(int x,y);

Answer

float sum(int x, float y);

Question 6

Write down the main function which calls the following function:

int square(int a)
{
return(a*a);
}

Answer

public static void main(String args[]) {


int sq = square(4);
}

Question 7

What happens when a function is passed by reference? Explain.

Pass by reference means that the arguments of the function are a reference to the original
objects and not a copy. So any changes that the called function makes to the objects are
visible to the calling function. Consider the below example:

class PassByReferenceExample {
public void demoRef(int a[]) {
for (int i = 0; i < 5; i++) {
a[i] = i;
}
}
public static void main(String args[]) {
PassByReferenceExample obj = new PassByReferenceExample();
int arr[] = { 10, 20, 30, 40, 50 };
System.out.println("Before call to demoRef value of arr");
for (int i = 0; i < 5; i++) {
System.out.print(arr[i] + " ");
}
System.out.println();
obj.demoRef(arr);
System.out.println("After call to demoRef value of arr");
for (int i = 0; i < 5; i++) {
System.out.print(arr[i] + " ");
}
}
}

The output of this program is:

Before call to demoRef value of arr


10 20 30 40 50
After call to demoRef value of arr
0 1 2 3 4
Here demoRef changes the values of array a and these changes are reflected in the array in
the main method as well.

Question 8

In what situation does a function return a value?

For a function to return a value, it should have a return type other than void in its function
prototype and it should return a value of the corresponding type using the return
statement in the function body.

Question 9

Differentiate between pure and impure functions.

Pure functions Impure functions

Pure functions take objects and/or primitive data types as Impure functions change the state of
arguments but does not modify the objects. received objects.

Pure functions doesn't have side effects. Impure functions have side effects.
Question 10

Write a function which is used to swap the values of two memory locations.

(a) by using a third variable.

Answer

void swap(int a, int b) {


int c = a;
a = b;
b = c;
System.out.println("a = " + a + "\t" + "b = " + b);
}

(b) without using a third variable.

Answer

void swap(int a, int b) {


a = a + b;
b = a - b;
a = a - b;
System.out.println("a = " + a + "\t" + "b = " + b);
}

Question 11

Differentiate between call by value and call by reference.

Call by value Call by reference

Actual parameters are copied to formal parameters. Formal parameters refer to actual parameters. The
Any changes to formal parameters are not reflected changes to formal parameters are reflected onto
onto the actual parameters. the actual parameters.

All primitive data types are passed using Call by All reference data types like arrays and objects of
value. classes are passed using Call by reference.

Question 12

What are the advantages of defining a method in a program?

Advantages of defining methods in a program are:


1. Methods help to manage the complexity of the program by dividing a bigger
complex task into smaller, easily understood tasks.
2. Methods are useful in hiding the implementation details.
3. Methods help with code reusability.

Question 13

What is meant by function overloading? In what way it is advantageous?

Function overloading is the process of defining functions/methods within a class, that have
the same name but differ in the number and/or the data types of their arguments.
Advantages of function overloading are:

1. Function overloading is one of the ways in which Java implements the object
oriented concept of Polymorphism.
2. With Function overloading, programmers don't have to create and remember
different names for functions doing the same thing for different data types.

Question 14

Define the following:

(a) Return data type

Return data type specifies the type of value that the method should return. It is mentioned
before the method name in the method prototype. It can be any valid primitive or
composite data type of Java. If no value is being returned, it should be void.

(b) Access specifier

Access specifiers determine the type of access to the method. It can be either public, private
or protected.

(c) Parameter list

Parameter list is a comma-separated list of variables of a method along with their


respective data types. The list is enclosed within a pair of parentheses. Parameter list can
be empty if the method doesn't accept any parameters when it is called.

(d) Recursive function

A function that calls itself inside its body is called a Recursive function.

(e) Method signature

Method signature comprises of the method name and the data types of the parameters. For
example, consider the below method:
int sum(int a, int b) {
int c = a + b;
return c;
}

Its method signature is:


sum(int, int)

Question 15

Explain the function of a return statement in Java programming.

A function returns a value through the return statement. Once a return statement is
executed, the program control moves back to the caller function skipping the remaining
statements of the current function if any. A function can have multiple return statements
but only one of them will be executed. For example, consider the below method:

int sum(int a, int b) {


int c = a + b;
return c;
}

It uses a return statement to return a value of int type back to its caller.

Question 16

Differentiate between formal parameter and actual parameter.

Formal parameter Actual parameter

Actual parameters appear in function call


Formal parameters appear in function definition.
statement.

They represent the values received by the called They represent the values passed to the called
function. function.

Question 17

What is the role of the keyword void in declaring functions?

The keyword 'void' signifies that the function doesn't return a value to the calling function.

Question 18
If a function contains several return statements, how many of them will be executed?

A function can have multiple return statements but only one of them will be executed
because once a return statement is executed, the program control moves back to the caller
function skipping the remaining statements of the current function.

Question 19

Which OOP principle implements function overloading?

Polymorphism implements function overloading.

Question 20

How are the following data passed to a function?

 Primitive types
By value
 Reference types
By reference

Give output of the following function definitions and also


write what mathematical operations they carry out

Question 1

void test1(int n)
{
for(int x=1; x<=n; x++)
if(n%x == 0)
System. out.println(x);
}

if 12 is passed to n.

Output

1
2
3
4
6
12
Explanation

This function finds the factors of n.

Question 2

void test2(int a, int b)


{
while( a != b)
{
if ( a > b)
a = a — b;
else
a = b — a;
}
System.out.println(a);
}

if 4 and 17 are passed to the function.

Output

Infinite Loop

Explanation

Initial value of a is 4 and b is 17 as given in the question. As a and b are not equal, condition of
while loop is true, first iteration starts. a is less than b so if condition is false, a = b - a is
executed and a becomes 17 - 4 = 13. Condition of while loop is true so second iteration
starts. Again, if condition is false. This time a becomes 17 - 13 = 4. Like this, the value
of a keeps oscillating between 13 and 4 resulting in an infinite loop.

Question 3

void test3(char c)
{
System.out.println( (int) c);
}

if 'm' is passed to c.

Output

109

Explanation
This function prints the ASCII code of its argument. When 'm' is passed to this function, its
ASCII code which is 109 gets printed as the output.

Question 4

void test4(String x, String y)


{
if(x.compareTo(y) > 0)
System.out.println(x);
else
System.out.println(y);
}

if "AMIT" and "AMAN" are passed to the function.

Output

AMIT

Explanation

The first differing characters of "AMIT" and "AMAN" are 'I' and 'A', respectively. So output of
"AMIT".compareTo("AMAN") will be ASCII Code of 'I' - ASCII Code of 'A' ⇒ 73 - 65 ⇒ 8.
The if condition is true so string x which is "AMIT" gets printed as the output.

Solutions to Unsolved Java Programs

Question 1

Write a program in Java using a method Discount( ), to calculate a single discount or a


successive discount. Use overload methods Discount(int), Discount(int,int) and
Discount(int,int,int) to calculate single discount and successive discount respectively. Calculate
and display the amount to be paid by the customer after getting discounts on the printed price of
an article.
Sample Input:
Printed price: ₹12000
Successive discounts = 10%, 8%
= ₹(12000 - 1200)
= ₹(10800 - 864)
Amount to be paid = ₹9936

import java.util.Scanner;

public class KboatSuccessiveDiscount


{
public void discount(int price) {
System.out.println("Amount after single discount = " +
discount(price, 10));
System.out.println("Amount after successive discount = " +
discount(price, 10, 8));
}

public double discount(int price, int d) {


double priceAfterDisc = price - price * d / 100.0;
return priceAfterDisc;
}

public double discount(int price, int d1, int d2) {


double priceAfterDisc1 = price - price * d1 / 100.0;
double priceAfterDisc2 = priceAfterDisc1 - priceAfterDisc1 *
d2 / 100.0;
return priceAfterDisc2;
}

public static void main(String args[]) {

Scanner in = new Scanner(System.in);

System.out.print("Enter price: ");


int price = in.nextInt();

KboatSuccessiveDiscount obj = new KboatSuccessiveDiscount();

obj.discount(price);
}
}

Output
Question 2

Write a program to input a number. Use a function int Armstrong(int n) to accept the number.
The function returns 1, if the number is Armstrong, otherwise zero(0).
Sample Input: 153
Sample Output: 153 ⇒ 13 + 53 + 33 = 153
It is an Armstrong Number.

import java.util.Scanner;

public class KboatArmstrongNumber


{
public int armstrong(int n) {

int num = n, cubeSum = 0;

while (num > 0) {


int digit = num % 10;
cubeSum = cubeSum + (digit * digit * digit);
num /= 10;
}

if (cubeSum == n)
return 1;
else
return 0;
}
public static void main(String args[]) {

Scanner in = new Scanner(System.in);


System.out.print("Enter Number: ");
int num = in.nextInt();

KboatArmstrongNumber obj = new KboatArmstrongNumber();


int r = obj.armstrong(num);

if (r == 1)
System.out.println(num + " is an Armstrong number");
else
System.out.println(num + " is not an Armstrong number");
}
}

Output

Question 3

Write a program to input a number and check and print whether it is a 'Pronic' number or not.
Use a function int Pronic(int n) to accept a number. The function returns 1, if the number is
'Pronic', otherwise returns zero (0).
(Hint: Pronic number is the number which is the product of two consecutive integers)
Examples:
12 = 3 * 4
20 = 4 * 5
42 = 6 * 7

import java.util.Scanner;

public class KboatPronicNumber


{
public int pronic(int n) {

int isPronic = 0;

for (int i = 1; i <= n - 1; i++) {


if (i * (i + 1) == n) {
isPronic = 1;
break;
}
}

return isPronic;
}

public static void main(String args[]) {

Scanner in = new Scanner(System.in);


System.out.print("Enter the number to check: ");
int num = in.nextInt();

KboatPronicNumber obj = new KboatPronicNumber();


int r = obj.pronic(num);

if (r == 1)
System.out.println(num + " is a pronic number");
else
System.out.println(num + " is not a pronic number");

}
}

Output
Question 4

Write a program to enter a two digit number and find out its first factor excluding 1 (one). The
program then find the second factor (when the number is divide by the first factor) and finally
displays both the factors.
Hint: Use a non-return type function as void fact(int n) to accept the number.
Sample Input: 21
The first factor of 21 is 3
Sample Output: 3, 7
Sample Input: 30
The first factor of 30 is 2
Sample Output: 2, 15

import java.util.Scanner;

public class KboatFactors


{
public void fact(int n) {

if (n < 10 || n > 99) {


System.out.println("ERROR!!! Not a 2-digit number");
return;
}

int i;
for (i = 2; i <= n; i++) {
if (n % i == 0)
break;
}

int sf = n / i;

System.out.println(i + ", " + sf);


}

public static void main(String args[]) {

Scanner in = new Scanner(System.in);

System.out.print("Enter number: ");


int num = in.nextInt();

KboatFactors obj = new KboatFactors();


obj.fact(num);
}
}

Output
Question 5

Write a function fact(int n) to find the factorial of a number n. Include a main class to find the
value of S where:
S = n! / (m!(n - m)!)
where, n! = 1 x 2 x 3 x .......... x n

import java.util.Scanner;

public class KboatFactorial


{
public long fact(int n) {

long f = 1;

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


f *= i;
}

return f;

public static void main(String args[]) {

KboatFactorial obj = new KboatFactorial();


Scanner in = new Scanner(System.in);
System.out.print("Enter m: ");
int m = in.nextInt();
System.out.print("Enter n: ");
int n = in.nextInt();

double s = (double)(obj.fact(n)) / (obj.fact(m) * obj.fact(n -


m));
System.out.println("S=" + s);
}
}

Output

Question 6

Write a program using a function called area() to compute area of the following:
(a) Area of circle = (22/7) * r * r
(b) Area of square= side * side
(c) Area of rectangle = length * breadth
Display the menu to display the area as per the user's choice.

import java.util.Scanner;

public class KboatMenuArea


{
public void area() {
Scanner in = new Scanner(System.in);

System.out.println("Enter a to calculate area of circle");


System.out.println("Enter b to calculate area of square");
System.out.println("Enter c to calculate area of rectangle");
System.out.print("Enter your choice: ");
char choice = in.next().charAt(0);

switch(choice) {
case 'a':
System.out.print("Enter radius of circle: ");
double r = in.nextDouble();
double ca = (22 / 7.0) * r * r;
System.out.println("Area of circle = " + ca);
break;

case 'b':
System.out.print("Enter side of square: ");
double side = in.nextDouble();
double sa = side * side;
System.out.println("Area of square = " + sa);
break;

case 'c':
System.out.print("Enter length of rectangle: ");
double l = in.nextDouble();
System.out.print("Enter breadth of rectangle: ");
double b = in.nextDouble();
double ra = l * b;
System.out.println("Area of rectangle = " + ra);
break;

default:
System.out.println("Wrong choice!");
}
}
}

Output
Question 7

Write a program using method name Glcm(int,int) to find the Lowest Common Multiple (LCM)
of two numbers by GCD (Greatest Common Divisor) of the numbers. GCD of two integers is
calculated by continued division method. Divide the larger number by the smaller, the remainder
then divides the previous divisor. The process is repeated till the remainder is zero. The divisor
then results in the GCD.
LCM = product of two numbers / GCD

import java.util.Scanner;

public class KboatGlcm


{

public void Glcm(int a, int b) {


int x = a, y = b;
while (y != 0) {
int t = y;
y = x % y;
x = t;
}

int lcm = (a * b) / x;

System.out.println("LCM = " + lcm);


}

public static void main(String args[]) {

Scanner in = new Scanner(System.in);


System.out.print("Enter first number: ");
int x = in.nextInt();
System.out.print("Enter second number: ");
int y = in.nextInt();

KboatGlcm obj = new KboatGlcm();


obj.Glcm(x, y);
}
}

Output
Question 8

Write a program in Java to accept a word. Pass it to a function magic(String str). The function
checks the string for the presence of consecutive letters. If two letters are consecutive at any
position then the function prints "It is a magic string", otherwise it prints "It is not a magic
string".
Sample Input: computer
Sample Output: It is not a magic string
Sample Input: DELHI
Sample Output: It is a magic string

import java.util.Scanner;

public class KboatMagicString


{
public void magic(String str) {

boolean isMagicStr = false;


String temp = str.toUpperCase();

for (int i = 0; i < temp.length() - 1; i++) {


if (temp.charAt(i) + 1 == temp.charAt(i + 1)) {
isMagicStr = true;
break;
}
}
if (isMagicStr)
System.out.println("It is a magic string");
else
System.out.println("It is not a magic string");
}

public static void main(String args[]) {

Scanner in = new Scanner(System.in);


System.out.print("Enter word: ");
String word = in.nextLine();

KboatMagicString obj = new KboatMagicString();


obj.magic(word);
}
}

Output

Question 9

Write a program using a method Palin( ), to check whether a string is a Palindrome or not. A
Palindrome is a string that reads the same from the left to right and vice versa.
Sample Input: MADAM, ARORA, ABBA, etc.

import java.util.Scanner;
public class KboatStringPalindrome
{
public void palin() {

Scanner in = new Scanner(System.in);


System.out.print("Enter the string: ");
String s = in.nextLine();

String str = s.toUpperCase();


int strLen = str.length();
boolean isPalin = true;

for (int i = 0; i < strLen / 2; i++) {


if (str.charAt(i) != str.charAt(strLen - 1 - i)) {
isPalin = false;
break;
}
}

if (isPalin)
System.out.println("It is a palindrome string.");
else
System.out.println("It is not a palindrome string.");
}
}

Output
Question 10

Write a program in Java to accept a String from the user. Pass the String to a function
Display(String str) which displays the consonants present in the String.
Sample Input: computer
Sample Output:
c
m
p
t
r

import java.util.Scanner;

public class KboatConsonants


{
public void display(String str) {

String temp = str.toUpperCase();

for (int i = 0; i < temp.length(); i++) {


if (temp.charAt(i) != 'A' &&
temp.charAt(i) != 'E' &&
temp.charAt(i) != 'I' &&
temp.charAt(i) != 'O' &&
temp.charAt(i) != 'U') {
System.out.println(str.charAt(i));
}
}
}

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
System.out.print("Enter string: ");
String s = in.nextLine();

KboatConsonants obj = new KboatConsonants();


obj.display(s);
}
}

Output
Question 11

Write a program in Java to accept a String from the user. Pass the String to a function
Change(String str) which displays the first character of each word after changing the case (lower
to upper and vice versa).
Sample Input: Delhi public school
Sample Output:
d
P
S

import java.util.Scanner;

public class KboatStringChange


{
public void change(String str) {

if (str == null || str.length() == 0) {


System.out.println("Got a null or empty String");
return;
}

/*
* We need to trim the string to
* avoid StringIndexOutOfBoundsException
* error due to spaces at the end of the
* string.
* If we don't do str.trim() this program
* will give error for strings like
* " ICSE computer applications "
*/

String temp = str.trim();


if (temp.length() == 0) {
System.out.println("Input string has only whitespaces");
return;
}

int idx = 0;
do {
char ch = temp.charAt(idx);

if (Character.isUpperCase(ch))
ch = Character.toLowerCase(ch);
else if (Character.isLowerCase(ch))
ch = Character.toUpperCase(ch);

System.out.println(ch);

idx = temp.indexOf(' ', idx) + 1;

/*
* There can be more than one space
* between words of the string so we
* keep incrementing idx till we find
* a non-whitespace character
*/
while (Character.isWhitespace(temp.charAt(idx)))
idx++;

/*
* If no space is found after idx
* indexOf method will return -1. Adding 1 to
* it will make idx zero. So condition of
* do-while loop is idx != 0.
*/

} while(idx != 0);

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
System.out.print("Enter a string: ");
String s = in.nextLine();

KboatStringChange obj = new KboatStringChange();


obj.change(s);
}
}

Output

Question 12

Write a program in Java to accept the name of an employee and his/her annual income. Pass the
name and the annual income to a function Tax(String name, int income) which displays the name
of the employee and the income tax as per the given tariff:

Annual Income Income Tax

Up to ₹2,50,000 No tax
Annual Income Income Tax

₹2,50,001 to ₹5,00,000 10% of the income exceeding ₹2,50,000

₹5,00,001 to ₹10,00,000 ₹30,000 + 20% of the amount exceeding ₹5,00,000

₹10,00,001 and above ₹50,000 + 30% of the amount exceeding ₹10,00,000

import java.util.Scanner;

public class KboatEmployeeTax


{
public void tax(String name, int income) {

double tax;
if (income <= 250000)
tax = 0;
else if (income <= 500000)
tax = (income - 250000) * 0.1;
else if (income <= 1000000)
tax = 30000 + ((income - 500000) * 0.2);
else
tax = 50000 + ((income - 1000000) * 0.3);

System.out.println("Name: " + name);


System.out.println("Income Tax: " + tax);
}

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
System.out.print("Enter name: ");
String n = in.nextLine();
System.out.print("Enter annual income: ");
int i = in.nextInt();

KboatEmployeeTax obj = new KboatEmployeeTax();


obj.tax(n, i);
}
}

Output
Question 13

Write a program in Java to accept a String from the user. Pass the String to a function
First(String str) which displays the first character of each word.
Sample Input : Understanding Computer Applications
Sample Output:
U
C
A

import java.util.Scanner;

public class KboatFirstCharacter


{
public void first(String str) {

if (str == null || str.length() == 0) {


System.out.println("Got a null or empty String");
return;
}

//Display first character of first word


System.out.println(str.charAt(0));

for (int i = 1; i < str.length() - 1; i++) {


if (str.charAt(i) == ' ')
System.out.println(str.charAt(i + 1));
}

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
System.out.print("Enter a string: ");
String s = in.nextLine();

KboatFirstCharacter obj = new KboatFirstCharacter();


obj.first(s);
}
}

Output

Question 14

Write a program to accept 10 numbers in a Single Dimensional Array. Pass the array to a
function Search(int m[], int ns) to search the given number ns in the list of array elements. If the
number is present, then display the message 'Number is present' otherwise, display 'number is not
present'.

import java.util.Scanner;

public class KboatSDASearch


{
public void search(int m[], int ns) {
boolean found = false;
for (int i = 0; i < m.length; i++) {
if (m[i] == ns) {
found = true;
break;
}
}
if (found)
System.out.println("Number is present");
else
System.out.println("Number is not present");
}

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
int arr[] = new int[10];
System.out.println("Enter 10 numbers");

for (int i = 0; i < arr.length; i++) {


arr[i] = in.nextInt();
}

System.out.print("Enter number to search: ");


int num = in.nextInt();

KboatSDASearch obj = new KboatSDASearch();


obj.search(arr, num);
}
}

Output
Question 15

Write a class with the name Area using function overloading that computes the area of a
parallelogram, a rhombus and a trapezium.

Formula:

Area of a parallelogram (pg) = base * ht

Area of a rhombus (rh) = (1/2) * d1 * d2


(where, d1 and d2 are the diagonals)
Area of a trapezium (tr) = (1/2) * ( a + b) * h
(where a and b are the parallel sides, h is the perpendicular distance between the parallel sides)

import java.util.Scanner;

public class Area


{
public double area(double base, double height) {
return base * height;
}

public double area(double c, double d1, double d2) {


return c * d1 * d2;
}

public double area(double c, double a, double b, double h) {


return c * (a + b) * h;
}

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
Area obj = new Area();

System.out.print("Enter base of parallelogram: ");


double base = in.nextDouble();
System.out.print("Enter height of parallelogram: ");
double ht = in.nextDouble();
System.out.println("Area of parallelogram = " + obj.area(base,
ht));

System.out.print("Enter first diagonal of rhombus: ");


double d1 = in.nextDouble();
System.out.print("Enter second diagonal of rhombus: ");
double d2 = in.nextDouble();
System.out.println("Area of rhombus = " + obj.area(0.5, d1,
d2));

System.out.print("Enter first parallel side of trapezium: ");


double a = in.nextDouble();
System.out.print("Enter second parallel side of trapezium: ");
double b = in.nextDouble();
System.out.print("Enter height of trapezium: ");
double h = in.nextDouble();
System.out.println("Area of trapezium = " + obj.area(0.5, a,
b, h));
}
}

Output

Question 16

Write a class with the name Perimeter using function overloading that computes the perimeter of
a square, a rectangle and a circle.

Formula:

Perimeter of a square = 4 * s
Perimeter of a rectangle = 2 * (l + b)

Perimeter of a circle = 2 * (22/7) * r

import java.util.Scanner;

public class Perimeter


{
public double perimeter(double s) {
return 4 * s;
}

public double perimeter(double l, double b) {


return 2 * (l + b);
}

public double perimeter(int c, double pi, double r) {


return c * pi * r;
}

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
Perimeter obj = new Perimeter();

System.out.print("Enter side of square: ");


double side = in.nextDouble();
System.out.println("Perimeter of square = " +
obj.perimeter(side));

System.out.print("Enter length of rectangle: ");


double l = in.nextDouble();
System.out.print("Enter breadth of rectangle: ");
double b = in.nextDouble();
System.out.println("Perimeter of rectangle = " +
obj.perimeter(l, b));

System.out.print("Enter radius of circle: ");


double r = in.nextDouble();
System.out.println("Perimeter of circle = " + obj.perimeter(2,
3.14159, r));
}
}

Output
Question 17

Design a class overloading and a function display( ) as follows:

1. void display(String str, int p) with one String argument and one integer argument. It
displays all the uppercase characters if 'p' is 1 (one) otherwise, it displays all the
lowercase characters.
2. void display(String str, char chr) with one String argument and one character argument. It
displays all the vowels if chr is 'v' otherwise, it displays all the alphabets.

import java.util.Scanner;

public class Overloading


{
void display(String str, int p) {
for (int i = 0; i < str.length(); i++) {
if (p == 1 && Character.isUpperCase(str.charAt(i))) {
System.out.println(str.charAt(i));
}
else if (p != 1 && Character.isLowerCase(str.charAt(i))) {
System.out.println(str.charAt(i));
}
}
}

void display(String str, char chr) {


String t = str.toUpperCase();
for (int i = 0; i < t.length(); i++) {
if (chr != 'v' && Character.isLetter(str.charAt(i)))
System.out.println(str.charAt(i));
else if (t.charAt(i) == 'A' ||
t.charAt(i) == 'E' ||
t.charAt(i) == 'I' ||
t.charAt(i) == 'O' ||
t.charAt(i) == 'U') {
System.out.println(str.charAt(i));
}
}
}

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
System.out.print("Enter string: ");
String s = in.nextLine();

Overloading obj = new Overloading();


System.out.println("p=1");
obj.display(s, 1);
System.out.println("\np!=1");
obj.display(s, 0);
System.out.println("\nchr='v'");
obj.display(s, 'v');
System.out.println("\nchr!='v'");
obj.display(s, 'u');
}
}

Output
Question 18

Design a class overloading a function calculate() as follows:

1. void calculate(int m, char ch) with one integer argument and one character argument. It
checks whether the integer argument is divisible by 7 or not, if ch is 's', otherwise, it
checks whether the last digit of the integer argument is 7 or not.
2. void calculate(int a, int b, char ch) with two integer arguments and one character
argument. It displays the greater of integer arguments if ch is 'g' otherwise, it displays the
smaller of integer arguments.

import java.util.Scanner;

public class KboatCalculate


{
public void calculate(int m, char ch) {
if (ch == 's') {
if (m % 7 == 0)
System.out.println("It is divisible by 7");
else
System.out.println("It is not divisible by 7");
}
else {
if (m % 10 == 7)
System.out.println("Last digit is 7");
else
System.out.println("Last digit is not 7");
}
}

public void calculate(int a, int b, char ch) {


if (ch == 'g')
System.out.println(a > b ? a : b);
else
System.out.println(a < b ? a : b);
}

public static void main(String args[]) {


Scanner in = new Scanner(System.in);
KboatCalculate obj = new KboatCalculate();

System.out.print("Enter a number: ");


int n1 = in.nextInt();
obj.calculate(n1, 's');
obj.calculate(n1, 't');
System.out.print("Enter first number: ");
n1 = in.nextInt();
System.out.print("Enter second number: ");
int n2 = in.nextInt();
obj.calculate(n1, n2, 'g');
obj.calculate(n1, n2, 'k');

}
}

Output

Question 19

Write a menu driven program using a method Number() to perform the following tasks:

1. Accept a number from the user and display it in its Binary Equivalents.
For example:
Sample Input: (21)10
Sample Output: (10101)2
2. Accept a binary number from the user and display it in its Decimal Equivalents.
For example:
Sample Input: (11101)2
Sample Output: (29)10
import java.util.Scanner;

public class KboatBinary


{
public void number() {
Scanner in = new Scanner(System.in);
System.out.println("Enter 1 to display number in Binary
Equivalent");
System.out.println("Enter 2 to display number in Decimal
Equivalent");
System.out.print("Enter your choice: ");
int c = in.nextInt();
in.nextLine();

switch (c) {
case 1:
System.out.print("Enter a decimal number: ");
int num = in.nextInt();
System.out.println("Binary Equivalent");
System.out.println(Integer.toBinaryString(num));
break;

case 2:
System.out.print("Enter a binary number: ");
String bin = in.nextLine();
System.out.println("Decimal Equivalent");
System.out.println(Integer.parseInt(bin, 2));
break;

default:
System.out.println("Incorrect Choice");
break;
}
}
}

Output

You might also like