OneCompiler

Practice

541
  1. Avg of primes from n1 to n2.
    object Demo{
    def main(args:Array[String]){
    var n1=0;
    var n2=0;
    var count=0;
    var pcount=0;
    var sum=0;
    var prime=" ";

    println("Enter start number :")
    n1=scala.io.StdIn.readInt();
    println("Enter end number :")
    n2=scala.io.StdIn.readInt();

    for(i<-n1 to n2){
    count=0
    for(j<-1 to i){
    if(i%j==0){
    count=count+1;
    }
    }
    if(count==2)
    {
    prime=prime+" "+i;
    pcount=pcount+1;
    sum=sum+i;

    }
    }
    println("Prime numbers :"+prime)
    println("Sum of prime :"+sum)
    println("Total prime:"+pcount)
    println("Average :"+(sum/pcount))
    }
    }

  2. Factorial

object Factorial{
def main(args:Array[String]){
var fact=1;
println("Enter a number :")
var n=scala.io.StdIn.readInt();
for(i<-1 to n){
fact=fact*i
}
println("Factorial :"+fact)
}
}

object RandomPerfectNo{
def main(args:Array[String]){
for(j<-1 to 5){
var n1=scala.util.Random
var n=n1.nextInt(1000)
var sum=0;

  for(i<-1 to n-1){
    if(n%i==0){
      sum=sum+i;
      
    }
  }
  if(sum==n)
    println(n+" is Perfect no")
  else
    println(n+" is not Perfect no")
}

}
}

object SsecLargest {
def main(args: Array[String]) {
var arr=Array(4,5,2,0)
scala.util.Sorting.quickSort(arr)
println("Sorted array :")
for(i<-0 to 3){
println(arr(i)+" ")
}
println("Second Largest number :"+arr(1))

}

}

object Prime1to100{
def main(args:Array[String]){
var prime=" ";
var count=0;
var sum=0;
var pcount=0;
for(i<-2 to 100){
count=0
for(j<-1 to i){
if(i%j==0){
count=count+1;
}
}
if(count==2)
{
prime=prime+" "+i;
pcount=pcount+1;
sum=sum+i;

}

}
print("Sum :"+sum)
}
}

object NumberConv {
def binaryCon(n : Int)
{
var i=0
var num=n
var A=new ArrayInt
while(num>0)
{
A(i)=num%2
i=i+1
num=num/2
}
println("\nBinary equivalent " )
for(j<-i-1 to 0 by -1)
print(A(j))
}
def octalCon(n:Int)
{
var i=0
var num=n
var A=new ArrayInt
while(num>0)
{
A(i)=num%8
i=i+1
num=num/8
}
println("\nOctal equivalent " )
for(j<-i-1 to 0 by -1)
print(A(j))
}
def main(args: Array[String])
{
println("Enter number:")
var n=scala.io.StdIn.readInt()
println("%d".format(n))
octalCon(n)
binaryCon(n)
}
}

object MinMax{
def main(args:Array[String]){
println("Enter how many elements:")
val n=scala.io.StdIn.readInt()
var m=new ArrayInt
println("Enter array elemnts :")
for(i<-0 to n-1){
m(i)=scala.io.StdIn.readInt()
}
println("Array :")
for(i<-0 to n-1){
println(" "+m(i))
}
var max:Int=m(0)
var min:Int=m(0)

for(i<-0 to n-1){
if(m(i)<min){
min=m(i)
}
else if(m(i)>max){
max=m(i)
}

 }

println("Max:"+max)
println("Min:"+min)
}
}

object Transpose{
def main(args:Array[String]){
var a=Array.ofDimInt
var i:Int=0
var j:Int=0
println("enter matrix:")
for(i<-0 to 1){
for(j<-0 to 1){
a(i)(j)=scala.io.StdIn.readInt()
}
}
println("original matrix:")
for(i<-0 to 1){
for(j<-0 to 1){
print(a(i)(j)+" ")
}
println()
}
println("Transpose matrix:")
for(i<-0 to 1){
for(j<-0 to 1){
print(a(j)(i)+" ")
}
println()

}

}
}

object Determinant{
def main(args:Array[String]){
var a=Array.ofDimInt
var det:Int=0;

println("Enter a 2X2 Matrix :")
for(i<-0 to 1){
  for(j<-0 to 1){
    a(i)(j)=scala.io.StdIn.readInt()
  }
}

println("Matrix is :")
for(i<-0 to 1){
  for(j<-0 to 1){
    print(a(i)(j)+" ")
  }
  println()
}

det=(a(0)(0)*a(1)(1)) - (a(1)(0)*a(0)(1))

println("Determinant :"+det)

}
}

