fork download
object Main {
  def main(args: Array[String]) {
      val l = List(new AClass, AnObject, ACompanionExample)
      l.map(a => a.autocorrect)
      .foreach(println)
  }

}

trait Autocorrector {
  def autocorrect: String // this is abstract
}

class AClass extends Autocorrector {
  def autocorrect = "AClass autocorrect"
}

object AnObject extends Autocorrector {
  def autocorrect = "AnObject autocorrect"
}

class ACompanionExample
object ACompanionExample extends Autocorrector {
  def autocorrect = "CompanionExample autocorrect"
}
Success #stdin #stdout 0.63s 55016KB
stdin
#include<stdio.h>
void main()
{
 int mark;
 printf("enter your marks")
 scanf("%d",&marks);
 if(marks>85&d maerks<=100)
 {
  printf("grade A");
 }
  else if (marks>60&d marks<=85)
 {
  printf("grade b+"); 
 }
 else if(marks>40&&marks<=60)
 {
  printf("grade B");
 }
 else if(marks>30&&marks<=40)
 {
  printf("grade C")
 } 
 else
 }
  printf("fail");
 }
}
stdout
AClass autocorrect
AnObject autocorrect
CompanionExample autocorrect