100% found this document useful (3 votes)
5K views

C# Lab Manual

The document contains 12 code examples demonstrating various C# programming concepts like palindrome checking, command line arguments, quadratic equation solver, boxing/unboxing, stack operations, operator overloading, finding the second largest element in an array, matrix multiplication using rectangular arrays, summing a jagged array, string reversal, error handling using try/catch/finally, and a simple calculator using switch statements.

Uploaded by

pankhi_20077474
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
100% found this document useful (3 votes)
5K views

C# Lab Manual

The document contains 12 code examples demonstrating various C# programming concepts like palindrome checking, command line arguments, quadratic equation solver, boxing/unboxing, stack operations, operator overloading, finding the second largest element in an array, matrix multiplication using rectangular arrays, summing a jagged array, string reversal, error handling using try/catch/finally, and a simple calculator using switch statements.

Uploaded by

pankhi_20077474
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 20

1. Write a Program in C# to Check whether a number is Palindrome or not.

using System; class palindrome { public static void Main() { int num=0,rev,num1=0,num2=0; Console.WriteLine("Enter a number"); num=int.Parse(Console.ReadLine()); num2=num; while(num>0) { rev=num%10; num=num/10; num1=num1*10+rev; } if(num1==num2) Console.WriteLine("Number is Palindrome"); else Console.WriteLine("Number is NOT Palindrome"); } } 2. Write a Program in C# to demonstrate Command line arguments Processing. using System; class cmdarg { public static void Main() { int num=0; String[] argument=Environment.GetCommandLineArgs(); for(int i=1;i<argument.Length;i++) num=num+int.Parse(argument[i]); Console.WriteLine("Sum is "+ num); } }

3. Write a Program in C# to find the roots of Quadratic Equation. using System; public class roots { double a=0, b=0, c=0, d=0, r1=0, r2=0, n=0, m=0; public void input() { Console.WriteLine("Enter the quardatic Equation"); a = double.Parse(Console.ReadLine()); b = double.Parse(Console.ReadLine()); c = double.Parse(Console.ReadLine()); d = Math.Sqrt(b * b - 4 * a * c); if (d == 0) { Console.WriteLine("The Roots for the given Equation are Real and Equal"); r1 = r2 = -b / (2 * a); Console.WriteLine("Root is: " + r1 + "and" + r2); } else if (d < 0) { Console.WriteLine("Roots for te given equation are Real and distinct"); r1 = (-b + d) / (2 * a); r2 = (-b - d) / (2 * a); Console.WriteLine("The Roots are: " + (int)r1 + "and" + (int)r2); } else { Console.WriteLine("The Roots for the given Equation are Imaginary"); n = -b / (2 * a); m = Math.Sqrt(Math.Abs(b * b - 4 * a * c)) / (2 * a); Console.WriteLine("Root 1: " + n + "+i " + m); Console.WriteLine("Root 2: " + n + "-i " + m); } } } class Quad { public static void Main() { roots r = new roots(); r.input(); } }