object Upper{
def main(args:Array[String]){

var a=Array.ofDim[Int](10,10)

println("Enter no of rows :")
var n = scala.io.StdIn.readInt()
println("Enter no of column :")
var m = scala.io.StdIn.readInt()

println("Enter array elements :")
for(i<-0 to n-1){
  for(j<-0 to m-1){
    a(i)(j)=scala.io.StdIn.readInt()
  }
}
println("Matrix Is :")
for(i<-0 to n-1){
  for(j<-0 to m-1){
    print(a(i)(j)+" ")
  }
println()  
}
var isUpper=1;
for(i<-0 to n-1){
  for(j<-0 to m-1){
    if(j<i && a(i)(j)!=0){
      isUpper=0;
      println("Not upper triangular")
    }
  }
}
if(isUpper==1){
  println("Given matris is Upper Triangular :")
  for(i<-0 to n-1){
    for(j<-0 to m-1){
      print(a(i)(j)+" ")
    }
  println()  
  }
}

}
}

object InsertionSort {
def main(args: Array[String]) {
val array = Array.ofDimInt
array(0)(0)=3
array(0)(1)=2
array(1)(0)=1
array(1)(1)=0
println("Unsorted matrix ")
for(i <- 0 until 2){
for(j <- 0 until 2){
print(array(i)(j)+"\t")
}
println()
}
println("Asceding sorted matrix ")
var temp=0
var a:Int=0
var b:Int=0
for (a <- 0 until 2) {
for (b <- 0 until 2){
if(a==0 && b==0){}
else{
temp = array(a)(b)
}
var k = a
var l = b
while (k >= 0 && l>=0 && temp < array(a)(b)) {
array(a + 1)(b + 1) = array(a)(b)
k = k-1;
l = l-1;
}
array(a)(b) = temp
print(array(a)(b)+"\t")
}
println()
}
}
}

object Multiplication{
def main(args:Array[String]){
var arr1=Array.ofDimInt
var arr2=Array.ofDimInt
var result=Array.ofDimInt
var sum=0;
var k=0;

println("Enter matrix 1:")
for(i<-0 to 1){
  for(j<-0 to 1){
    arr1(i)(j)=scala.io.StdIn.readInt()
  }
}
  
println("Enter matrix 2:")
for(i<-0 to 1){
  for(j<-0 to 1){
    arr2(i)(j)=scala.io.StdIn.readInt()
  }
}

println("Matrix 1:" )
for(i<-0 to 1){
  for(j<-0 to 1){
    print(arr1(i)(j)+" ")
  }
  println()
}

println("Matrix 2:" )
for(i<-0 to 1){
  for(j<-0 to 1){
    print(arr2(i)(j)+" ")
  }
  println()
}

for(i<-0 to 1){
  for(j<-0 to 1){
    sum=0
    
    for(k<-0 to 1){
      sum=sum+(arr1(i)(k)*arr2(k)(j))
      
    }
    result(i)(j)=sum
  
  }
}
println("Multiplication :" )
for(i<-0 to 1){
  for(j<-0 to 1){
    print(result(i)(j)+" ")
  }
  println()
}

}
}

object ToUppercase{
def main(args:Array[String]){

println("Enter a string :")
var str=scala.io.StdIn.readLine()
println("Original String :"+str)

var cnt=0;
var i=0;

for(i<-0 to (str.length()-1)){
  var ch:Char=str.charAt(i)
  if(ch>='A' && ch<='Z'){
    cnt=cnt+1
     
  }
 
}
var lwr=str.toLowerCase()
println(lwr)
println("Upper case count :"+cnt)

}
}

object ToUppercase{
def main(args:Array[String]){

println("Enter a string :")
var str=scala.io.StdIn.readLine()
println("String :"+str)

println("Enter character to search :")
var c:Char=scala.io.StdIn.readChar()

println("Occurrence : "+(str.count(_==c)))

}
}

object Occurrence
{
def main(args:Array[String])
{
println("Enter First String = ")
var st1 = scala.io.StdIn.readLine().toCharArray()

	println("Enter Second String = ")
	var st2 = scala.io.StdIn.readLine().toCharArray()

	for(i<-0 to (st2.length-1))
	{
		for(j<-0 to (st1.length-1))
		{
			if(st2(i) == st1(j))
			{
				st1(j) = '*' 
			}
		}
	}

	for(i<-0 to (st1.length-1))
	{
		print(st1(i))
	}

}

}

object StrArr
{
def main(args:Array[String])
{
println("Enter how many strings :")
var n = scala.io.StdIn.readInt()

	var arr=new Array[String](n)
	for(i<-0 to (arr.length-1))
	{
	  println("Enter String"+" "+(i+1)+"=")
	  arr(i)=scala.io.StdIn.readLine()
	}
	for(i<-arr)
	{
	  println(i)
	}


}

}

