====== Assignment Upload System ====== All assignments in A(E)4B33ALG/A(E)4M33PAL are handled by an [[https://cw.felk.cvut.cz/upload/|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