4. Write a Program in C# to demonstrate boxing and unBoxing. using System; class demo { static void box(object obj) { Console.WriteLine("value" + obj); } public static void Main() { Object o; int a = 10; double d = 4.4; o = a; //boxing integer Console.WriteLine("Passing integer"); box(a); Console.WriteLine("Passing Object"); box(o); int x = (int)o;//Unboxing Console.WriteLine("Unboxing"); Console.WriteLine("a=" + x); o = d; //boxing double Console.WriteLine("Passing double"); box(d); Console.WriteLine("Passing Object"); box(o); double dd = (double)o; //Unboxing Console.WriteLine("Unboxing"); Console.WriteLine("d=" + dd); } } 5. Write a Program in C# to implement Stack operations. using System; class stack { int top; int[] s; public stack(int size) { s = new int[size]; top = -1; } public stack() { } public void pop() { if (top == -1) { Console.WriteLine("No elements to Pop\n"); return;

} Console.WriteLine("The Poped element is" + s[top]); top--; } public void push(int var) { //Console.WriteLine("top = " + top); s[++top] = var; } public void display() { Console.WriteLine("The Contents of the Stack are\n"); if (top == -1) { Console.WriteLine("No elements to Display\n"); return; } for (int i = 0; i<=top; i++) Console.WriteLine(s[i]); } } public class demo { public static void Main() { Console.WriteLine("Enter the Size of Stack\n"); int size = int.Parse(Console.ReadLine()); stack st = new stack(size); //st.init(); int eflag = 0; do { Console.WriteLine("\n\nEnter your Choice\n"); Console.WriteLine("1. Push"); Console.WriteLine("2. Pop"); Console.WriteLine("3. Display"); Console.WriteLine("4. Exit\n\n"); int ch = int.Parse(Console.ReadLine()); switch (ch) { case 1: Console.WriteLine("Enter a Number to Push\n"); int var = int.Parse(Console.ReadLine()); st.push(var); break; case 2: st.pop(); break; case 3: st.display(); break; case 4: eflag=1; break; } } while (eflag==0); } }

6. Write a program to demonstrate Operator overloading. using System; class OLoad { int var1,var2; public OLoad(int a, int b) { var1=a; var2=b; } public OLoad() { } public static OLoad operator ++ (OLoad op1) { return new OLoad(op1.var1+1,op1.var2+1); } public static OLoad operator -- (OLoad op1) { return new OLoad(op1.var1-1,op1.var2-1); } public static OLoad operator + (OLoad op1,OLoad op2) { return new OLoad(op1.var1+op2.var1,op1.var2+op2.var2); } public static OLoad operator - (OLoad op1,OLoad op2) { return new OLoad(op1.var1-op2.var1,op1.var2-op2.var2); } public override string ToString() { return string.Format("[" + var1 + "," + var2 + "]"); } } class OLoadMain { public static void Main() { OLoad op1=new OLoad(10,20); OLoad op2=new OLoad(30,40); OLoad op3=new OLoad(); Console.WriteLine("Before overloading, the value of op1 is: " + op1 + "\n"); Console.WriteLine("Before overloading, the value of op2 is: " + op2 + "\n"); op1++; op2++; Console.WriteLine("After overloading, the value of op1 is: " + op1 + "\n"); Console.WriteLine("After overloading, the value of op2 is: " + op2 + "\n"); Console.WriteLine("Before overloading, the value of op3 is: " + op3 + "\n"); op3=op1+op2; Console.WriteLine("After overloading, the value of op3 is: " + op3 + "\n"); op3=op1-op2; Console.WriteLine("After overloading, the value of op3 is: " + op3 + "\n"); } }

7. Write a Program in C# to find the second largest element in a single dimensional array. using System; class SLar { int size; int[] nums; int lar, sec; public SLar(int n) { nums=new int[size=n]; } public void input() { Console.WriteLine("Enter the Elements of the array"); for (int i = 0; i < size; i++) nums[i] = int.Parse(Console.ReadLine()); } public int second() { lar = nums[0]; sec = nums[1]; for (int i = 0; i < size; i++) { if (nums[i] > lar) { sec = lar; lar = nums[i]; } if ((sec < nums[i] && nums[i] > lar || (nums[i] != lar && sec == lar))) sec = nums[i]; } if(sec==lar) return -1; else return sec; } } class SLarMain { public static void Main() { Console.WriteLine("Enter the Size of Array"); SLar s = new SLar(int.Parse(Console.ReadLine())); s.input(); Console.WriteLine((s.second() == -1 ? "\nAll Elements are Equal" : "\nSecond Largest=" + s.second())); } }

8. Write a Program in C# to multiply to matrices using Rectangular arrays. using System; class MatMulti { int r1,r2,c1,c2; double[,]a; double[,]b; double[,]c; public MatMulti(int r1,int c1,int r2,int c2) { a=new double[(this.r1=r1),(this.c1=c1)]; b=new double[(this.r2=r2),(this.c2=c2)]; c=new double[r1,c2]; } public void Multiply() { if(c1==r2) { Console.WriteLine("Enter elements of first matrix"); for(int i=0;i<r1;i++) for(int j=0;j<c1;j++) a[i,j]=double.Parse(Console.ReadLine()); Console.WriteLine("Enter elements of second matrix"); for(int i=0;i<r2;i++) for(int j=0;j<c2;j++) b[i,j]=double.Parse(Console.ReadLine()); for(int i=0;i<r1;i++) { for(int j=0;j<c2;j++) { c[i,j]=0; for(int k=0;k<r2;k++) c[i,j]+=a[i,k]*b[k,j]; } } Console.WriteLine("First matrix"); for(int i=0;i<r1;i++) { for(int j=0;j<c1;j++) Console.Write(a[i,j]+" "); Console.WriteLine(); } Console.WriteLine("Second matrix"); for(int i=0;i<r2;i++) { for(int j=0;j<c2;j++) Console.Write(b[i,j]+" "); Console.WriteLine(); } Console.WriteLine("Product matrix is:");

for(int i=0;i<r1;i++) { for(int j=0;j<c2;j++) Console.Write(c[i,j]+" "); Console.WriteLine(); } } else Console.WriteLine("Multiplication is not possible:"); } } class MultiImpl { public static void Main() { int a,b,c,d; Console.WriteLine("Enter no.of rows and columns of first matrix:"); a=int.Parse(Console.ReadLine()); b=int.Parse(Console.ReadLine()); Console.WriteLine("Enter no.of rows and columns of second matrix:"); c=int.Parse(Console.ReadLine()); d=int.Parse(Console.ReadLine()); MatMulti m=new MatMulti(a,b,c,d); m.Multiply(); } } 9. Find the sum of all the elements present in a jagged array of 3 inner arrays. using System; public class JaggedArrayDemo { public static void Main() { int sum = 0; int[][] arr = new int[3][]; arr[0] = new int[3]; arr[1] = new int[5]; arr[2] = new int[2]; for (int i = 0; i < arr.Length; i++) { Console.WriteLine("Enter the Size of the Inner Array " + (i + 1) + " : "); arr[i] = new int[int.Parse(Console.ReadLine())]; Console.WriteLine("Enter elements for Inner Array " + arr[i].Length + " : "); for (int j = 0; j < arr[i].Length; j++) { arr[i][j] = int.Parse(Console.ReadLine()); sum += arr[i][j]; } } Console.WriteLine("The Sum is = " + sum); } }

