Week 03 : Programming Assignments - NPTEL >> Programming In Java - 2025
Week 03 : Programming Assignment 1
Solution :
import java.util.*;
public class W03_P1 {
public static void main(String[] args) {
Scanner inr = new Scanner(System.in);
int n = inr.nextInt();
// Start
// Upper part of the pattern
for (int i = n; i >= 1; i--) {
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
// Lower part of the pattern
for (int i = 2; i <= n; i++) {
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
if (i != n) {
System.out.println();
}
}
// End
}
}
Week 03 : Programming Assignment 2
Solution :
import java.util.Scanner;
public class W03_P2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
//Start
// Use a for loop to find the factors of the number
for (int i = 1; i <= num; i++) {
if (num % i == 0) {
System.out.print(i + " ");
}
}
//End
}
}
Week 03 : Programming Assignment 3
Solution :
import java.util.Scanner;
public class W03_P3{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num=sc.nextInt();
// Start
//Use while loop to count number of digits in an integer
int count = 0;
while (num > 0) {
num = num / 10;
count++;
}
System.out.print(count);
// End
}
}
Week 03 : Programming Assignment 4
Solution :
import java.util.Scanner;
class Student {
private String name;
private int age;
// Start
// Constructor
public Student(String name, int age) {
this.name = name;
this.age = age;
}
// Getter for name
public String getName() {
return name;
}
// Setter for name
public void setName(String name) {
this.name = name;
}
// Getter for age
public int getAge() {
return age;
}
// Setter for age
public void setAge(int age) {
this.age = age;
}
// End
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Read student name and age
String name = scanner.next();
int age = scanner.nextInt();
Student student = new Student(name, age);
System.out.print("Name: " + student.getName() + ", Age: " + student.getAge());
scanner.close();
}
}
Week 03 : Programming Assignment 5
Solution :
import java.util.Scanner;
class cls1 {
void add(int p, int q) {
System.out.println(p + q);
}
}
//Start
// Subclass cls2 that extends cls1
class cls2 extends cls1 {
void mul(int a, int b) {
System.out.println(a * b);
}
void task(int a, int b) {
System.out.print((a * a) + (b * b));
}
}
// End
public class W03_P5 {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
cls2 obj = new cls2();
int a = sc.nextInt();
int b = sc.nextInt();
obj.add(a, b); // Inherited from cls1
obj.mul(a, b); // Defined in cls2
obj.task(a, b); // Defined in cls2
sc.close();
}
}
import java.util.Scanner;
public class W03_P2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
//Start
// Use a for loop to find the factors of the number
for (int i = 1; i <= num; i++) {
if (num % i == 0) {
System.out.print(i + " ");
}
}
//End
}
}
Solution :
import java.util.Scanner;
public class W03_P3{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num=sc.nextInt();
// Start
//Use while loop to count number of digits in an integer
int count = 0;
while (num > 0) {
num = num / 10;
count++;
}
System.out.print(count);
// End
}
}
Week 03 : Programming Assignment 4
Solution :
import java.util.Scanner;
class Student {
private String name;
private int age;
// Start
// Constructor
public Student(String name, int age) {
this.name = name;
this.age = age;
}
// Getter for name
public String getName() {
return name;
}
// Setter for name
public void setName(String name) {
this.name = name;
}
// Getter for age
public int getAge() {
return age;
}
// Setter for age
public void setAge(int age) {
this.age = age;
}
// End
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Read student name and age
String name = scanner.next();
int age = scanner.nextInt();
Student student = new Student(name, age);
System.out.print("Name: " + student.getName() + ", Age: " + student.getAge());
scanner.close();
}
}
Week 03 : Programming Assignment 5
Solution :
import java.util.Scanner;
class cls1 {
void add(int p, int q) {
System.out.println(p + q);
}
}
//Start
// Subclass cls2 that extends cls1
class cls2 extends cls1 {
void mul(int a, int b) {
System.out.println(a * b);
}
void task(int a, int b) {
System.out.print((a * a) + (b * b));
}
}
// End
public class W03_P5 {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
cls2 obj = new cls2();
int a = sc.nextInt();
int b = sc.nextInt();
obj.add(a, b); // Inherited from cls1
obj.mul(a, b); // Defined in cls2
obj.task(a, b); // Defined in cls2
sc.close();
}
}
import java.util.Scanner;
class Student {
private String name;
private int age;
// Start
// Constructor
public Student(String name, int age) {
this.name = name;
this.age = age;
}
// Getter for name
public String getName() {
return name;
}
// Setter for name
public void setName(String name) {
this.name = name;
}
// Getter for age
public int getAge() {
return age;
}
// Setter for age
public void setAge(int age) {
this.age = age;
}
// End
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Read student name and age
String name = scanner.next();
int age = scanner.nextInt();
Student student = new Student(name, age);
System.out.print("Name: " + student.getName() + ", Age: " + student.getAge());
scanner.close();
}
}
Solution :
import java.util.Scanner;
class cls1 {
void add(int p, int q) {
System.out.println(p + q);
}
}
//Start
// Subclass cls2 that extends cls1
class cls2 extends cls1 {
void mul(int a, int b) {
System.out.println(a * b);
}
void task(int a, int b) {
System.out.print((a * a) + (b * b));
}
}
// End
public class W03_P5 {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
cls2 obj = new cls2();
int a = sc.nextInt();
int b = sc.nextInt();
obj.add(a, b); // Inherited from cls1
obj.mul(a, b); // Defined in cls2
obj.task(a, b); // Defined in cls2
sc.close();
}
}