Warning

All assignments in A(E)4B33ALG/A(E)4M33PAL are handled by an assignment upload system. Students are supposed to deliver self-contained source codes independent of other than standard libraries. The source codes can be in one of the currently supported languages JAVA, C or C++. The recommended way to submit an assignment is to create a .zip archive with required files and structure and upload it to the system .

All assignments are automatically evaluated and thus must meet following requirements:

## JAVA

A JAVA assignment can contain multiple files with .java extension. File Main.java containing Main class is required. All JAVA classes must reside in pal package. All the files must be placed in pal/ directory. Please be careful with the case of the letters when naming the source files, JAVA is strictly case sensitive (i.e. Main class must reside in Main.java).

During the automated evaluation, system compiles all source codes with .java extension.

## C/C++

A C,C++ assignment can contain any combination of C and C++ source files. All the source files must reside in the root directory of the archive.

The automated evaluation system compiles all source codes with .c, .cpp and .cxx extensions and links together all object files. One of the source files must contain function main.

# Environment details

Your assignments are evaluated in 64-bit Linux environment. While this should not be a problem in most cases, please keep in mind that UNIX and Windows systems have a different newline conventions.

Compilers used:

GCC version 4.7

gcc-4.7 --version
gcc-4.7 (Debian 4.7.2-5) 4.7.2

java8

>java8 -version
java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)

Compile and run options:

g++ -std=c++11 -pipe -Wall -O3 -c *.cpp
g++ -std=c++11 -pipe -Wall -O3 -c *.cxx
gcc --std=c99 -pipe -Wall -O3 -c *.c
g++ -std=c++11 *.o -o main
./main

javac8 -Xlint pal/*.java
java8 -Xss50m -Xms64m -Xmx1024m pal.Main