10. Write a program to reverse a given string using C#. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace RevStr { public class StrRev { string str1, str2; public StrRev(string s) { str1 = s; } public string Reverse() { for (int i = str1.Length; i > 0; i--) { string s = str1.Substring(i - 1, 1); str2 = str2 + s; } str2 = str2 + "\n"; return str2; } } public class Program { public static void Main(string[] args) { string s1, s2; Console.WriteLine("Enter a string : "); s1 = Console.ReadLine(); StrRev sr = new StrRev(s1); s2 = sr.Reverse(); Console.WriteLine("The reverse is : \n" + s2); Console.ReadLine(); } } } 11. Using Try, Catch and Finally blocks write a program in C# to demonstrate error handling. using System; class ExceptionDemo { public static void Main() { int a = 1, b = 0, c; try { c = a / b; } catch (ArithmeticException ae) {

Console.WriteLine("Exception Divide by Zero\n\n" + ae); } try { int[] arr = new int[2]; arr[3] = 5; } catch (IndexOutOfRangeException iore) { Console.WriteLine("Array Index out of bounds Exception\n\n" + iore); } finally { Console.WriteLine("Finally block Executing..."); } } } 12. Design a simple calculator using Switch Statement in C#. using System; namespace SimpleCalc { class Calc { private float a, b, c; char op; public Calc(float a, float b, char op) { this.a = a; this.b = b; this.op = op; } public void Calculator() { try { if (op != '+' && op != '-' && op != '*' && op != '/') throw new opchck("Operator Invalid"); else { switch (op) { case '+': c = a + b; break; case '-': c = a - b; break; case '*': c = a * b; break; case '/': try { c = a / b; } catch (ArithmeticException e) { Console.WriteLine("Denomination zero"); } break;