class CurrentAc(accN:Int,nam:String,Balanc:Double){
var accNo=accN;
var name=nam;
var Balance=Balanc;
var minB:Double=3000;
def withdraw(){
print("Enter the widdraw amount ")
var w=scala.io.StdIn.readInt();
if((Balance-w)>=minB){
print("Withdraw suscceful "+"\n");
Balance=Balance-w;
print("The balance is "+Balance+"\n");
}else{
print("can't widthdraw balance insuffeciber "+"\n");
}
}
def deposit(){
print("Enter the amount you want to deposit ")
var d=scala.io.StdIn.readInt();
Balance=Balance+d;
print("The Updated balance is "+Balance+"\n");

}
def viewBalance(){
    print("The account Balance is "+ Balance +"\n")
}


}
object Main
{
def main(args:Array[String]): Unit =

	{
	     print("Enter the  Acount Number"+"\n");
	     val accNo=scala.io.StdIn.readInt();
	    print("Enter the name of the AcountHolder"+"\n");
	    var name =scala.io.StdIn.readLine();
	     print("Enter Balance"+"\n");
	     var Balance=scala.io.StdIn.readDouble();
	     var A=new CurrentAc(accNo,name,Balance);

          var s=0;
          do{
              print("1.Enter 1 for withdraw \n");
	          print("2.Enter 2 for Deposit \n");
	          print("3. Enter 3 for View Balance \n")
              print("4. Enter exit \n")
              var n=scala.io.StdIn.readInt()
           n match{
              case 1=>A.withdraw();
              cas
              e 2=>A.deposit();
              case 3=>A.viewBalance();
              case 4=>print("exiting ...");s=1;
              case _ => println("Invalid choice entered, Try again...")
          }
          }while(s==0);
          

}
}

class Empoley(id:Int, name:String)
{
var salary:Int = 0 //default value
def showDetails()
{
println(id+" "+name+" "+salary)
}
def this(id:Int, name:String,salary:Int)
{
this(id,name) // Calling primary constructor (see parameters in class decalration)
this.salary = salary
}
}

object MainObject
{  
    def main(args:Array[String])
    {
	var emp:Array[Empoley]=new Array[Empoley](4)
	emp(0)=new Empoley(101,"Rama",201241)
	emp(1)=new Empoley(10,"Ram",601341)
	emp(2)=new Empoley(103,"Ramay",801234)
	emp(3)=new Empoley(104,"Ramo",1001234)
	
	
	var salary:Empoley=new Empoley(0,"",0) // a temporary object
salary = emp(0) //assigning first record/object to max
	var maxsalary=emp(0).salary // a temporary maxmarks variable to contain max value
	for( i <-0 to 3)
	  {
	    
	    if(emp(i).salary>maxsalary)
	    {
	      maxsalary=emp(i).salary
	      salary=emp(i)
	    }
	    
	  }
	  println("student details with maximum marks is")
	  println(salary.showDetails())
      
    }  
}

Q4. Create abstract class Shape with abstract functions volume() and display(). Extend two classes Cube and Cylinder from it. Calculate volume of each and display

abstract class shape(r:Int,h:Int)
{
  var vol1:Double=0
  var pi:Double=3.14
  
  def volume()
  def display()
}

class cylinder(r:Int,h:Int)extends shape(r,h)
{
  def volume()
  {
    var vol:Double=0
    vol=pi*r*r*h
    vol1=vol
    println("*****")
    println("volume is:"+vol)
  }
  
  def display()
  { println("***")
    println("radius of cylinder:"+r)
    println("height of cylinder:"+h)
    println("volume of cylinder:"+vol1)
  }
}

object Demo4
{
  def main(args:Array[String])
  {
    var radius:Int=0
    var height:Int=0
    println("enter radius of cylinder:")
    radius=scala.io.StdIn.readInt()
    
    println("enter hight of cylinder")
    height=scala.io.StdIn.readInt()
    
    var n=new cylinder(radius,height)
    n.volume()
    n.display()
  }
}

Q5. Create class Project (id, name, location). Define parameterized constructor. Keep a count of each object created and display the details of each project.

class Project(id:Int,name:String,location:String)
{
    var i:Int = 0;
   
    def display()
    {
       println(id+" "+name+" "+" "+location)
    }
}



object Demo5 {
   

    def main(args: Array[String])
    {
	print("How Many Object = ")
	var n = scala.io.readInt
       
	var arr = Array[Project]=new Array[Project](n)
       
	for(i<-1 to n)
	{
	    print("Enter id = ")
	    var id = scala.io.readInt
	   
	    print("Enter name = ")
	    var name = scala. io. StdIn. readLine()
	   
	    print("Enter Location = ")
	    var location = scala. io. StdIn. readLine()
	   
	    arr(i) = new Project(id,name,location)
	}
       
	print("Number Of Object Created = "+n);

    }
}