Below is the assignment in which we:
1) create a class library with namespaces N3 inside N2 and N2 inside N1. N1 contains abstract class A which contains abstract method abc. Namespace N2 contains interface Int1 which has Power method. N3 namespace has Interface Int2 contains reverse number function. We build this file.
2) In second file we create another class library having namespace N4 which has interface Int3 which inherits Int2. and contains ispalindrome method. N5 namespace is nested within namespace N4 which has a class B which inherits Class A , int1 and Int3. Class B has implementation of all 4 methods such as abc, pow, revno and isPal. We create build of this file. Also we import the dll of previous file into this.
3) Now we create a console application contains class M and this class has main method. We create an object of B class and call all the 4 methods into main method. In this file we will add references(dll's) of above 2 files in order to access there data.
Below is the solution for this assignment:
file 1:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace N1
{
public abstract class A
{
public abstract void abc();
}
namespace N2
{
public interface Int1
{
void pow(int x, int y);
}
namespace N3 {
public interface Int2
{
int revno(int n);
}
}
}
}
File 2:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using N1;
using N1.N2.N3;
namespace N4
{
public interface Int3 : N1.N2.N3.Int2
{
bool isPal(int n);
}
namespace N5
{
public class B:A,N1.N2.Int1,N4.Int3
{
public override void abc()
{
Console.WriteLine("Inside ABC method");
}
public void pow(int x, int y)
{
int z = 1;
while (y > 0)
{
z = z * x;
y--;
}
Console.WriteLine("Power of {0} to {1} is {2}",x,y,z);
}
public int revno(int n)
{
int r = 0;
while (n > 0)
{
int d = n % 10;
r = (r * 10) + d;
r = r / 10;
}
return r;
}
public bool isPal(int n)
{
return (n == revno(n));
}
}
}
}
File 3:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using N4;
namespace Assignment1
{
class M
{
static void Main(string[] args)
{
N4.N5.B b1 = new N4.N5.B();
b1.abc();
b1.pow(10, 2);
int r=b1.revno(1234);
Console.WriteLine("Reverse of the number is:{0}:", r);
bool pal=b1.isPal(1221);
Console.WriteLine("Palindrome= {0}",pal);
Console.ReadLine();
}
}
}
Comments
Post a Comment