10

default: break; } Console.WriteLine("The answer is : " + c); } } catch (opchck o) { Console.WriteLine(o); } } class opchck : Exception { public opchck(string msg) : base(msg) { } public opchck() { } } } public class Demo { public static void Main(string[] args) { char ch; do { Console.WriteLine("\nEnter first operand : "); float a = float.Parse(Console.ReadLine()); Console.WriteLine("Enter the operator : "); char op = char.Parse(Console.ReadLine()); Console.WriteLine("Enter second operand : "); float b = float.Parse(Console.ReadLine()); Calc c = new Calc(a, b, op); c.Calculator(); Console.WriteLine("Do you want to continue(y/n)"); ch = char.Parse(Console.ReadLine()); } while (ch == 'Y' || ch == 'y'); //Console.ReadLine(); } } }

11

13. Demonstrate Use of Virtual and override key words in C# with a simple Program using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Virtualnride { class Bird { public string name; public string type; public virtual void setfun() { name = "Generic bird"; type = "Generic type"; } public virtual void display() { Console.WriteLine("Name=" + name); Console.WriteLine("Type=" + type); } } class FlyingBird : Bird { public override void setfun() { //base.setfun(); name = "Indianswift"; type = "Fastest flying bird"; } public override void display() { Console.WriteLine("Name=" + name); Console.WriteLine("Type=" + type); } } class Program { static void Main(string[] args) { Bird o1 = new Bird(); o1.setfun(); o1.display(); FlyingBird o2 = new FlyingBird(); o2.setfun(); o2.display(); Console.ReadLine(); } } }

12

14. Implement linked lists in C# using the existing collections name space. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; namespace LinkedList { public class MyLinked { private ArrayList arr; public MyLinked() { Console.WriteLine("Linked list created"); arr = new ArrayList(0); } public void insert(int value, int pos) { if (checkpos(pos)) arr.Insert(pos, value); } public void add(int val) { arr.Add(val); } public Boolean checkpos(int pos) { if (arr.Count < pos || pos < 0) { Console.WriteLine("position should be greater than 0 and in between 1 & " + arr.Count); return false; } else return true; } public Boolean checkLen() { if (arr.Count == 0) { Console.WriteLine("list empty"); return false; } return true; } public void remove(int pos) { if (pos >= 0 && pos < arr.Count) { arr.RemoveAt(pos); } else { Console.WriteLine("Position is out of array size");

13

} } public void delete(int val) { if (arr.IndexOf(val) >= 0 && arr.IndexOf(val) < arr.Count) arr.Remove(val); else Console.WriteLine("The element does not present"); } public void show() { int[] a = new int[arr.Count]; arr.CopyTo(a); if (checkLen()) foreach (int i in arr) Console.WriteLine(i); } public void clearAll() { arr.Clear(); } } public class Demo { public static void Main() { MyLinked l = new MyLinked(); int pos, val; while (true) { Console.Write("\n\n1. Add \n2. Insert\n3. Delete By Position \n4. Delete By Value\n5. Display \n6. Clear \n7. Exit \nEnter your choice : "); String ch = Console.ReadLine(); switch (ch) { case "1": Console.WriteLine("Enter the value : "); val = int.Parse(Console.ReadLine()); l.add(val); break; case "2": Console.WriteLine("Enter the value and position "); val = int.Parse(Console.ReadLine()); pos = int.Parse(Console.ReadLine()); l.insert(val, pos - 1); break; case "3": if (l.checkLen()) { Console.WriteLine("Enter the position "); pos = int.Parse(Console.ReadLine()); l.remove(pos - 1); } break; case "4": if (l.checkLen())

14

{ Console.WriteLine("Enter the value"); val = int.Parse(Console.ReadLine()); l.delete(val); } break; case "5": l.show(); break; case "6": l.clearAll(); break; case "7": Environment.Exit(0); break; default: break; } } } } }

15

15. Write a program to demonstrate abstract class and abstract methods in C#. using System; namespace Abstract { public abstract class Vehicle { public string Name; public int Wheels; public double Amount; public abstract void Calculate(); } public class Motorcycle : Vehicle { public Motorcycle() { this.Wheels = 2; } public Motorcycle(string s) { this.Wheels = 2; this.Name = s; } public override void Calculate() { this.Amount = 100000 + (500 * this.Wheels); Console.WriteLine("This motor cycle name is " + this.Name + " and its price is " + this.Amount); } } public class Car : Vehicle { private string EngineType; public Car() { this.Wheels = 4; } public Car(string s, string t) { this.Wheels = 4; this.Name = s; this.EngineType = t; } public override void Calculate() { this.Amount = 100000 + (500 * this.Wheels) + 8000; Console.WriteLine("This car name is " + this.Name + " has engine type " + this.EngineType + " and price " + this.Amount); } } public class Program { public static void Main(string[] args) { Vehicle v;

16

Motorcycle m = new Motorcycle("Pulsar"); Car c = new Car("Jazz", "Petrol"); //m.Calculate(); //c.Calculate(); v = m; v.Calculate(); v = c; v.Calculate(); Console.ReadLine(); } } } 16. Write a program in C# to build a class which implements an interface which is already existing. using System; class MyClone : ICloneable { private int data1; private String data2; public MyClone() { data1 = 0; data2 = ""; } public MyClone(int d1, String d2) { data1 = d1; data2 = d2; } public object Clone() { MyClone ob = new MyClone(); ob.data1 = data1; ob.data2 = data2; return ob; } public override String ToString() { String str = "data-1 : " + data1 + " data-2 : " + data2; return str; } } class Demo { public static void Main() { MyClone a = new MyClone(47, "Sharath"); Console.WriteLine("Object A: \n" + a); MyClone b = (MyClone)a.Clone(); Console.WriteLine("\nObject B After Cloning: \n" + b); Console.ReadLine(); } }

17

17. Write a program to illustrate the use of different properties in C#. using System; class student { private String usn; private String Name; private double perc; public String USN { get { return usn; } } public string name { set { Name = value; } } public double percentage { get { return perc; } set { perc = value; } } public student(String usn) { this.usn = usn; } public void show() { Console.WriteLine("Usn : " + usn + "\nName : " + Name + "\nPecentage : " + perc); } } public class Demo { public static void Main() { student s = new student("1RV07MCA47"); s.name = "Sharath"; s.percentage = 79.0; s.show(); } } 18. Demonstrate arrays of interface types with a C# program. using System; namespace InterfaceArray { public interface IShape { void Calculate(); void Display(); } public class Rectangle : IShape { private double Area;

18

private double Length; private double Breadth; public Rectangle() { this.Length = 0; this.Breadth = 0; } public Rectangle(double l, double b) { this.Length = l; this.Breadth = b; } public void Calculate() { this.Area = this.Length * this.Breadth; } public void Display() { Console.WriteLine("Area of Rectangle is : " + this.Area); } } public class Circle : IShape { private double Area; private double Radius; public Circle() { this.Radius = 0; } public Circle(double s) { this.Radius = s; } public void Calculate() { this.Area = 3.1416 * this.Radius * this.Radius; } public void Display() { Console.WriteLine("Area of Circle is : " + this.Area); } } public class Program { public static void Main(string[] args) { IShape[] s = { new Rectangle(10, 20), new Circle(40) }; for (int i = 0; i < s.Length; i++) { s[i].Calculate(); s[i].Display(); } Console.ReadLine(); } }

19

20

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy