forked from pr2-lecture/uebungen
Update of exercises
commit
3ae4c12387
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,36 @@
|
|||
# Klasse per Reflection analysieren
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Reflection einsetzen, um Klassen zu untersuchen.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.reflection.analyzer](../sources/src/main/java/pr2/reflection/analyzer/).
|
||||
|
||||
Schreiben Sie eine Klasse `Analyzer`, der man auf der Kommandozeile den Namen einer Klasse übergeben kann. Diese Klasse wird dann von `Analyzer` geladen und alle öffentlichen Methoden und Attribute der angegebenen Klasse werden auf der Konsole ausgegeben.
|
||||
|
||||
```console
|
||||
> java Analyzer java.awt.Point
|
||||
public int java.awt.Point.x
|
||||
public int java.awt.Point.y
|
||||
public boolean java.awt.Point.equals(java.lang.Object)
|
||||
public java.lang.String java.awt.Point.toString()
|
||||
public java.awt.Point java.awt.Point.getLocation(
|
||||
...
|
||||
```
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,27 @@
|
|||
# Objekte per Reflection erzeugen
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Objekte per Reflection erzeugen.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.reflection.reflector](../sources/src/main/java/pr2/reflection/reflector/).
|
||||
|
||||
Schreiben Sie eine Klasse `Reflector`, die über Reflection ein neues Objekt vom Typ `java.util.Date` erzeugt und auf diesem Objekt die `toString`-Methode aufruft. Das Ergebnis des Aufrufs soll dann auf der Konsole ausgegeben werden.
|
||||
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,34 @@
|
|||
# wait und notify benutzen
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Thread-Koordination über Condition-Variablen.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket
|
||||
[pr2.threads.notifier](../sources/src/main/java/pr2/threads/notifier/).
|
||||
|
||||
Schreiben Sie eine Klasse `Notifier`, die ein einziges `String`-Attribut enthält. Sie soll weiterhin zwei Methoden haben:
|
||||
|
||||
* `setString(String string)` -- Diese Methode setzt den String auf einen neuen Wert, aber nur, wenn der String `null` ist. Ist der String bereits gesetzt, wartet die Methode darauf, dass ein anderer Thread den String über die `getString()`-Methode liest und wieder zurücksetzt.
|
||||
* `getString()` -- Liest den String aus, gibt das Ergebnis zurück und setzt das Attribut wieder zurück auf `null`. Wenn kein String vorhanden ist (d.h. wenn das Attribut bereits `null` ist), wartet die Methode, bis ein anderer Thread mit `setString(String string)` einen String abspeichert.
|
||||
|
||||
Schreinben Sie eine Klasse `Main` mit einer `main`-Methode. Starten Sie zwei Threads, die Strings in einer `Notifier`-Instanz abspeichern und drei Threads, die Strings auslesen. Lassen Sie die Threads nach jeder Operation für 200 Millisekunden schlafen.
|
||||
|
||||
Verwenden Sie bitte `wait` und `notify` bzw. `notifyAll`, um die Threads entsprechend zu koordinieren.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,26 @@
|
|||
# Parallele Ausgaben erzeugen
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Erste Schritte mit Threads.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.threads.paralleldrucker](../sources/src/main/java/pr2/threads/paralleldrucker/).
|
||||
|
||||
Schreiben Sie ein Java-Programm `Paralleldrucker`, das zwei Threads startet, die beide in einer Endlosschleife einen Text auf der Konsole ausgeben, zum Beispiel "Thread 1 speaking". Parallel dazu soll der Main-Thread ebenfalls eine wiederkehrende Ausgabe erzeugen, z.B. "Hier spricht der Main-Thread". Verwenden Sie bitte für die Erzeugung der Threads anonyme innere Klassen, die `Runnable` implementieren.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
Binary file not shown.
|
@ -0,0 +1,994 @@
|
|||
96;Half-Life 2;9.2;Nov 16, 2004
|
||||
96;Grand Theft Auto V;7.8;Apr 14, 2015
|
||||
96;The Orange Box;9.3;Oct 10, 2007
|
||||
96;Half-Life;9.1;Oct 31, 1998
|
||||
96;BioShock;8.4;Aug 21, 2007
|
||||
95;Baldur's Gate II: Shadows of Amn;9.2;Sep 24, 2000
|
||||
95;Portal 2;8.8;Apr 19, 2011
|
||||
94;The Elder Scrolls V: Skyrim;8.1;Nov 11, 2011
|
||||
94;Mass Effect 2;8.7;Jan 26, 2010
|
||||
94;Grand Theft Auto: Vice City;8.8;May 12, 2003
|
||||
94;Civilization II;9.0;Feb 29, 1996
|
||||
94;Quake;8.8;Jun 22, 1996
|
||||
94;BioShock Infinite;8.5;Mar 26, 2013
|
||||
94;The Elder Scrolls IV: Oblivion;8.0;Mar 20, 2006
|
||||
94;Grim Fandango;9.1;Sep 30, 1998
|
||||
94;Diablo;8.7;Nov 30, 1996
|
||||
94;Sid Meier's Civilization IV;8.2;Oct 25, 2005
|
||||
93;The Witcher 3: Wild Hunt;9.1;May 19, 2015
|
||||
93;Company of Heroes;8.8;Sep 13, 2006
|
||||
93;Unreal Tournament 2004;8.9;Mar 16, 2004
|
||||
93;Starcraft II: Wings of Liberty;8.2;Jul 27, 2010
|
||||
93;Minecraft;7.4;May 10, 2009
|
||||
93;Grand Theft Auto III;8.4;May 20, 2002
|
||||
93;Homeworld;8.9;Aug 31, 1999
|
||||
93;Star Wars: Knights of the Old Republic;9.0;Nov 18, 2003
|
||||
93;World of Warcraft;7.2;Nov 23, 2004
|
||||
93;Grand Theft Auto: San Andreas;8.8;Jun 7, 2005
|
||||
92;Call of Duty 4: Modern Warfare;8.5;Nov 5, 2007
|
||||
92;Warcraft III: Reign of Chaos;9.1;Jul 3, 2002
|
||||
92;The Sims;7.9;Jan 31, 2000
|
||||
92;Sid Meier's Gettysburg!;7.7;Sep 30, 1997
|
||||
92;World Soccer Winning Eleven 7 International;7.9;Apr 9, 2004
|
||||
92;Team Fortress 2;9.2;Apr 8, 2008
|
||||
92;System Shock 2;9.1;Aug 11, 1999
|
||||
92;Tom Clancy's Splinter Cell: Chaos Theory;8.8;Mar 28, 2005
|
||||
92;Undertale;8.2;Sep 15, 2015
|
||||
92;Rome: Total War;9.1;Sep 22, 2004
|
||||
92;Thief: The Dark Project;9.1;Nov 30, 1998
|
||||
92;Age of Empires II: The Age of Kings;9.0;Sep 30, 1999
|
||||
92;Unreal Tournament (1999);9.1;Nov 30, 1999
|
||||
92;Sid Meier's Alpha Centauri;9.1;Feb 12, 1999
|
||||
92;Galactic Civilizations II: Twilight of the Arnor;8.4;Apr 30, 2008
|
||||
92;Tiger Woods PGA Tour 2003;6.0;Oct 31, 2002
|
||||
91;Dishonored;8.4;Oct 9, 2012
|
||||
91;Medal of Honor: Allied Assault;8.6;Jan 20, 2002
|
||||
91;Myth: The Fallen Lords;8.8;Oct 31, 1997
|
||||
91;World of Warcraft: Wrath of the Lich King;7.4;Nov 13, 2008
|
||||
91;F1 Challenge '99-'02;8.3;Jun 24, 2003
|
||||
91;Baldur's Gate;9.0;Nov 30, 1998
|
||||
91;IL-2 Sturmovik;8.7;Nov 18, 2001
|
||||
91;FreeSpace 2;8.8;Sep 30, 1999
|
||||
91;Metal Gear Solid V: The Phantom Pain;7.7;Sep 1, 2015
|
||||
91;Tom Clancy's Splinter Cell;8.6;Feb 19, 2003
|
||||
91;Crysis;8.0;Nov 13, 2007
|
||||
91;World of Warcraft: The Burning Crusade;7.9;Jan 16, 2007
|
||||
91;Tiger Woods PGA Tour 2005;4.6;Sep 20, 2004
|
||||
91;The Longest Journey;8.9;Nov 16, 2000
|
||||
91;Tony Hawk's Pro Skater 2;8.5;Oct 31, 2000
|
||||
91;Star Wars Jedi Knight: Dark Forces II;8.5;Sep 30, 1997
|
||||
91;Batman: Arkham Asylum;8.7;Sep 15, 2009
|
||||
91;Galactic Civilizations II: Dark Avatar;8.2;Feb 14, 2007
|
||||
91;The Operative: No One Lives Forever;8.9;Nov 9, 2000
|
||||
91;Battlefield 2;8.4;Jun 21, 2005
|
||||
91;Street Fighter IV;8.0;Jul 1, 2009
|
||||
91;Fallout 3;7.9;Oct 28, 2008
|
||||
91;Batman: Arkham City;8.6;Nov 22, 2011
|
||||
91;Fez;6.5;May 1, 2013
|
||||
91;Planescape: Torment;9.3;Nov 30, 1999
|
||||
91;Neverwinter Nights;8.1;Jun 16, 2002
|
||||
91;No One Lives Forever 2: A Spy in H.A.R.M.'s Way;8.7;Sep 30, 2002
|
||||
91;Dragon Age: Origins;8.6;Nov 3, 2009
|
||||
91;Mark of the Ninja;8.0;Oct 16, 2012
|
||||
91;Dark Souls II;7.1;Apr 25, 2014
|
||||
91;Call of Duty;8.5;Oct 29, 2003
|
||||
91;Madden NFL 2004;8.2;Aug 12, 2003
|
||||
90;The Sims 2;8.8;Sep 14, 2004
|
||||
90;World of Warcraft: Cataclysm;5.5;Dec 7, 2010
|
||||
90;World of Goo;8.5;Oct 21, 2008
|
||||
90;Spelunky;7.2;Aug 8, 2013
|
||||
90;Black & White;7.6;Mar 26, 2001
|
||||
90;Portal;9.3;Apr 8, 2008
|
||||
90;NHL 2001;6.9;Sep 28, 2000
|
||||
90;Tony Hawk's Pro Skater 3;8.6;Mar 28, 2002
|
||||
90;Deus Ex;9.3;Jun 26, 2000
|
||||
90;Half-Life 2: Episode Two;9.2;Oct 10, 2007
|
||||
90;Braid;8.6;Jan 26, 2010
|
||||
90;The Chronicles of Riddick: Escape From Butcher Bay - Developer's Cut;8.7;Dec 8, 2004
|
||||
90;Sid Meier's Civilization III;8.4;Oct 30, 2001
|
||||
90;Silent Hunter III;7.8;Mar 15, 2005
|
||||
90;Sid Meier's Civilization V;7.8;Sep 21, 2010
|
||||
90;Falcon 4.0: Allied Force;8.6;Jun 28, 2005
|
||||
90;Deus Ex: Human Revolution;8.5;Aug 23, 2011
|
||||
90;Dark Souls III;8.2;Apr 12, 2016
|
||||
90;Flight Simulator 2002;8.4;Oct 19, 2001
|
||||
90;Brothers: A Tale of Two Sons;8.5;Sep 3, 2013
|
||||
90;Dota 2;6.2;Jul 9, 2013
|
||||
90;Guild Wars 2;7.9;Aug 28, 2012
|
||||
90;Freedom Force;8.0;Mar 24, 2002
|
||||
90;GTR 2;8.7;Sep 29, 2006
|
||||
90;Grand Theft Auto IV;6.5;Dec 2, 2008
|
||||
90;Total War: Shogun 2;8.3;Mar 15, 2011
|
||||
90;Empire: Total War;6.9;Mar 3, 2009
|
||||
90;Command & Conquer: Red Alert;8.9;Oct 31, 1996
|
||||
89;Star Wars Jedi Knight II: Jedi Outcast;8.6;Mar 26, 2002
|
||||
89;The Walking Dead: A Telltale Games Series;8.7;Dec 11, 2012
|
||||
89;Age of Mythology;8.9;Nov 1, 2002
|
||||
89;Sacrifice;8.8;Nov 5, 2000
|
||||
89;The Witcher 3: Wild Hunt - Hearts of Stone;8.4;Oct 13, 2015
|
||||
89;Pillars of Eternity;8.3;Mar 26, 2015
|
||||
89;The Elder Scrolls III: Morrowind;9.0;May 1, 2002
|
||||
89;Rocksmith 2014 Edition;7.9;Oct 22, 2013
|
||||
89;Fallout;8.9;Sep 30, 1997
|
||||
89;World Soccer Winning Eleven 9;8.4;Apr 28, 2006
|
||||
89;Worldwide Soccer Manager 2005;8.7;Dec 7, 2004
|
||||
89;Left 4 Dead;9.2;Nov 18, 2008
|
||||
89;Left 4 Dead 2;8.5;Nov 17, 2009
|
||||
89;NASCAR Racing 2002 Season;5.8;Feb 14, 2002
|
||||
89;Mass Effect;8.6;May 28, 2008
|
||||
89;Combat Mission: Barbarossa to Berlin;8.3;Oct 29, 2002
|
||||
89;Homeworld: Cataclysm;8.9;Sep 7, 2000
|
||||
89;The Walking Dead: Episode 5 - No Time Left;8.9;Nov 21, 2012
|
||||
89;Guild Wars;8.4;Apr 26, 2005
|
||||
89;Borderlands 2;8.2;Sep 18, 2012
|
||||
89;Max Payne;9.1;Jul 23, 2001
|
||||
89;Out of the Park Baseball 15;7.2;Apr 21, 2014
|
||||
89;World in Conflict;8.1;Sep 18, 2007
|
||||
89;NASCAR Racing 4;8.2;Feb 6, 2001
|
||||
89;Duke Nukem 3D;8.8;Jan 31, 1996
|
||||
89;Far Cry;8.0;Mar 23, 2004
|
||||
89;FIFA Soccer 12;7.1;Sep 27, 2011
|
||||
89;XCOM: Enemy Unknown;8.2;Oct 9, 2012
|
||||
89;Mass Effect 3;5.4;Mar 6, 2012
|
||||
89;Rise of Nations;9.0;May 20, 2003
|
||||
89;NASCAR Racing 2003 Season;8.6;Feb 14, 2003
|
||||
89;Descent 3;8.3;Jun 14, 2000
|
||||
89;The Curse of Monkey Island;9.1;Oct 31, 1997
|
||||
89;Battlefield 3;7.5;Oct 25, 2011
|
||||
89;Battlefield 1942;8.6;Sep 10, 2002
|
||||
89;Madden NFL 2003;8.4;Aug 12, 2002
|
||||
89;DiRT 2;8.3;Dec 10, 2009
|
||||
89;Stardew Valley;8.5;Feb 26, 2016
|
||||
89;Prince of Persia: The Sands of Time;8.6;Nov 30, 2003
|
||||
89;Railroad Tycoon II;8.4;Oct 31, 1998
|
||||
88;Microsoft Flight Simulator 2004: A Century of Flight;8.2;Jul 29, 2003
|
||||
88;Medieval: Total War;8.8;Aug 19, 2002
|
||||
88;Mafia;9.1;Aug 27, 2002
|
||||
88;LIMBO;8.1;Aug 2, 2011
|
||||
88;Nuclear Throne;7.4;Dec 5, 2015
|
||||
88;Crusader Kings II: The Old Gods;8.8;May 28, 2013
|
||||
88;Assassin's Creed: Brotherhood;8.2;Mar 22, 2011
|
||||
88;Superbike 2001;6.5;Oct 9, 2000
|
||||
88;F.E.A.R.;8.3;Oct 17, 2005
|
||||
88;Kerbal Space Program;8.1;Apr 27, 2015
|
||||
88;Tribes 2;8.5;Mar 28, 2001
|
||||
88;Age of Empires II: The Conquerors Expansion;9.0;Aug 24, 2000
|
||||
88;Tiger Woods PGA Tour 2004;8.8;Sep 22, 2003
|
||||
88;Warcraft III: The Frozen Throne;9.0;Jul 1, 2003
|
||||
88;Starcraft;9.1;Apr 1, 1998
|
||||
88;Far Cry 3;8.2;Dec 4, 2012
|
||||
88;XCOM 2;7.0;Feb 5, 2016
|
||||
88;World Soccer Winning Eleven 8 International;8.5;Feb 16, 2005
|
||||
88;Torchlight II;8.6;Sep 20, 2012
|
||||
88;Myth II: Soulblighter;9.0;Nov 30, 1998
|
||||
88;Return to Castle Wolfenstein;8.7;Nov 19, 2001
|
||||
88;Shogo: Mobile Armor Division;8.9;Sep 30, 1998
|
||||
88;Thirty Flights of Loving;5.0;Aug 20, 2012
|
||||
88;Hearthstone: Heroes of Warcraft;6.3;Mar 11, 2014
|
||||
88;Medieval II: Total War;8.9;Nov 13, 2006
|
||||
88;F1 2002;7.6;Jun 13, 2002
|
||||
88;The Stanley Parable;8.0;Oct 17, 2013
|
||||
88;BioShock 2;8.0;Feb 9, 2010
|
||||
88;Counter-Strike: Source;8.9;Sep 26, 2005
|
||||
88;Starcraft II: Legacy of the Void;8.3;Nov 10, 2015
|
||||
88;Diablo III;4.0;May 15, 2012
|
||||
88;Rise of Nations: Thrones & Patriots;8.8;Apr 27, 2004
|
||||
88;Sid Meier's Pirates!;8.3;Nov 22, 2004
|
||||
88;EVE Online: Special Edition;7.8;Mar 10, 2009
|
||||
88;Guacamelee! Gold Edition;7.3;Aug 8, 2013
|
||||
88;Armadillo Run;8.2;Apr 22, 2006
|
||||
88;Dark Age of Camelot;8.9;Sep 1, 2001
|
||||
88;Baldur's Gate II: Throne of Bhaal;8.9;Jun 21, 2001
|
||||
88;Counter-Strike;9.3;Nov 8, 2000
|
||||
88;Tony Hawk's Pro Skater 4;8.4;Aug 27, 2003
|
||||
88;Ori and the Blind Forest;8.7;Mar 11, 2015
|
||||
88;Diablo II;8.8;Jun 29, 2000
|
||||
88;The Witcher 2: Assassins of Kings;8.5;May 17, 2011
|
||||
87;Plants vs. Zombies;8.9;Aug 18, 2009
|
||||
87;Doom 3;7.5;Aug 3, 2004
|
||||
87;Super Meat Boy;8.3;Apr 5, 2011
|
||||
87;Football Manager 2010;9.1;Nov 3, 2009
|
||||
87;Oddworld: Abe's Oddysee - New 'n' Tasty;7.8;Feb 25, 2015
|
||||
87;Tom Clancy's Splinter Cell: Pandora Tomorrow;8.0;Mar 23, 2004
|
||||
87;Europa Universalis II;8.8;Nov 12, 2001
|
||||
87;Burnout Paradise: The Ultimate Box;7.5;Feb 5, 2009
|
||||
87;Battlefield: Bad Company 2;8.3;Mar 2, 2010
|
||||
87;GRID;7.9;Jun 3, 2008
|
||||
87;Crypt of the NecroDancer;7.7;Apr 23, 2015
|
||||
87;Sins of a Solar Empire;8.2;Feb 4, 2008
|
||||
87;MechWarrior 4: Vengeance;8.2;Nov 23, 2000
|
||||
87;Thief II: The Metal Age;9.1;Feb 29, 2000
|
||||
87;Diablo II: Lord of Destruction;9.1;Jun 27, 2001
|
||||
87;Monkey Island 2 Special Edition: LeChuck's Revenge;9.0;Jul 7, 2010
|
||||
87;Half-Life 2: Episode One;8.6;Jun 1, 2006
|
||||
87;The Swapper;8.7;May 30, 2013
|
||||
87;Hitman 2: Silent Assassin;8.2;Oct 1, 2002
|
||||
87;Year Walk;7.0;Mar 6, 2014
|
||||
87;Max Payne 3;7.6;Jun 1, 2012
|
||||
87;TowerFall Ascension;6.6;Mar 11, 2014
|
||||
87;Battlefield 3: Armored Kill;7.0;Sep 11, 2012
|
||||
87;NHL 2002;8.7;Sep 17, 2001
|
||||
87;Icewind Dale;8.3;Jun 29, 2000
|
||||
87;The Witness;6.6;Jan 26, 2016
|
||||
87;Brothers in Arms: Road to Hill 30;7.1;Mar 15, 2005
|
||||
87;Kohan: Immortal Sovereigns;8.6;Mar 14, 2001
|
||||
87;Day of the Tentacle Remastered;7.9;Mar 21, 2016
|
||||
87;Dead Space 2;8.3;Jan 25, 2011
|
||||
87;Diablo III: Reaper of Souls;6.6;Mar 25, 2014
|
||||
87;Shogun: Total War Warlord Edition;8.7;Aug 13, 2001
|
||||
87;Serious Sam: The First Encounter;8.4;Mar 21, 2001
|
||||
87;Grand Prix 3;8.3;Aug 24, 2000
|
||||
87;Call of Duty: United Offensive;8.3;Sep 14, 2004
|
||||
87;Divinity: Original Sin;8.7;Jan 17, 2014
|
||||
87;Company of Heroes: Opposing Fronts;8.6;Sep 24, 2007
|
||||
87;Psychonauts;8.9;Apr 19, 2005
|
||||
87;Gears of War;7.8;Nov 6, 2007
|
||||
87;Out of the Park Baseball 4;7.8;Feb 28, 2002
|
||||
87;Europa Universalis IV;8.7;Aug 13, 2013
|
||||
87;NHL 2004;8.2;Sep 22, 2003
|
||||
87;Zeus: Master of Olympus;9.0;Oct 22, 2000
|
||||
87;World of Warcraft: Warlords of Draenor;6.0;Nov 13, 2014
|
||||
87;Warhammer 40,000: Dawn of War - Dark Crusade;8.9;Oct 9, 2006
|
||||
87;Commandos 2: Men of Courage;8.8;Sep 20, 2001
|
||||
86;Tales From The Borderlands: Episode 5 - The Vault of the Traveler;8.7;Oct 20, 2015
|
||||
86;Bastion;8.6;Aug 16, 2011
|
||||
86;Gone Home;5.4;Aug 15, 2013
|
||||
86;Pac-Man Championship Edition DX +;7.3;Sep 24, 2013
|
||||
86;Supreme Commander;8.3;Feb 20, 2007
|
||||
86;Total War: Shogun 2 - Fall of the Samurai;8.4;Mar 23, 2012
|
||||
86;Startopia;8.7;Jun 19, 2001
|
||||
86;Enemy Engaged: RAH-66 Comanche Versus Ka-52 Hokum;8.3;Jul 31, 2000
|
||||
86;Fallout 2;9.2;Sep 30, 1998
|
||||
86;Final Fantasy XIV: Heavensward;7.7;Jun 23, 2015
|
||||
86;Football Manager 2013;6.7;Nov 1, 2012
|
||||
86;Out of the Park Baseball 14;8.6;Apr 15, 2013
|
||||
86;The Witcher: Enhanced Edition;8.5;Sep 16, 2008
|
||||
86;Borderlands: The Secret Armory of General Knoxx;7.6;Feb 25, 2010
|
||||
86;Call of Duty 2;8.3;Oct 25, 2005
|
||||
86;Astebreed;7.3;May 30, 2014
|
||||
86;Ground Control;7.8;May 31, 2000
|
||||
86;Rise of the Tomb Raider;8.0;Jan 28, 2016
|
||||
86;Resident Evil 5;7.1;Sep 18, 2009
|
||||
86;Saints Row IV;7.4;Aug 20, 2013
|
||||
86;Black Mesa;9.0;Sep 14, 2012
|
||||
86;EverQuest: Omens of War;7.7;Sep 13, 2004
|
||||
86;Steel Beasts;8.4;Sep 24, 2000
|
||||
86;Total Annihilation;8.9;Sep 30, 1997
|
||||
86;Need for Speed: Hot Pursuit;6.7;Nov 16, 2010
|
||||
86;FIFA Soccer 13;6.6;Sep 25, 2012
|
||||
86;Sid Meier's Civilization IV: Beyond the Sword;8.6;Jul 23, 2007
|
||||
86;The Sims 3;7.6;Jun 2, 2009
|
||||
86;Freedom Force vs The 3rd Reich;7.7;Mar 8, 2005
|
||||
86;The Binding of Isaac: Rebirth;8.3;Nov 4, 2014
|
||||
86;Tribes: Ascend;7.7;Apr 12, 2012
|
||||
86;Titanfall;6.1;Mar 11, 2014
|
||||
86;Rayman Origins;8.4;Mar 29, 2012
|
||||
86;Her Story;5.7;Jun 24, 2015
|
||||
86;Starcraft II: Heart of the Swarm;7.9;Mar 12, 2013
|
||||
86;Mass Effect 2: Lair of the Shadow Broker;8.5;Sep 7, 2010
|
||||
86;LEGO Star Wars II: The Original Trilogy;8.3;Sep 12, 2006
|
||||
86;Dungeon Siege;7.9;Mar 31, 2002
|
||||
86;Crysis 2;6.7;Mar 22, 2011
|
||||
86;Call of Duty: Modern Warfare 2;4.1;Nov 10, 2009
|
||||
86;The Secret of Monkey Island: Special Edition;9.1;Jul 15, 2009
|
||||
86;Max Payne 2: The Fall of Max Payne;9.0;Oct 14, 2003
|
||||
86;Homeworld Remastered Collection;8.2;Feb 25, 2015
|
||||
86;Galactic Civilizations II: Dread Lords;8.0;Feb 21, 2006
|
||||
86;Tomb Raider;8.5;Mar 5, 2013
|
||||
86;Star Trek: Voyager Elite Force;8.2;Sep 20, 2000
|
||||
86;Worldwide Soccer Manager 2008;8.4;Oct 23, 2007
|
||||
86;IL-2 Sturmovik: Forgotten Battles;8.6;Mar 2, 2003
|
||||
86;Hyper Light Drifter;8.1;Mar 31, 2016
|
||||
86;DiRT 3;6.9;May 24, 2011
|
||||
86;Unreal Tournament 2003;8.1;Sep 30, 2002
|
||||
86;Age of Wonders II: The Wizard's Throne;8.4;Jun 12, 2002
|
||||
86;Links 2001;6.8;Oct 24, 2000
|
||||
86;EverQuest: The Ruins of Kunark;8.8;Mar 31, 2000
|
||||
86;Full Throttle;8.8;Apr 30, 1995
|
||||
86;The Lord of the Rings Online: Shadows of Angmar;8.1;Apr 24, 2007
|
||||
86;Pony Island;6.8;Jan 4, 2016
|
||||
86;Warhammer 40,000: Dawn of War;8.8;Sep 20, 2004
|
||||
86;Warhammer Online: Age of Reckoning;7.9;Sep 16, 2008
|
||||
86;Dead Space;8.0;Oct 20, 2008
|
||||
86;Bionic Commando Rearmed;7.0;Aug 13, 2008
|
||||
86;Command & Conquer: Red Alert 2 - Yuri's Revenge;9.0;Oct 10, 2001
|
||||
86;Europa Universalis;8.1;Feb 2, 2001
|
||||
86;Escape from Monkey Island;8.2;Nov 8, 2000
|
||||
86;IL-2 Sturmovik: 1946;8.8;Mar 13, 2007
|
||||
86;XCOM: Enemy Within;7.9;Nov 12, 2013
|
||||
86;Battlefield 3: Back to Karkand;7.2;Dec 13, 2011
|
||||
86;Heroes of the Storm;6.7;Jun 2, 2015
|
||||
86;Civilization III: Conquests;8.4;Nov 4, 2003
|
||||
86;Path of Exile;8.0;Jan 25, 2013
|
||||
86;Battlefield: Bad Company 2 Vietnam;8.1;Dec 18, 2010
|
||||
86;Assassin's Creed II;6.8;Mar 9, 2010
|
||||
86;The Elder Scrolls IV: Shivering Isles;8.4;Mar 26, 2007
|
||||
86;DiRT Rally;8.8;Dec 7, 2015
|
||||
86;Rocket League;8.1;Jul 7, 2015
|
||||
86;Allegiance;8.2;Mar 31, 2000
|
||||
85;The Talos Principle;8.5;Dec 11, 2014
|
||||
85;Cities: Skylines;8.9;Mar 10, 2015
|
||||
85;Falcon 4.0;8.0;Nov 30, 1998
|
||||
85;Tom Clancy's Rainbow Six;8.6;Jul 31, 1998
|
||||
85;Madden NFL 2005;6.4;Sep 14, 2004
|
||||
85;Legend of Grimrock II;8.0;Oct 15, 2014
|
||||
85;Sam & Max Episode 205: What's New, Beelzebub?;8.6;Apr 10, 2008
|
||||
85;Dragon Age: Inquisition;5.8;Nov 18, 2014
|
||||
85;Tales from the Borderlands: A Telltale Game Series;8.7;Apr 26, 2016
|
||||
85;Tom Clancy's Rainbow Six: Vegas;7.7;Dec 12, 2006
|
||||
85;City of Heroes;8.5;Apr 27, 2004
|
||||
85;SWAT 4;8.6;Apr 5, 2005
|
||||
85;Clive Barker's Undying;8.7;Feb 21, 2001
|
||||
85;EverQuest;8.2;Mar 16, 1999
|
||||
85;Warhammer 40,000: Dawn of War II;8.1;Feb 18, 2009
|
||||
85;Command & Conquer 3: Tiberium Wars;8.0;Mar 26, 2007
|
||||
85;Bit.Trip Presents...Runner2: Future Legend of Rhythm Alien;8.2;Feb 26, 2013
|
||||
85;Hotline Miami;8.5;Oct 23, 2012
|
||||
85;Out of the Park Baseball 13;8.2;Apr 9, 2012
|
||||
85;Wizardry 8;8.6;Nov 14, 2001
|
||||
85;Aliens Versus Predator 2;8.7;Oct 31, 2001
|
||||
85;Operation Flashpoint: Cold War Crisis;9.0;Aug 30, 2001
|
||||
85;Tropico;8.4;Apr 5, 2001
|
||||
85;Giants: Citizen Kabuto;8.9;Dec 6, 2000
|
||||
85;NASCAR SimRacing;4.9;Feb 15, 2005
|
||||
85;The Lord of the Rings Online: Mines of Moria;8.3;Nov 17, 2008
|
||||
85;The Binding of Isaac: Afterbirth;8.1;Oct 30, 2015
|
||||
85;Amnesia: The Dark Descent;8.6;Feb 17, 2011
|
||||
85;GTR FIA Racing;8.6;May 3, 2005
|
||||
85;Football Manager 2011;8.4;Nov 23, 2010
|
||||
85;Dust: An Elysian Tail;8.5;May 24, 2013
|
||||
85;South Park: The Stick of Truth;8.6;Mar 4, 2014
|
||||
85;Dark Souls: Prepare to Die Edition;7.4;Aug 24, 2012
|
||||
85;Medieval II: Total War Kingdoms;8.8;Aug 28, 2007
|
||||
85;Shovel Knight;7.9;Jun 26, 2014
|
||||
85;DmC: Devil May Cry;6.7;Jan 24, 2013
|
||||
85;Peggle Deluxe;8.1;Feb 19, 2008
|
||||
85;Monopoly Tycoon;8.0;Sep 24, 2001
|
||||
85;Indigo Prophecy;8.3;Oct 2, 2005
|
||||
85;Prince of Persia: The Two Thrones;8.0;Dec 1, 2005
|
||||
85;Sam & Max Episode 204: Chariots of the Dogs;8.1;Mar 13, 2008
|
||||
85;Assetto Corsa;8.4;Dec 19, 2014
|
||||
85;Machinarium;8.8;Oct 16, 2009
|
||||
85;Frozen Synapse;7.7;May 26, 2011
|
||||
85;Valkyria Chronicles;8.3;Nov 11, 2014
|
||||
85;Freelancer;8.9;Mar 3, 2003
|
||||
85;Zenzizenzic;5.9;Jul 23, 2015
|
||||
85;The Wolf Among Us: Episode 1 - Faith;9.0;Oct 11, 2013
|
||||
85;Mega Man Legacy Collection;7.3;Aug 25, 2015
|
||||
85;Warhammer 40,000: Dawn of War II - Chaos Rising;8.7;Mar 11, 2010
|
||||
85;Far Cry 2;5.8;Oct 21, 2008
|
||||
85;The Walking Dead: Episode 3 - Long Road Ahead;8.4;Aug 29, 2012
|
||||
85;AudioSurf;8.8;Feb 15, 2008
|
||||
85;BattleBlock Theater;8.0;May 15, 2014
|
||||
85;Star Wars: Knights of the Old Republic II - The Sith Lords;8.4;Feb 8, 2005
|
||||
85;MVP Baseball 2005;8.1;Feb 22, 2005
|
||||
85;The Elder Scrolls III: Bloodmoon;8.5;Jun 3, 2003
|
||||
85;Rogue Legacy;7.9;Jun 27, 2013
|
||||
85;Chaos Reborn;8.4;Oct 26, 2015
|
||||
85;Thief: Deadly Shadows;8.4;May 25, 2004
|
||||
85;Football Manager 2014;5.4;Oct 30, 2013
|
||||
85;System Shock: Enhanced Edition;7.9;Sep 22, 2015
|
||||
85;EverQuest: Gates of Discord;6.8;Feb 9, 2004
|
||||
85;FIFA 2001 Major League Soccer;7.3;Oct 30, 2000
|
||||
85;Sid Meier's Civilization V: Brave New World;8.6;Jul 9, 2013
|
||||
85;Final Fantasy XI;7.5;Oct 28, 2003
|
||||
85;Serious Sam: The Second Encounter;8.5;Feb 4, 2002
|
||||
85;The Sims: Hot Date;7.9;Nov 12, 2001
|
||||
85;American McGee's Alice;8.2;Dec 6, 2000
|
||||
85;Trials Evolution: Gold Edition;6.7;Mar 21, 2013
|
||||
85;Warhammer 40,000: Dawn of War - Winter Assault;8.3;Sep 21, 2005
|
||||
85;Tony Hawk's Underground 2;7.9;Oct 4, 2004
|
||||
85;Papers, Please;8.5;Aug 8, 2013
|
||||
85;Star Wars: The Old Republic;5.9;Dec 20, 2011
|
||||
85;Anarchy Online: Shadowlands;8.7;Sep 8, 2003
|
||||
85;Dark Age of Camelot: Shrouded Isles;8.8;Dec 2, 2002
|
||||
85;Obsidian;8.3;Dec 31, 1996
|
||||
84;The Walking Dead: Episode 2 - Starved for Help;8.6;Jun 29, 2012
|
||||
84;Saints Row: The Third;8.1;Nov 15, 2011
|
||||
84;Fallout: New Vegas;8.5;Oct 19, 2010
|
||||
84;The Movies;8.3;Nov 8, 2005
|
||||
84;Neverwinter Nights: Hordes of the Underdark;8.6;Dec 2, 2003
|
||||
84;Command & Conquer: Generals;8.3;Feb 10, 2003
|
||||
84;Sid Meier's SimGolf;8.2;Jan 23, 2002
|
||||
84;Middle-earth: Shadow of Mordor;8.0;Sep 30, 2014
|
||||
84;SpaceChem;8.4;Mar 2, 2011
|
||||
84;Downwell;6.2;Oct 15, 2015
|
||||
84;Pinball FX 2;8.0;Oct 27, 2012
|
||||
84;Devil Daggers;6.7;Feb 18, 2016
|
||||
84;PlanetSide 2;7.0;Nov 20, 2012
|
||||
84;Enter the Gungeon;7.4;Apr 5, 2016
|
||||
84;GT Legends;8.6;Jan 23, 2006
|
||||
84;Hearthstone: Goblins Vs. Gnomes;6.6;Dec 8, 2014
|
||||
84;Space Rangers 2: Rise of the Dominators;9.0;Mar 27, 2006
|
||||
84;Tales From The Borderlands: Episode 1 - Zer0 Sum;8.4;Nov 25, 2014
|
||||
84;Puzzle Quest: Challenge of the Warlords;8.3;Oct 10, 2007
|
||||
84;Heroes of Might and Magic IV;7.6;Mar 29, 2002
|
||||
84;Command & Conquer: Red Alert 2;8.9;Oct 21, 2000
|
||||
84;Shogun: Total War;8.7;Jun 13, 2000
|
||||
84;DiRT;7.2;Jun 19, 2007
|
||||
84;Darkest Dungeon;8.0;Jan 19, 2016
|
||||
84;Super Street Fighter IV: Arcade Edition;7.8;Jul 13, 2011
|
||||
84;Football Manager 2012;8.0;Oct 20, 2011
|
||||
84;Guild Wars Factions;8.5;Apr 28, 2006
|
||||
84;80 Days (2015);6.1;Sep 29, 2015
|
||||
84;Spore;5.2;Sep 7, 2008
|
||||
84;Unity of Command;7.2;Nov 15, 2011
|
||||
84;Hearthstone: The Grand Tournament;4.0;Aug 24, 2015
|
||||
84;Metro Redux;8.0;Aug 26, 2014
|
||||
84;Time Gentlemen, Please!;7.6;Jul 2, 2009
|
||||
84;Europa Universalis IV: Wealth of Nations;8.4;May 29, 2014
|
||||
84;Mass Effect 3: Citadel;7.8;Mar 5, 2013
|
||||
84;Disciples II: Dark Prophecy;8.6;Jan 22, 2002
|
||||
84;Just Cause 2;7.7;Mar 23, 2010
|
||||
84;Crysis Warhead;7.9;Sep 16, 2008
|
||||
84;Assassin's Creed IV: Black Flag;7.7;Nov 19, 2013
|
||||
84;Age of Mythology: The Titans;8.7;Sep 30, 2003
|
||||
84;SimCity 4;8.7;Jan 12, 2003
|
||||
84;Microsoft Train Simulator;8.4;May 31, 2001
|
||||
84;Rise of Nations: Rise of Legends;8.5;May 9, 2006
|
||||
84;TOCA Race Driver 3;7.8;Feb 24, 2006
|
||||
84;FTL: Faster Than Light;8.4;Sep 14, 2012
|
||||
84;SOMA;8.2;Sep 22, 2015
|
||||
84;DEFCON: Everybody Dies;8.3;Mar 26, 2007
|
||||
84;Tron 2.0;8.3;Aug 26, 2003
|
||||
84;Brothers in Arms: Earned in Blood;7.3;Oct 6, 2005
|
||||
84;Grim Fandango Remastered;8.0;Jan 27, 2015
|
||||
84;The Lord of the Rings: The Battle for Middle-Earth II;7.5;Mar 2, 2006
|
||||
84;Battlefield Vietnam;7.4;Mar 16, 2004
|
||||
84;Medieval: Total War - Viking Invasion;8.8;May 7, 2003
|
||||
84;Fallout 4;5.4;Nov 10, 2015
|
||||
84;Guild Wars Nightfall;8.7;Oct 26, 2006
|
||||
84;The Binding of Isaac;8.3;Sep 28, 2011
|
||||
84;Enemy Territory: Quake Wars;8.3;Oct 2, 2007
|
||||
84;Trine 2;8.4;Dec 7, 2011
|
||||
84;Rift;7.3;Mar 1, 2011
|
||||
84;The Wolf Among Us: Episode 5 - Cry Wolf;8.8;Jul 8, 2014
|
||||
84;Shift 2: Unleashed;6.1;Mar 29, 2011
|
||||
84;Sid Meier's Civilization IV: Warlords;8.2;Jul 24, 2006
|
||||
84;Battlefield 1942: The Road to Rome;7.9;Feb 2, 2003
|
||||
84;Poseidon;8.4;Jun 25, 2001
|
||||
84;F1 2010;6.6;Sep 22, 2010
|
||||
84;Shatter;7.4;Mar 15, 2010
|
||||
84;Darwinia;7.9;Jun 12, 2006
|
||||
84;Ultimate General: Gettysburg;8.0;Oct 16, 2014
|
||||
83;Final Fantasy XI: Treasures of Aht Urhgan;7.6;Apr 18, 2006
|
||||
83;MDK2;8.4;May 31, 2000
|
||||
83;Gunpoint;8.4;Jun 3, 2013
|
||||
83;Beyond Good & Evil;8.7;Nov 19, 2003
|
||||
83;Anno 2070;7.0;Nov 17, 2011
|
||||
83;SMITE;8.3;Mar 25, 2014
|
||||
83;Halo: Combat Evolved;7.4;Sep 30, 2003
|
||||
83;Grim Dawn;8.9;Feb 25, 2016
|
||||
83;Silent Storm;8.9;Jan 20, 2004
|
||||
83;Command & Conquer: Generals - Zero Hour;9.0;Sep 22, 2003
|
||||
83;Homeworld 2;8.3;Sep 16, 2003
|
||||
83;Galactic Civilizations;8.1;Mar 26, 2003
|
||||
83;EverQuest: The Shadows of Luclin;7.2;Dec 2, 2001
|
||||
83;Orcs Must Die!;8.1;Oct 11, 2011
|
||||
83;Life is Strange;8.6;Jan 19, 2016
|
||||
83;Fable: The Lost Chapters;8.7;Sep 20, 2005
|
||||
83;Unreal Tournament III;8.0;Nov 19, 2007
|
||||
83;The Blackwell Epiphany;7.6;Apr 24, 2014
|
||||
83;The Lord of the Rings Online: Siege of Mirkwood;7.1;Dec 1, 2009
|
||||
83;Out of the Park Baseball 10;8.3;Jun 2, 2009
|
||||
83;Tomb Raider: Anniversary;8.0;Jun 5, 2007
|
||||
83;Need for Speed: Shift;5.7;Sep 15, 2009
|
||||
83;Hearts of Iron II;8.6;Jan 4, 2005
|
||||
83;FIFA Soccer 11;7.6;Sep 28, 2010
|
||||
83;Project CARS;7.0;May 6, 2015
|
||||
83;FIFA Soccer 2003;6.8;Nov 2, 2002
|
||||
83;Icewind Dale II;8.3;Aug 26, 2002
|
||||
83;Age of Empires;8.8;Sep 30, 1997
|
||||
83;EverQuest II: Echoes of Faydwer;8.4;Nov 13, 2006
|
||||
83;EverQuest II;7.3;Nov 8, 2004
|
||||
83;Terraria;8.5;May 16, 2011
|
||||
83;Final Fantasy XIV Online: A Realm Reborn;6.7;Aug 27, 2013
|
||||
83;Card Hunter (2013);7.9;Sep 12, 2013
|
||||
83;Sam & Max: The Devil's Playhouse - Episode 2: The Tomb of Sammun-Mak;7.9;May 18, 2010
|
||||
83;This War of Mine;8.4;Nov 14, 2014
|
||||
83;Darksiders;7.7;Sep 23, 2010
|
||||
83;Tom Clancy's Rainbow Six 3: Raven Shield;8.9;Mar 19, 2003
|
||||
83;World of Outlaws: Sprint Cars;7.9;Feb 11, 2003
|
||||
83;Colin McRae Rally 2.0;8.4;Feb 14, 2001
|
||||
83;Combat Flight Simulator 2: WWII Pacific Theater;8.1;Oct 13, 2000
|
||||
83;Orcs Must Die! 2;7.9;Jul 30, 2012
|
||||
83;Prey;7.9;Jul 11, 2006
|
||||
83;Metal Gear Rising: Revengeance;7.9;Jan 9, 2014
|
||||
83;Starseed Pilgrim;6.3;Apr 16, 2013
|
||||
83;Age of Conan: Rise of the Godslayer;8.4;May 11, 2010
|
||||
83;Alan Wake;8.0;Feb 16, 2012
|
||||
83;Tiger Woods PGA Tour 2002;5.0;Feb 24, 2002
|
||||
83;Monaco: What's Yours Is Mine;7.7;Apr 24, 2013
|
||||
83;Transistor;8.3;May 20, 2014
|
||||
83;Helldivers;6.9;Dec 7, 2015
|
||||
83;Worldwide Soccer Manager 2009;8.1;Nov 18, 2008
|
||||
83;Call of Duty: World at War;7.5;Nov 10, 2008
|
||||
83;Torchlight;8.0;Jan 5, 2010
|
||||
83;Prison Architect;8.3;Oct 6, 2015
|
||||
83;Valdis Story: Abyssal City;8.1;Oct 30, 2013
|
||||
83;Crimson Skies;8.2;Sep 17, 2000
|
||||
83;RACE 07: Official WTCC Game;9.0;Oct 9, 2007
|
||||
83;SUPERHOT;7.6;Feb 25, 2016
|
||||
83;EverQuest II: Rise of Kunark;7.9;Nov 13, 2007
|
||||
83;Dark Age of Camelot: Catacombs;8.6;Dec 7, 2004
|
||||
83;Spore Creature Creator;8.1;Jun 17, 2008
|
||||
83;Colin McRae Rally 2005;7.0;Oct 28, 2004
|
||||
83;Tom Clancy's Splinter Cell: Conviction;5.2;Apr 27, 2010
|
||||
83;Tribes: Vengeance;7.6;Oct 12, 2004
|
||||
83;L.A. Noire: The Complete Edition;7.9;Nov 8, 2011
|
||||
83;GTR Evolution;8.2;Sep 2, 2008
|
||||
83;Life is Strange: Episode 5 - Polarized;8.4;Oct 20, 2015
|
||||
83;BROFORCE;8.0;Oct 15, 2015
|
||||
83;Independence War 2: Edge of Chaos;8.4;Aug 22, 2001
|
||||
83;Myst III: Exile;8.2;May 8, 2001
|
||||
83;Superbrothers: Sword & Sworcery EP;6.4;Apr 16, 2012
|
||||
83;Sid Meier's Civilization IV: Colonization;6.7;Sep 22, 2008
|
||||
83;Europa Universalis III;8.4;Jan 23, 2007
|
||||
83;F1 2011;7.2;Sep 20, 2011
|
||||
83;Prince of Persia: Warrior Within;8.4;Nov 30, 2004
|
||||
83;Danganronpa: Trigger Happy Havoc;7.6;Feb 18, 2016
|
||||
83;Counter-Strike: Global Offensive;7.8;Aug 21, 2012
|
||||
83;Outland;7.1;Sep 29, 2014
|
||||
83;MechWarrior 4: Mercenaries;8.6;Nov 7, 2002
|
||||
83;Metal Gear Solid;9.0;Sep 24, 2000
|
||||
82;Invisible, Inc.;8.0;May 12, 2015
|
||||
82;Dark Souls II: Crown of the Ivory King;7.8;Sep 29, 2014
|
||||
82;Red Faction: Guerrilla;7.5;Sep 15, 2009
|
||||
82;The Book of Unwritten Tales;8.2;Oct 28, 2011
|
||||
82;Capitalism II;9.0;Dec 16, 2001
|
||||
82;Rally Trophy;8.5;Nov 20, 2001
|
||||
82;Dawn of Discovery;8.8;Jun 17, 2009
|
||||
82;City of Villains;8.1;Oct 31, 2005
|
||||
82;Kentucky Route Zero - Act II;8.0;May 31, 2013
|
||||
82;Tom Clancy's Splinter Cell: Blacklist;7.4;Aug 20, 2013
|
||||
82;Act of War: Direct Action;8.5;Mar 15, 2005
|
||||
82;Sokobond;7.8;Aug 27, 2013
|
||||
82;Sam & Max Episode 105: Reality 2.0;8.4;Mar 29, 2007
|
||||
82;Bejeweled 3;8.0;Dec 7, 2010
|
||||
82;Dangerous Waters;8.8;Feb 22, 2005
|
||||
82;Tomb Raider: Legend;7.8;Apr 11, 2006
|
||||
82;Asheron's Call 2: Fallen Kings;8.8;Nov 20, 2002
|
||||
82;Gemini Rue;8.4;Feb 24, 2011
|
||||
82;Antichamber;8.2;Jan 31, 2013
|
||||
82;Neverwinter Nights 2;6.5;Oct 31, 2006
|
||||
82;Dragon Age: Origins - Awakening;7.7;Mar 16, 2010
|
||||
82;Door Kickers;8.2;Oct 20, 2014
|
||||
82;Hearthstone: Blackrock Mountain;6.4;Apr 2, 2015
|
||||
82;Rome: Total War Barbarian Invasion;8.4;Sep 27, 2005
|
||||
82;Hacknet;7.3;Aug 12, 2015
|
||||
82;Tales of Monkey Island Chapter 3: Lair of the Leviathan;7.8;Sep 29, 2009
|
||||
82;Neverwinter Nights 2: Mask of The Betrayer;8.8;Oct 9, 2007
|
||||
82;Sins of a Solar Empire: Rebellion;7.8;Jun 12, 2012
|
||||
82;Broken Sword: The Sleeping Dragon;7.6;Nov 17, 2003
|
||||
82;Age of Wonders: Shadow Magic;8.5;Jul 25, 2003
|
||||
82;Tom Clancy's Ghost Recon: Desert Siege;8.4;Mar 27, 2002
|
||||
82;Warlords Battlecry II;8.5;Mar 11, 2002
|
||||
82;Football Manager Live;2.9;Jan 23, 2009
|
||||
82;Marvel: Ultimate Alliance;8.3;Oct 24, 2006
|
||||
82;The Talos Principle: Road To Gehenna;7.6;Jul 23, 2015
|
||||
82;Lara Croft and the Guardian of Light;8.2;Sep 28, 2010
|
||||
82;Aquaria;8.3;Dec 7, 2007
|
||||
82;Need for Speed: Underground;8.3;Nov 17, 2003
|
||||
82;TrackMania Sunrise;8.5;May 6, 2005
|
||||
82;King's Quest Chapter 1: A Knight to Remember;7.2;Jul 28, 2015
|
||||
82;Dragon Age II;4.4;Mar 8, 2011
|
||||
82;Endless Legend;7.9;Apr 24, 2014
|
||||
82;Tom Clancy's Ghost Recon: Island Thunder;8.3;Sep 25, 2002
|
||||
82;S.T.A.L.K.E.R.: Shadow of Chernobyl;8.4;Mar 20, 2007
|
||||
82;Kero Blaster;6.9;May 11, 2014
|
||||
82;Monday Night Combat;7.3;Jan 24, 2011
|
||||
82;The Wolf Among Us: Episode 3 - A Crooked Mile;8.6;Apr 8, 2014
|
||||
82;Airborne Assault: Red Devils Over Arnhem;7.4;Jun 17, 2002
|
||||
82;Fallout Tactics: Brotherhood of Steel;7.9;Mar 14, 2001
|
||||
82;Need for Speed: Underground 2;8.5;Nov 9, 2004
|
||||
82;NHL Eastside Hockey Manager 2005;6.6;Oct 5, 2005
|
||||
82;Legend of Grimrock;8.1;Apr 11, 2012
|
||||
82;Dominions 3: The Awakening;8.1;Sep 29, 2006
|
||||
82;Bulletstorm;7.7;Feb 22, 2011
|
||||
82;Borderlands 2: Mr. Torgue's Campaign of Carnage;7.3;Nov 20, 2012
|
||||
82;Desktop Dungeons;8.2;Oct 17, 2010
|
||||
82;Fallout: New Vegas - Old World Blues;7.8;Jul 19, 2011
|
||||
82;Crusader Kings II;8.7;Feb 14, 2012
|
||||
82;MVP Baseball 2004;7.9;Mar 9, 2004
|
||||
82;Europa 1400: The Guild;8.6;Nov 18, 2002
|
||||
82;Battle Realms;8.6;Nov 7, 2001
|
||||
82;Warlords Battlecry;8.2;Jul 9, 2000
|
||||
82;Sam & Max Episode 201: Ice Station Santa;8.6;Nov 8, 2007
|
||||
82;Technobabylon;7.8;May 21, 2015
|
||||
82;World of Warcraft: Mists of Pandaria;4.8;Sep 25, 2012
|
||||
82;FIFA 15;4.2;Sep 23, 2014
|
||||
82;Recettear: An Item Shop's Tale;8.6;Sep 10, 2010
|
||||
82;ETHER One;6.9;Mar 25, 2014
|
||||
82;The Vanishing of Ethan Carter;8.1;Sep 25, 2014
|
||||
82;Flight Simulator X: Acceleration;7.3;Oct 23, 2007
|
||||
82;Blood;9.0;May 31, 1997
|
||||
82;Command & Conquer: Red Alert 3;6.8;Oct 28, 2008
|
||||
82;The Walking Dead: Episode 1 - A New Day;8.4;Apr 24, 2012
|
||||
82;Links 2003;6.8;Sep 16, 2002
|
||||
82;Earth & Beyond;7.1;Sep 2, 2002
|
||||
82;Syberia;8.5;Sep 1, 2002
|
||||
82;Virtual Pool 3;7.3;Nov 14, 2000
|
||||
82;The Sims: Livin' Large;6.6;Aug 27, 2000
|
||||
82;DCS: Black Shark;8.5;Apr 13, 2009
|
||||
82;King's Bounty: Armored Princess;8.7;Sep 10, 2010
|
||||
82;Age of Wonders III - Golden Realms;8.5;Sep 18, 2014
|
||||
82;Strong Bad's Cool Game for Attractive People Episode 5: 8-Bit Is Enough;7.5;Dec 15, 2008
|
||||
82;Prince of Persia;7.2;Dec 2, 2008
|
||||
82;Joint Operations: Typhoon Rising;8.7;Jun 15, 2004
|
||||
82;Xpand Rally;7.4;Apr 20, 2006
|
||||
82;Dark Souls II: Crown of the Sunken King;7.3;Jul 22, 2014
|
||||
82;Resident Evil HD Remaster;8.2;Jan 20, 2015
|
||||
82;Celtic Kings: Rage of War;8.5;Aug 21, 2002
|
||||
82;B-17 Flying Fortress: The Mighty 8th;7.3;Dec 13, 2000
|
||||
82;EverQuest: The Scars of Velious;7.8;Dec 4, 2000
|
||||
82;Metro: Last Light;8.6;May 14, 2013
|
||||
82;Rising Storm;8.5;May 30, 2013
|
||||
82;Lethal League;7.4;Aug 27, 2014
|
||||
82;Botanicula;8.3;Apr 19, 2012
|
||||
82;Pro Evolution Soccer 2015;5.8;Nov 13, 2014
|
||||
82;Bookworm Adventures Deluxe;7.9;Dec 20, 2006
|
||||
82;The Lord of the Rings: The Battle for Middle-Earth;8.6;Dec 6, 2004
|
||||
82;Hitman: Blood Money;8.8;May 30, 2006
|
||||
82;Need for Speed: Most Wanted;8.5;Nov 15, 2005
|
||||
82;OlliOlli2: Welcome to Olliwood;5.2;Aug 11, 2015
|
||||
82;WildStar;7.4;Jun 3, 2014
|
||||
82;Broken Age: Act 1;7.7;Jan 28, 2014
|
||||
82;Divinity II: The Dragon Knight Saga;8.2;Nov 5, 2010
|
||||
82;Out of the Park Baseball 9;7.4;Jun 1, 2008
|
||||
82;The Simpsons: Hit & Run;8.0;Nov 13, 2003
|
||||
82;America's Army;6.1;Aug 28, 2002
|
||||
82;Star Trek Bridge Commander;8.1;Feb 27, 2002
|
||||
82;The Last Express;8.9;Mar 31, 1997
|
||||
81;Quake 4;7.5;Oct 11, 2005
|
||||
81;Nidhogg;7.0;Jan 13, 2014
|
||||
81;Battlefield 4;6.0;Oct 29, 2013
|
||||
81;To the Moon;8.9;Sep 7, 2012
|
||||
81;The Sims 3: World Adventures;8.0;Nov 16, 2009
|
||||
81;Painkiller;8.0;Apr 12, 2004
|
||||
81;Airborne Assault: Highway to the Reich;6.1;Dec 10, 2003
|
||||
81;Nancy Drew: Danger on Deception Island;7.7;Oct 1, 2003
|
||||
81;Shadowrun: Hong Kong;7.7;Aug 20, 2015
|
||||
81;Supreme Commander: Forged Alliance;8.9;Nov 6, 2007
|
||||
81;Sunless Sea;7.4;Jul 1, 2014
|
||||
81;The Walking Dead: Season Two Episode 3 - In Harm's Way;8.3;May 13, 2014
|
||||
81;Marvel Heroes 2015;7.9;Jun 4, 2014
|
||||
81;Football Manager 2016;6.4;Nov 13, 2015
|
||||
81;VVVVVV;8.1;Jan 11, 2010
|
||||
81;Darksiders II;7.9;Aug 14, 2012
|
||||
81;Wolfenstein: The New Order;8.2;May 20, 2014
|
||||
81;Lone Survivor;7.2;Apr 23, 2012
|
||||
81;Alien: Isolation;8.4;Oct 6, 2014
|
||||
81;The Witcher;8.8;Oct 30, 2007
|
||||
81;Kentucky Route Zero - Act I;7.5;Jan 7, 2013
|
||||
81;Jade Empire: Special Edition;8.3;Feb 26, 2007
|
||||
81;SWAT 3: Elite Edition;8.4;Oct 6, 2000
|
||||
81;Asheron's Call;8.8;Oct 31, 1999
|
||||
81;Unravel;8.1;Feb 9, 2016
|
||||
81;Midnight Club II;8.0;Jun 30, 2003
|
||||
81;Chessmaster 10th Edition;7.4;Aug 12, 2004
|
||||
81;Age of Empires III;7.7;Oct 18, 2005
|
||||
81;Tales of Monkey Island Chapter 5: Rise of the Pirate God;8.4;Dec 8, 2009
|
||||
81;Castlevania: Lords of Shadow Ultimate Edition;7.3;Aug 27, 2013
|
||||
81;Strong Bad's Cool Game for Attractive People Episode 2: Strong Badia the Free;8.2;Sep 15, 2008
|
||||
81;The Cat Lady;8.7;Dec 4, 2013
|
||||
81;Vessel;7.9;Mar 1, 2012
|
||||
81;Metro 2033;8.1;Mar 16, 2010
|
||||
81;OutRun 2006: Coast 2 Coast;7.8;Jun 27, 2006
|
||||
81;Blur;7.3;May 25, 2010
|
||||
81;Empires: Dawn of the Modern World;8.2;Oct 21, 2003
|
||||
81;Chessmaster 9000;7.7;Aug 31, 2002
|
||||
81;Gothic;8.6;Nov 23, 2001
|
||||
81;Arcanum: Of Steamworks and Magick Obscura;8.9;Aug 22, 2001
|
||||
81;NASCAR Heat;8.6;Sep 27, 2000
|
||||
81;Company of Heroes 2: Ardennes Assault;6.1;Nov 17, 2014
|
||||
81;PlanetSide;7.3;May 20, 2003
|
||||
81;Tales From The Borderlands: Episode 3 - Catch A Ride;8.4;Jun 23, 2015
|
||||
81;The Walking Dead: Season Two Episode 2 - A House Divided;8.6;Mar 4, 2014
|
||||
81;Kingdoms of Amalur: Reckoning;6.6;Feb 7, 2012
|
||||
81;Sam & Max: The Devil's Playhouse - Episode 1: The Penal Zone;8.5;Apr 15, 2010
|
||||
81;Borderlands;7.8;Oct 26, 2009
|
||||
81;DG2: Defense Grid 2;6.7;Sep 23, 2014
|
||||
81;Napoleon: Total War;7.9;Feb 23, 2010
|
||||
81;Overlord;8.1;Jun 26, 2007
|
||||
81;Firewatch;7.2;Feb 9, 2016
|
||||
81;Victoria II: Heart of Darkness;8.7;Apr 16, 2013
|
||||
81;Waveform;7.6;Jan 25, 2013
|
||||
81;The Elder Scrolls IV: Knights of the Nine;7.5;Nov 21, 2006
|
||||
81;Red Orchestra: Ostfront 41-45;8.6;Mar 14, 2006
|
||||
81;Stronghold;8.9;Oct 21, 2001
|
||||
81;Strong Bad's Cool Game for Attractive People Episode 4: Dangeresque 3: The Criminal Projective;8.5;Nov 17, 2008
|
||||
81;Rochard;8.0;Nov 15, 2011
|
||||
81;Fallout 3: Broken Steel;7.3;May 5, 2009
|
||||
81;Tiger Woods PGA Tour 06;8.1;Sep 20, 2005
|
||||
81;RollerCoaster Tycoon 3;4.9;Oct 26, 2004
|
||||
81;Dragon's Dogma: Dark Arisen;8.3;Jan 15, 2016
|
||||
81;Guild Wars 2: Heart of Thorns;7.3;Oct 23, 2015
|
||||
81;AaaaaAAaaaAAAaaAAAAaAAAAA!!! - A Reckless Disregard for Gravity;7.2;Sep 3, 2009
|
||||
81;The Sims 2 University;7.8;Feb 28, 2005
|
||||
81;Far Cry 3: Blood Dragon;8.1;May 1, 2013
|
||||
81;Sid Meier's Civilization: Beyond Earth;5.5;Oct 24, 2014
|
||||
81;Disney's Toontown Online;8.7;Oct 6, 2005
|
||||
81;Combat Mission 3: Afrika Korps;8.4;Dec 3, 2003
|
||||
81;EverQuest: The Planes of Power;8.2;Oct 28, 2002
|
||||
81;Rails Across America;8.0;Sep 18, 2001
|
||||
81;Wasteland 2;7.3;Sep 19, 2014
|
||||
81;Jamestown: Legend of the Lost Colony;7.5;Jun 8, 2011
|
||||
81;Call of Duty: Black Ops;5.1;Nov 9, 2010
|
||||
81;Kohan II: Kings of War;7.9;Sep 20, 2004
|
||||
81;The Age of Decadence;7.9;Oct 15, 2015
|
||||
81;Samorost 3;8.3;Mar 24, 2016
|
||||
81;Order of Battle: Pacific;6.4;Apr 30, 2015
|
||||
81;Empire Earth;8.3;Nov 12, 2001
|
||||
81;Star Trek: Deep Space Nine: The Fallen;7.9;Nov 15, 2000
|
||||
81;Sam & Max Episode 101: Culture Shock;8.7;Oct 18, 2006
|
||||
81;Mirror's Edge (2008);8.1;Jan 12, 2009
|
||||
81;TrackMania 2 Canyon;7.7;Sep 14, 2011
|
||||
81;Sleeping Dogs;8.2;Aug 14, 2012
|
||||
81;Star Wars Jedi Knight: Jedi Academy;8.6;Sep 17, 2003
|
||||
81;Mortal Kombat Komplete Edition;8.7;Aug 6, 2013
|
||||
81;Shadowrun: Dragonfall;8.3;Feb 27, 2014
|
||||
81;Eets;6.4;Mar 29, 2006
|
||||
81;World of Warships;6.6;Sep 17, 2015
|
||||
81;TOCA Race Driver 2: The Ultimate Racing Simulator;8.0;Apr 15, 2004
|
||||
81;Wargame: European Escalation;8.2;Feb 22, 2012
|
||||
81;Dungeon Defenders;7.3;Oct 18, 2011
|
||||
81;Sam & Max: The Devil's Playhouse - Episode 5: The City That Dares Not Sleep;7.9;Aug 30, 2010
|
||||
81;Age of Empires III: The Asian Dynasties;8.5;Oct 23, 2007
|
||||
81;Defense Grid: The Awakening;8.8;Jul 29, 2009
|
||||
81;Codename: Panzers, Phase One;8.8;Sep 30, 2004
|
||||
81;FIFA 16;4.4;Sep 22, 2015
|
||||
81;Europa Universalis IV: Conquest of Paradise;7.7;Jan 14, 2014
|
||||
81;Ghost Master;8.0;Aug 26, 2003
|
||||
81;Divine Divinity;8.5;Sep 22, 2002
|
||||
80;The Book of Unwritten Tales 2;7.7;Feb 20, 2015
|
||||
80;Galactic Civilizations III;6.6;May 14, 2015
|
||||
80;Lovers in a Dangerous Spacetime;7.2;Sep 9, 2015
|
||||
80;Age of Conan: Hyborian Adventures;7.3;May 20, 2008
|
||||
80;Company of Heroes 2: The Western Front Armies;6.8;Jun 23, 2014
|
||||
80;Sid Meier's Civilization V: Gods & Kings;7.7;Jun 19, 2012
|
||||
80;Age of Empires III: The WarChiefs;8.1;Oct 17, 2006
|
||||
80;Metal Gear Solid V: Ground Zeroes;7.7;Dec 18, 2014
|
||||
80;Trials Fusion;6.8;Apr 16, 2014
|
||||
80;Syberia II;8.3;Mar 30, 2004
|
||||
80;Tom Clancy's Ghost Recon;8.4;Nov 13, 2001
|
||||
80;Conquest: Frontier Wars;8.3;Aug 14, 2001
|
||||
80;Gabriel Knight 3: Blood of the Sacred, Blood of the Damned;8.8;Oct 5, 1999
|
||||
80;Westerado: Double Barreled;7.4;Apr 16, 2015
|
||||
80;Anomaly: Warzone Earth;7.3;Apr 8, 2011
|
||||
80;Volume;7.2;Aug 18, 2015
|
||||
80;GRID 2;5.7;May 27, 2013
|
||||
80;The Banner Saga;7.9;Jan 14, 2014
|
||||
80;Sam & Max Episode 202: Moai Better Blues;7.7;Jan 10, 2008
|
||||
80;Age of Wonders III - Eternal Lords;8.4;Apr 14, 2015
|
||||
80;Pro Evolution Soccer 2013;6.8;Sep 25, 2012
|
||||
80;Osmos;7.5;Aug 18, 2009
|
||||
80;Dungeon Siege II;7.9;Aug 16, 2005
|
||||
80;Dead Island;6.8;Sep 6, 2011
|
||||
80;Sam & Max Episode 104: Abe Lincoln Must Die!;7.8;Feb 22, 2007
|
||||
80;Deus Ex: Invisible War;6.3;Dec 2, 2003
|
||||
80;The Sims: Makin' Magic;8.6;Oct 28, 2003
|
||||
80;Tom Clancy's Splinter Cell: Double Agent;5.7;Nov 7, 2006
|
||||
80;Medal of Honor: Pacific Assault;7.4;Nov 4, 2004
|
||||
80;Assassin's Creed: Revelations;7.4;Nov 29, 2011
|
||||
80;Grandia II Anniversary Edition;7.6;Aug 24, 2015
|
||||
80;Assassin's Creed III;6.2;Nov 20, 2012
|
||||
80;Madden NFL 07;7.3;Aug 22, 2006
|
||||
80;Outlast;8.4;Sep 4, 2013
|
||||
80;The Chronicles of Riddick: Assault on Dark Athena;8.0;Apr 7, 2009
|
||||
80;Hearts of Iron II: Doomsday;8.8;Apr 7, 2006
|
||||
80;Dishonored: The Brigmore Witches;8.5;Aug 13, 2013
|
||||
80;Codename: Panzers, Phase Two;8.0;Jul 25, 2005
|
||||
80;Full Spectrum Warrior;7.0;Sep 21, 2004
|
||||
80;AI War: Fleet Command;8.4;May 14, 2009
|
||||
80;Freedom Fighters;8.3;Oct 1, 2003
|
||||
80;NBA Live 2003;8.3;Nov 14, 2002
|
||||
80;The Elder Scrolls III: Tribunal;8.2;Nov 6, 2002
|
||||
80;Elite: Dangerous;6.4;Dec 16, 2014
|
||||
80;Pure;6.9;Sep 16, 2008
|
||||
80;Goodbye Deponia;8.1;Oct 17, 2013
|
||||
80;SWAT 4: The Stetchkov Syndicate;8.3;Feb 28, 2006
|
||||
80;Dropsy;7.3;Sep 10, 2015
|
||||
80;Company of Heroes 2: The British Forces;5.9;Sep 3, 2015
|
||||
80;Ground Control II: Operation Exodus;8.8;Jun 23, 2004
|
||||
80;NBA Live 2004;9.0;Nov 11, 2003
|
||||
80;Brutal Legend;7.8;Feb 26, 2013
|
||||
80;Tomb Raider: Underworld;7.6;Nov 18, 2008
|
||||
80;Oxenfree;7.7;Jan 15, 2016
|
||||
80;Titan Quest: Immortal Throne;8.7;Mar 5, 2007
|
||||
80;La-Mulana (Remake);7.1;Jul 13, 2012
|
||||
80;X-Men Legends II: Rise of Apocalypse;8.4;Sep 20, 2005
|
||||
80;SpellForce 2: Shadow Wars;7.6;May 5, 2006
|
||||
80;Fritz 8 Deluxe;7.8;Dec 1, 2004
|
||||
80;Trine;8.2;Sep 11, 2009
|
||||
80;Dishonored: The Knife of Dunwall;8.1;Apr 16, 2013
|
||||
80;Company of Heroes 2;2.0;Jun 25, 2013
|
||||
80;Natural Selection 2;8.4;Oct 30, 2012
|
||||
80;Read Only Memories;7.2;Oct 5, 2015
|
||||
80;The Sims 3: Into the Future;5.4;Oct 22, 2013
|
||||
80;Borderlands 2: Captain Scarlett and Her Pirate's Booty;7.4;Oct 16, 2012
|
||||
80;FATE;8.3;Sep 19, 2006
|
||||
80;2002 FIFA World Cup;7.9;Apr 30, 2002
|
||||
80;Asheron's Call Dark Majesty;8.1;Nov 4, 2001
|
||||
80;The Bug Butcher;8.2;Jan 19, 2016
|
||||
80;Dragonshard;7.4;Oct 2, 2005
|
||||
80;Icewind Dale: Enhanced Edition;7.6;Oct 30, 2014
|
||||
80;The Magic Circle;7.3;Jul 9, 2015
|
||||
80;Far Cry 4;6.6;Nov 18, 2014
|
||||
80;Super Time Force Ultra;6.6;Aug 25, 2014
|
||||
80;Day of Defeat: Source;9.1;Feb 7, 2006
|
||||
80;Battlefield 2142;6.8;Oct 17, 2006
|
||||
80;World of Tanks;3.8;Sep 6, 2011
|
||||
80;Vampire: The Masquerade - Bloodlines;9.0;Nov 16, 2004
|
||||
80;Dark Souls II: Scholar of the First Sin;7.4;Apr 1, 2015
|
||||
80;Warhammer 40,000: Dawn of War II - Retribution;7.8;Mar 1, 2011
|
||||
80;Panzer Corps;7.5;Jul 11, 2011
|
||||
80;Men of War;8.1;Mar 16, 2009
|
||||
80;Fallen Enchantress: Legendary Heroes;7.7;May 22, 2013
|
||||
80;The Walking Dead: Episode 4 - Around Every Corner;8.5;Oct 10, 2012
|
||||
80;Tales of Monkey Island Chapter 4: The Trial and Execution of Guybrush Threepwood;8.4;Oct 30, 2009
|
||||
80;Penny Arcade Adventures: Episode Two;7.7;Nov 7, 2008
|
||||
80;Time Commando;8.9;Jul 31, 1996
|
||||
80;Sins of a Solar Empire: Entrenchment;8.1;Feb 25, 2009
|
||||
80;F1 2012;6.9;Sep 18, 2012
|
||||
80;Luftrausers;6.8;Mar 18, 2014
|
||||
80;Naruto Shippuden: Ultimate Ninja Storm 3 Full Burst;7.9;Oct 24, 2013
|
||||
80;Stealth Bastard Deluxe;8.3;Nov 28, 2012
|
||||
80;Tom Clancy's Ghost Recon Advanced Warfighter;7.7;May 3, 2006
|
||||
80;LEGO Batman: The Videogame;7.9;Sep 23, 2008
|
||||
80;Stacking;7.9;Mar 6, 2012
|
||||
80;Age of Wonders III;7.8;Mar 31, 2014
|
||||
80;Life is Strange: Episode 3 - Chaos Theory;9.0;May 19, 2015
|
||||
80;The Legend of Heroes: Trails in the Sky SC;8.4;Oct 29, 2015
|
||||
80;Proteus;5.6;Jan 30, 2013
|
||||
80;Robin Hood: The Legend of Sherwood;8.3;Nov 14, 2002
|
||||
80;Soldier of Fortune II: Double Helix;7.3;May 20, 2002
|
||||
80;RollerCoaster Tycoon: Loopy Landscapes;9.0;Sep 30, 2000
|
||||
80;Toki Tori;7.9;Jan 28, 2010
|
||||
80;RoboBlitz;8.3;Nov 7, 2006
|
||||
80;Wargame: AirLand Battle;8.1;May 29, 2013
|
||||
80;Football Manager 2015;6.0;Nov 7, 2014
|
||||
80;The Suffering;8.2;Jun 8, 2004
|
||||
80;Gish;7.2;Sep 17, 2004
|
||||
80;Axiom Verge;8.2;May 14, 2015
|
||||
80;Driver: San Francisco;7.0;Sep 27, 2011
|
||||
80;The Corporate Machine;7.5;Jul 14, 2001
|
||||
80;Dungeons & Dragons: Chronicles of Mystara;6.7;Jun 18, 2013
|
||||
80;Disciples II: Rise of the Elves;8.1;Nov 25, 2003
|
||||
80;MechCommander 2;8.3;Jul 18, 2001
|
||||
80;Waterloo: Napoleon's Last Battle;7.5;Mar 25, 2001
|
||||
80;Chessmaster 8000;6.4;Nov 14, 2000
|
||||
80;Circle of Blood;8.6;Sep 30, 1996
|
||||
80;BioShock Infinite: Burial at Sea - Episode Two;8.5;Mar 25, 2014
|
||||
80;S.T.A.L.K.E.R.: Call of Pripyat;8.7;Feb 2, 2010
|
||||
80;The Walking Dead: Season Two - A Telltale Games Series;8.3;Dec 17, 2013
|
||||
80;FLY'N;8.2;Nov 9, 2012
|
||||
80;Total War: Attila;7.3;Feb 17, 2015
|
||||
80;The Wolf Among Us;8.8;Oct 11, 2013
|
||||
80;Nancy Drew: Secret of the Old Clock;8.1;Jul 26, 2005
|
||||
80;ArcheAge;3.6;Sep 16, 2014
|
||||
80;CAPSIZED;7.1;Apr 29, 2011
|
||||
80;Microsoft Flight Simulator X;7.6;Oct 17, 2006
|
||||
80;Myst V: End of Ages;7.8;Sep 19, 2005
|
||||
80;Railroad Tycoon 3;7.7;Oct 23, 2003
|
||||
80;Hostile Waters: Antaeus Rising;8.1;Jun 13, 2001
|
||||
79;Dustforce;7.9;Jan 17, 2012
|
||||
79;Empire Earth II;7.0;Apr 26, 2005
|
||||
79;Fallout 3: Point Lookout;7.8;Jun 23, 2009
|
||||
79;Test Drive Unlimited;8.1;Mar 20, 2007
|
||||
79;Dying Light: The Following;8.3;Feb 9, 2016
|
||||
79;The Path;7.0;Mar 18, 2009
|
||||
79;Dungeon of the Endless;8.0;Oct 27, 2014
|
||||
79;Revenge of the Titans;7.6;May 24, 2010
|
||||
79;Bookworm Adventures: Volume 2;7.6;Jul 30, 2009
|
||||
79;F1 2001;7.5;Oct 14, 2001
|
||||
79;Brothers in Arms: Hell's Highway;7.9;Oct 7, 2008
|
||||
79;Star Wars: Empire at War;8.4;Feb 15, 2006
|
||||
79;Dariusburst: Chronicle Saviours;8.3;Dec 3, 2015
|
||||
79;Europa Universalis: Rome - Vae Victis;8.6;Nov 19, 2008
|
||||
79;Silent Hunter: Wolves of the Pacific;6.5;Mar 20, 2007
|
||||
79;Pillars of Eternity: The White March - Part 2;6.7;Feb 16, 2016
|
||||
79;1701 A.D.;8.3;Nov 6, 2006
|
||||
79;Stasis;7.6;Aug 31, 2015
|
||||
79;Pro Evolution Soccer 2009;7.4;Nov 12, 2008
|
||||
79;Return to Mysterious Island;8.5;Nov 2, 2004
|
||||
79;Jotun;7.0;Sep 29, 2015
|
||||
79;Else Heart.Break();7.5;Sep 24, 2015
|
||||
79;Kohan: Ahriman's Gift;8.7;Nov 5, 2001
|
||||
79;Emperor: Battle for Dune;8.3;Jun 12, 2001
|
||||
79;Trackmania Turbo;6.9;Mar 24, 2016
|
||||
79;Cart Life;5.9;Jul 29, 2010
|
||||
79;Sword of the Stars: Born of Blood;8.1;Jun 5, 2007
|
||||
79;Worms Reloaded;6.7;Aug 26, 2010
|
||||
79;Warhammer: End Times - Vermintide;7.9;Oct 23, 2015
|
||||
79;Euro Truck Simulator 2;8.7;Jan 16, 2013
|
||||
79;Tropico 3;8.2;Oct 20, 2009
|
||||
79;Cities: Skylines - After Dark;7.9;Sep 24, 2015
|
||||
79;Runaway: A Twist of Fate;8.5;Apr 21, 2011
|
||||
79;Tales of Monkey Island Chapter 1: Launch of the Screaming Narwhal;8.2;Jul 7, 2009
|
||||
79;Bloodline Champions;8.0;Jan 13, 2011
|
||||
79;The Sims: Superstar;8.2;May 12, 2003
|
||||
79;NBA Live 2005;8.5;Oct 26, 2004
|
||||
79;Valiant Hearts: The Great War;8.6;Jun 25, 2014
|
||||
79;Payday 2;3.4;Aug 13, 2013
|
||||
79;Dungeons of Dredmor;7.8;Jul 13, 2011
|
||||
79;Geometry Wars 3: Dimensions;6.2;Nov 25, 2014
|
||||
79;Assassin's Creed: Director's Cut Edition;7.5;Apr 8, 2008
|
||||
79;Puzzle Dimension;7.6;Jun 21, 2010
|
||||
79;Split/Second;8.2;May 18, 2010
|
||||
79;Sang-Froid: Tales of Werewolves;7.9;Apr 5, 2013
|
||||
79;The Incredible Adventures of Van Helsing: Final Cut;7.2;Oct 7, 2015
|
||||
79;Hitman: Absolution;7.0;Nov 19, 2012
|
||||
79;Call of Juarez: Gunslinger;8.2;May 22, 2013
|
||||
79;Rome: Total War Alexander;7.6;Jun 19, 2006
|
||||
79;Strong Bad's Cool Game for Attractive People Episode 3: Baddest of the Bands;8.1;Oct 27, 2008
|
||||
79;Sam & Max Episode 102: Situation: Comedy;7.9;Dec 20, 2006
|
||||
79;Tropico 3: Absolute Power;7.7;May 17, 2010
|
||||
79;Sam & Max Episode 106: Bright Side of the Moon;7.3;Apr 26, 2007
|
||||
79;Day of Defeat;9.3;May 6, 2003
|
||||
79;Space Empires: IV;8.3;Nov 6, 2000
|
||||
79;Resident Evil 4: Ultimate HD Edition;7.7;Feb 27, 2014
|
||||
79;Sam & Max Episode 203: Night of the Raving Dead;8.2;Feb 12, 2008
|
||||
79;FlatOut: Ultimate Carnage;7.6;Sep 2, 2008
|
||||
79;Guitar Hero III: Legends of Rock;7.2;Nov 13, 2007
|
||||
79;Sid Meier's Civilization: Beyond Earth - Rising Tide;5.9;Oct 9, 2015
|
||||
79;Memoria;8.5;Aug 29, 2013
|
||||
79;The Last Door;7.8;May 20, 2014
|
||||
79;Shadowgrounds Survivor;7.8;Dec 6, 2007
|
||||
79;Gothic II;8.8;Oct 28, 2003
|
||||
79;Port Royale;8.2;Jun 4, 2003
|
||||
79;Deadly Dozen: Pacific Theater;7.9;Oct 31, 2002
|
||||
79;Shattered Galaxy;8.3;Aug 21, 2001
|
||||
79;Close Combat: Invasion: Normandy;8.2;Oct 10, 2000
|
||||
79;King's Bounty: The Legend;8.6;Sep 23, 2008
|
||||
79;Rage;5.1;Oct 4, 2011
|
||||
79;The Misadventures of P.B. Winterbottom;8.3;Apr 20, 2010
|
||||
79;Uru: Ages Beyond Myst;7.4;Nov 11, 2003
|
||||
79;Guild Wars: Eye of the North;8.6;Aug 28, 2007
|
||||
79;Tales From The Borderlands: Episode 4 - Escape Plan Bravo;8.4;Aug 18, 2015
|
||||
79;EverQuest: Lost Dungeons of Norrath;7.0;Sep 8, 2003
|
||||
79;Battlefield 1942: Secret Weapons of WWII;8.5;Sep 4, 2003
|
||||
79;The Sims: Unleashed;8.0;Sep 23, 2002
|
||||
79;Race the Sun;7.5;Aug 19, 2013
|
||||
79;The Sims 3: Pets;6.1;Oct 18, 2011
|
||||
79;Prototype;7.9;Jun 10, 2009
|
||||
79;Stick it to the Man!;7.2;Dec 13, 2013
|
||||
79;Street Fighter X Tekken;6.4;May 11, 2012
|
||||
79;Frozen Cortex;6.5;Feb 19, 2015
|
||||
79;Free Realms;6.4;Apr 29, 2009
|
||||
79;Homeworld: Deserts of Kharak;8.0;Jan 20, 2016
|
||||
79;Don't Starve;8.3;Apr 23, 2013
|
||||
79;Assault Android Cactus;7.0;Sep 23, 2015
|
||||
79;Trainz;7.2;Feb 10, 2002
|
||||
79;King Arthur: The Role-Playing Wargame;7.9;Nov 24, 2009
|
||||
79;Chivalry: Medieval Warfare;7.8;Oct 16, 2012
|
||||
79;Overlord II;8.1;Jun 23, 2009
|
||||
79;F.E.A.R. 2: Project Origin;7.8;Feb 10, 2009
|
||||
79;Tom Clancy's Rainbow Six Siege;6.9;Dec 1, 2015
|
||||
79;The Settlers 7: Paths to a Kingdom;5.2;Mar 23, 2010
|
||||
79;RollerCoaster Tycoon 3: Soaked!;2.9;Jun 23, 2005
|
||||
79;Dark Souls II: Crown of the Old Iron King;7.6;Aug 26, 2014
|
||||
79;TrackMania 2 Valley;8.3;Jul 4, 2013
|
||||
79;State of Decay;6.8;Nov 5, 2013
|
||||
79;LEGO Harry Potter: Years 1-4;7.8;Jun 29, 2010
|
||||
79;Rift: Storm Legion;7.8;Nov 13, 2012
|
||||
79;Crayon Physics Deluxe;7.6;Jan 7, 2009
|
||||
79;Nancy Drew: Legend of the Crystal Skull;8.5;Oct 8, 2007
|
||||
79;EverQuest II: Desert of Flames;7.8;Sep 12, 2005
|
||||
79;SimCity 4: Rush Hour;8.6;Sep 22, 2003
|
||||
79;Uncommon Valor: Campaign for the South Pacific;7.6;Dec 2, 2002
|
||||
79;Global Operations;8.3;Mar 25, 2002
|
||||
78;Apotheon;7.8;Feb 3, 2015
|
||||
78;Need for Speed: Most Wanted - A Criterion Game;4.4;Oct 30, 2012
|
||||
78;Star Wars: Battlefront II;8.8;Oct 31, 2005
|
||||
78;The Walking Dead: Season Two Episode 1 - All That Remains;8.5;Dec 17, 2013
|
||||
78;The Journey Down: Chapter Two;7.1;Aug 25, 2014
|
||||
78;Star Trek: Elite Force II;7.6;Jun 25, 2003
|
||||
78;Zuma's Revenge!;7.9;Sep 15, 2009
|
||||
78;Baldur's Gate: Enhanced Edition;7.0;Nov 28, 2012
|
||||
78;Doom 3: Resurrection of Evil;6.0;Apr 4, 2005
|
||||
78;LEGO Indiana Jones: The Original Adventures;7.7;Jun 3, 2008
|
||||
78;NASCAR Thunder 2004;7.5;Sep 16, 2003
|
||||
78;Transformers: Fall of Cybertron;7.8;Aug 21, 2012
|
||||
78;FIFA Soccer 06;6.7;Oct 4, 2005
|
||||
78;DeadCore;6.8;Oct 17, 2014
|
||||
78;The Walking Dead: Season Two Episode 5 - No Going Back;8.5;Aug 26, 2014
|
|
@ -0,0 +1,32 @@
|
|||
# Race-Condition finden und beheben
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
In einem gegebenen Programm Race-Conditions finden und durch den Einsatz von kritischen Abschnitten beheben.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.threads.race_condition](../sources/src/main/java/pr2/threads/race_condition/).
|
||||
|
||||
In dieser Aufgabe haben Sie ein defektes Programm vor sich, das aufgrund von Race-Conditions nicht richtig funktionieren kann.
|
||||
|
||||
Schauen Sie sich den Quelltext des Programms genau an und versuchen Sie die Funktionsweise zu verstehen. Lassen Sie das Programm laufen und betrachten Sie die Fehlermeldungen und Ausgaben. Mit großer Wahrscheinlichkeit wird das Programm abstürzen. Wenn nicht, starten Sie es mehrmals, bis ein Fehler auftritt.
|
||||
|
||||
Versuchen Sie die Ursache des Fehlers zu verstehen und überlegen Sie sich, wo genau die Race-Condition vorliegt. Wahrscheinlich wird der erste Fehler aus der Klasse `ArrayList` stammen. Dies ist aber nicht die einzige Race-Condition im Programm, es gibt noch eine zweite.
|
||||
|
||||
Beheben Sie die Race-Condition durch die Verwendung von kritischen Abschnitten und lassen Sie das Programm danach erneut mehrfach laufen. Wenn bei keinem der Durchläufe ein Fehler auftritt, gilt die Aufgabe als gelöst.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,994 @@
|
|||
96;Half-Life 2;9.2;Nov 16, 2004
|
||||
96;Grand Theft Auto V;7.8;Apr 14, 2015
|
||||
96;The Orange Box;9.3;Oct 10, 2007
|
||||
96;Half-Life;9.1;Oct 31, 1998
|
||||
96;BioShock;8.4;Aug 21, 2007
|
||||
95;Baldur's Gate II: Shadows of Amn;9.2;Sep 24, 2000
|
||||
95;Portal 2;8.8;Apr 19, 2011
|
||||
94;The Elder Scrolls V: Skyrim;8.1;Nov 11, 2011
|
||||
94;Mass Effect 2;8.7;Jan 26, 2010
|
||||
94;Grand Theft Auto: Vice City;8.8;May 12, 2003
|
||||
94;Civilization II;9.0;Feb 29, 1996
|
||||
94;Quake;8.8;Jun 22, 1996
|
||||
94;BioShock Infinite;8.5;Mar 26, 2013
|
||||
94;The Elder Scrolls IV: Oblivion;8.0;Mar 20, 2006
|
||||
94;Grim Fandango;9.1;Sep 30, 1998
|
||||
94;Diablo;8.7;Nov 30, 1996
|
||||
94;Sid Meier's Civilization IV;8.2;Oct 25, 2005
|
||||
93;The Witcher 3: Wild Hunt;9.1;May 19, 2015
|
||||
93;Company of Heroes;8.8;Sep 13, 2006
|
||||
93;Unreal Tournament 2004;8.9;Mar 16, 2004
|
||||
93;Starcraft II: Wings of Liberty;8.2;Jul 27, 2010
|
||||
93;Minecraft;7.4;May 10, 2009
|
||||
93;Grand Theft Auto III;8.4;May 20, 2002
|
||||
93;Homeworld;8.9;Aug 31, 1999
|
||||
93;Star Wars: Knights of the Old Republic;9.0;Nov 18, 2003
|
||||
93;World of Warcraft;7.2;Nov 23, 2004
|
||||
93;Grand Theft Auto: San Andreas;8.8;Jun 7, 2005
|
||||
92;Call of Duty 4: Modern Warfare;8.5;Nov 5, 2007
|
||||
92;Warcraft III: Reign of Chaos;9.1;Jul 3, 2002
|
||||
92;The Sims;7.9;Jan 31, 2000
|
||||
92;Sid Meier's Gettysburg!;7.7;Sep 30, 1997
|
||||
92;World Soccer Winning Eleven 7 International;7.9;Apr 9, 2004
|
||||
92;Team Fortress 2;9.2;Apr 8, 2008
|
||||
92;System Shock 2;9.1;Aug 11, 1999
|
||||
92;Tom Clancy's Splinter Cell: Chaos Theory;8.8;Mar 28, 2005
|
||||
92;Undertale;8.2;Sep 15, 2015
|
||||
92;Rome: Total War;9.1;Sep 22, 2004
|
||||
92;Thief: The Dark Project;9.1;Nov 30, 1998
|
||||
92;Age of Empires II: The Age of Kings;9.0;Sep 30, 1999
|
||||
92;Unreal Tournament (1999);9.1;Nov 30, 1999
|
||||
92;Sid Meier's Alpha Centauri;9.1;Feb 12, 1999
|
||||
92;Galactic Civilizations II: Twilight of the Arnor;8.4;Apr 30, 2008
|
||||
92;Tiger Woods PGA Tour 2003;6.0;Oct 31, 2002
|
||||
91;Dishonored;8.4;Oct 9, 2012
|
||||
91;Medal of Honor: Allied Assault;8.6;Jan 20, 2002
|
||||
91;Myth: The Fallen Lords;8.8;Oct 31, 1997
|
||||
91;World of Warcraft: Wrath of the Lich King;7.4;Nov 13, 2008
|
||||
91;F1 Challenge '99-'02;8.3;Jun 24, 2003
|
||||
91;Baldur's Gate;9.0;Nov 30, 1998
|
||||
91;IL-2 Sturmovik;8.7;Nov 18, 2001
|
||||
91;FreeSpace 2;8.8;Sep 30, 1999
|
||||
91;Metal Gear Solid V: The Phantom Pain;7.7;Sep 1, 2015
|
||||
91;Tom Clancy's Splinter Cell;8.6;Feb 19, 2003
|
||||
91;Crysis;8.0;Nov 13, 2007
|
||||
91;World of Warcraft: The Burning Crusade;7.9;Jan 16, 2007
|
||||
91;Tiger Woods PGA Tour 2005;4.6;Sep 20, 2004
|
||||
91;The Longest Journey;8.9;Nov 16, 2000
|
||||
91;Tony Hawk's Pro Skater 2;8.5;Oct 31, 2000
|
||||
91;Star Wars Jedi Knight: Dark Forces II;8.5;Sep 30, 1997
|
||||
91;Batman: Arkham Asylum;8.7;Sep 15, 2009
|
||||
91;Galactic Civilizations II: Dark Avatar;8.2;Feb 14, 2007
|
||||
91;The Operative: No One Lives Forever;8.9;Nov 9, 2000
|
||||
91;Battlefield 2;8.4;Jun 21, 2005
|
||||
91;Street Fighter IV;8.0;Jul 1, 2009
|
||||
91;Fallout 3;7.9;Oct 28, 2008
|
||||
91;Batman: Arkham City;8.6;Nov 22, 2011
|
||||
91;Fez;6.5;May 1, 2013
|
||||
91;Planescape: Torment;9.3;Nov 30, 1999
|
||||
91;Neverwinter Nights;8.1;Jun 16, 2002
|
||||
91;No One Lives Forever 2: A Spy in H.A.R.M.'s Way;8.7;Sep 30, 2002
|
||||
91;Dragon Age: Origins;8.6;Nov 3, 2009
|
||||
91;Mark of the Ninja;8.0;Oct 16, 2012
|
||||
91;Dark Souls II;7.1;Apr 25, 2014
|
||||
91;Call of Duty;8.5;Oct 29, 2003
|
||||
91;Madden NFL 2004;8.2;Aug 12, 2003
|
||||
90;The Sims 2;8.8;Sep 14, 2004
|
||||
90;World of Warcraft: Cataclysm;5.5;Dec 7, 2010
|
||||
90;World of Goo;8.5;Oct 21, 2008
|
||||
90;Spelunky;7.2;Aug 8, 2013
|
||||
90;Black & White;7.6;Mar 26, 2001
|
||||
90;Portal;9.3;Apr 8, 2008
|
||||
90;NHL 2001;6.9;Sep 28, 2000
|
||||
90;Tony Hawk's Pro Skater 3;8.6;Mar 28, 2002
|
||||
90;Deus Ex;9.3;Jun 26, 2000
|
||||
90;Half-Life 2: Episode Two;9.2;Oct 10, 2007
|
||||
90;Braid;8.6;Jan 26, 2010
|
||||
90;The Chronicles of Riddick: Escape From Butcher Bay - Developer's Cut;8.7;Dec 8, 2004
|
||||
90;Sid Meier's Civilization III;8.4;Oct 30, 2001
|
||||
90;Silent Hunter III;7.8;Mar 15, 2005
|
||||
90;Sid Meier's Civilization V;7.8;Sep 21, 2010
|
||||
90;Falcon 4.0: Allied Force;8.6;Jun 28, 2005
|
||||
90;Deus Ex: Human Revolution;8.5;Aug 23, 2011
|
||||
90;Dark Souls III;8.2;Apr 12, 2016
|
||||
90;Flight Simulator 2002;8.4;Oct 19, 2001
|
||||
90;Brothers: A Tale of Two Sons;8.5;Sep 3, 2013
|
||||
90;Dota 2;6.2;Jul 9, 2013
|
||||
90;Guild Wars 2;7.9;Aug 28, 2012
|
||||
90;Freedom Force;8.0;Mar 24, 2002
|
||||
90;GTR 2;8.7;Sep 29, 2006
|
||||
90;Grand Theft Auto IV;6.5;Dec 2, 2008
|
||||
90;Total War: Shogun 2;8.3;Mar 15, 2011
|
||||
90;Empire: Total War;6.9;Mar 3, 2009
|
||||
90;Command & Conquer: Red Alert;8.9;Oct 31, 1996
|
||||
89;Star Wars Jedi Knight II: Jedi Outcast;8.6;Mar 26, 2002
|
||||
89;The Walking Dead: A Telltale Games Series;8.7;Dec 11, 2012
|
||||
89;Age of Mythology;8.9;Nov 1, 2002
|
||||
89;Sacrifice;8.8;Nov 5, 2000
|
||||
89;The Witcher 3: Wild Hunt - Hearts of Stone;8.4;Oct 13, 2015
|
||||
89;Pillars of Eternity;8.3;Mar 26, 2015
|
||||
89;The Elder Scrolls III: Morrowind;9.0;May 1, 2002
|
||||
89;Rocksmith 2014 Edition;7.9;Oct 22, 2013
|
||||
89;Fallout;8.9;Sep 30, 1997
|
||||
89;World Soccer Winning Eleven 9;8.4;Apr 28, 2006
|
||||
89;Worldwide Soccer Manager 2005;8.7;Dec 7, 2004
|
||||
89;Left 4 Dead;9.2;Nov 18, 2008
|
||||
89;Left 4 Dead 2;8.5;Nov 17, 2009
|
||||
89;NASCAR Racing 2002 Season;5.8;Feb 14, 2002
|
||||
89;Mass Effect;8.6;May 28, 2008
|
||||
89;Combat Mission: Barbarossa to Berlin;8.3;Oct 29, 2002
|
||||
89;Homeworld: Cataclysm;8.9;Sep 7, 2000
|
||||
89;The Walking Dead: Episode 5 - No Time Left;8.9;Nov 21, 2012
|
||||
89;Guild Wars;8.4;Apr 26, 2005
|
||||
89;Borderlands 2;8.2;Sep 18, 2012
|
||||
89;Max Payne;9.1;Jul 23, 2001
|
||||
89;Out of the Park Baseball 15;7.2;Apr 21, 2014
|
||||
89;World in Conflict;8.1;Sep 18, 2007
|
||||
89;NASCAR Racing 4;8.2;Feb 6, 2001
|
||||
89;Duke Nukem 3D;8.8;Jan 31, 1996
|
||||
89;Far Cry;8.0;Mar 23, 2004
|
||||
89;FIFA Soccer 12;7.1;Sep 27, 2011
|
||||
89;XCOM: Enemy Unknown;8.2;Oct 9, 2012
|
||||
89;Mass Effect 3;5.4;Mar 6, 2012
|
||||
89;Rise of Nations;9.0;May 20, 2003
|
||||
89;NASCAR Racing 2003 Season;8.6;Feb 14, 2003
|
||||
89;Descent 3;8.3;Jun 14, 2000
|
||||
89;The Curse of Monkey Island;9.1;Oct 31, 1997
|
||||
89;Battlefield 3;7.5;Oct 25, 2011
|
||||
89;Battlefield 1942;8.6;Sep 10, 2002
|
||||
89;Madden NFL 2003;8.4;Aug 12, 2002
|
||||
89;DiRT 2;8.3;Dec 10, 2009
|
||||
89;Stardew Valley;8.5;Feb 26, 2016
|
||||
89;Prince of Persia: The Sands of Time;8.6;Nov 30, 2003
|
||||
89;Railroad Tycoon II;8.4;Oct 31, 1998
|
||||
88;Microsoft Flight Simulator 2004: A Century of Flight;8.2;Jul 29, 2003
|
||||
88;Medieval: Total War;8.8;Aug 19, 2002
|
||||
88;Mafia;9.1;Aug 27, 2002
|
||||
88;LIMBO;8.1;Aug 2, 2011
|
||||
88;Nuclear Throne;7.4;Dec 5, 2015
|
||||
88;Crusader Kings II: The Old Gods;8.8;May 28, 2013
|
||||
88;Assassin's Creed: Brotherhood;8.2;Mar 22, 2011
|
||||
88;Superbike 2001;6.5;Oct 9, 2000
|
||||
88;F.E.A.R.;8.3;Oct 17, 2005
|
||||
88;Kerbal Space Program;8.1;Apr 27, 2015
|
||||
88;Tribes 2;8.5;Mar 28, 2001
|
||||
88;Age of Empires II: The Conquerors Expansion;9.0;Aug 24, 2000
|
||||
88;Tiger Woods PGA Tour 2004;8.8;Sep 22, 2003
|
||||
88;Warcraft III: The Frozen Throne;9.0;Jul 1, 2003
|
||||
88;Starcraft;9.1;Apr 1, 1998
|
||||
88;Far Cry 3;8.2;Dec 4, 2012
|
||||
88;XCOM 2;7.0;Feb 5, 2016
|
||||
88;World Soccer Winning Eleven 8 International;8.5;Feb 16, 2005
|
||||
88;Torchlight II;8.6;Sep 20, 2012
|
||||
88;Myth II: Soulblighter;9.0;Nov 30, 1998
|
||||
88;Return to Castle Wolfenstein;8.7;Nov 19, 2001
|
||||
88;Shogo: Mobile Armor Division;8.9;Sep 30, 1998
|
||||
88;Thirty Flights of Loving;5.0;Aug 20, 2012
|
||||
88;Hearthstone: Heroes of Warcraft;6.3;Mar 11, 2014
|
||||
88;Medieval II: Total War;8.9;Nov 13, 2006
|
||||
88;F1 2002;7.6;Jun 13, 2002
|
||||
88;The Stanley Parable;8.0;Oct 17, 2013
|
||||
88;BioShock 2;8.0;Feb 9, 2010
|
||||
88;Counter-Strike: Source;8.9;Sep 26, 2005
|
||||
88;Starcraft II: Legacy of the Void;8.3;Nov 10, 2015
|
||||
88;Diablo III;4.0;May 15, 2012
|
||||
88;Rise of Nations: Thrones & Patriots;8.8;Apr 27, 2004
|
||||
88;Sid Meier's Pirates!;8.3;Nov 22, 2004
|
||||
88;EVE Online: Special Edition;7.8;Mar 10, 2009
|
||||
88;Guacamelee! Gold Edition;7.3;Aug 8, 2013
|
||||
88;Armadillo Run;8.2;Apr 22, 2006
|
||||
88;Dark Age of Camelot;8.9;Sep 1, 2001
|
||||
88;Baldur's Gate II: Throne of Bhaal;8.9;Jun 21, 2001
|
||||
88;Counter-Strike;9.3;Nov 8, 2000
|
||||
88;Tony Hawk's Pro Skater 4;8.4;Aug 27, 2003
|
||||
88;Ori and the Blind Forest;8.7;Mar 11, 2015
|
||||
88;Diablo II;8.8;Jun 29, 2000
|
||||
88;The Witcher 2: Assassins of Kings;8.5;May 17, 2011
|
||||
87;Plants vs. Zombies;8.9;Aug 18, 2009
|
||||
87;Doom 3;7.5;Aug 3, 2004
|
||||
87;Super Meat Boy;8.3;Apr 5, 2011
|
||||
87;Football Manager 2010;9.1;Nov 3, 2009
|
||||
87;Oddworld: Abe's Oddysee - New 'n' Tasty;7.8;Feb 25, 2015
|
||||
87;Tom Clancy's Splinter Cell: Pandora Tomorrow;8.0;Mar 23, 2004
|
||||
87;Europa Universalis II;8.8;Nov 12, 2001
|
||||
87;Burnout Paradise: The Ultimate Box;7.5;Feb 5, 2009
|
||||
87;Battlefield: Bad Company 2;8.3;Mar 2, 2010
|
||||
87;GRID;7.9;Jun 3, 2008
|
||||
87;Crypt of the NecroDancer;7.7;Apr 23, 2015
|
||||
87;Sins of a Solar Empire;8.2;Feb 4, 2008
|
||||
87;MechWarrior 4: Vengeance;8.2;Nov 23, 2000
|
||||
87;Thief II: The Metal Age;9.1;Feb 29, 2000
|
||||
87;Diablo II: Lord of Destruction;9.1;Jun 27, 2001
|
||||
87;Monkey Island 2 Special Edition: LeChuck's Revenge;9.0;Jul 7, 2010
|
||||
87;Half-Life 2: Episode One;8.6;Jun 1, 2006
|
||||
87;The Swapper;8.7;May 30, 2013
|
||||
87;Hitman 2: Silent Assassin;8.2;Oct 1, 2002
|
||||
87;Year Walk;7.0;Mar 6, 2014
|
||||
87;Max Payne 3;7.6;Jun 1, 2012
|
||||
87;TowerFall Ascension;6.6;Mar 11, 2014
|
||||
87;Battlefield 3: Armored Kill;7.0;Sep 11, 2012
|
||||
87;NHL 2002;8.7;Sep 17, 2001
|
||||
87;Icewind Dale;8.3;Jun 29, 2000
|
||||
87;The Witness;6.6;Jan 26, 2016
|
||||
87;Brothers in Arms: Road to Hill 30;7.1;Mar 15, 2005
|
||||
87;Kohan: Immortal Sovereigns;8.6;Mar 14, 2001
|
||||
87;Day of the Tentacle Remastered;7.9;Mar 21, 2016
|
||||
87;Dead Space 2;8.3;Jan 25, 2011
|
||||
87;Diablo III: Reaper of Souls;6.6;Mar 25, 2014
|
||||
87;Shogun: Total War Warlord Edition;8.7;Aug 13, 2001
|
||||
87;Serious Sam: The First Encounter;8.4;Mar 21, 2001
|
||||
87;Grand Prix 3;8.3;Aug 24, 2000
|
||||
87;Call of Duty: United Offensive;8.3;Sep 14, 2004
|
||||
87;Divinity: Original Sin;8.7;Jan 17, 2014
|
||||
87;Company of Heroes: Opposing Fronts;8.6;Sep 24, 2007
|
||||
87;Psychonauts;8.9;Apr 19, 2005
|
||||
87;Gears of War;7.8;Nov 6, 2007
|
||||
87;Out of the Park Baseball 4;7.8;Feb 28, 2002
|
||||
87;Europa Universalis IV;8.7;Aug 13, 2013
|
||||
87;NHL 2004;8.2;Sep 22, 2003
|
||||
87;Zeus: Master of Olympus;9.0;Oct 22, 2000
|
||||
87;World of Warcraft: Warlords of Draenor;6.0;Nov 13, 2014
|
||||
87;Warhammer 40,000: Dawn of War - Dark Crusade;8.9;Oct 9, 2006
|
||||
87;Commandos 2: Men of Courage;8.8;Sep 20, 2001
|
||||
86;Tales From The Borderlands: Episode 5 - The Vault of the Traveler;8.7;Oct 20, 2015
|
||||
86;Bastion;8.6;Aug 16, 2011
|
||||
86;Gone Home;5.4;Aug 15, 2013
|
||||
86;Pac-Man Championship Edition DX +;7.3;Sep 24, 2013
|
||||
86;Supreme Commander;8.3;Feb 20, 2007
|
||||
86;Total War: Shogun 2 - Fall of the Samurai;8.4;Mar 23, 2012
|
||||
86;Startopia;8.7;Jun 19, 2001
|
||||
86;Enemy Engaged: RAH-66 Comanche Versus Ka-52 Hokum;8.3;Jul 31, 2000
|
||||
86;Fallout 2;9.2;Sep 30, 1998
|
||||
86;Final Fantasy XIV: Heavensward;7.7;Jun 23, 2015
|
||||
86;Football Manager 2013;6.7;Nov 1, 2012
|
||||
86;Out of the Park Baseball 14;8.6;Apr 15, 2013
|
||||
86;The Witcher: Enhanced Edition;8.5;Sep 16, 2008
|
||||
86;Borderlands: The Secret Armory of General Knoxx;7.6;Feb 25, 2010
|
||||
86;Call of Duty 2;8.3;Oct 25, 2005
|
||||
86;Astebreed;7.3;May 30, 2014
|
||||
86;Ground Control;7.8;May 31, 2000
|
||||
86;Rise of the Tomb Raider;8.0;Jan 28, 2016
|
||||
86;Resident Evil 5;7.1;Sep 18, 2009
|
||||
86;Saints Row IV;7.4;Aug 20, 2013
|
||||
86;Black Mesa;9.0;Sep 14, 2012
|
||||
86;EverQuest: Omens of War;7.7;Sep 13, 2004
|
||||
86;Steel Beasts;8.4;Sep 24, 2000
|
||||
86;Total Annihilation;8.9;Sep 30, 1997
|
||||
86;Need for Speed: Hot Pursuit;6.7;Nov 16, 2010
|
||||
86;FIFA Soccer 13;6.6;Sep 25, 2012
|
||||
86;Sid Meier's Civilization IV: Beyond the Sword;8.6;Jul 23, 2007
|
||||
86;The Sims 3;7.6;Jun 2, 2009
|
||||
86;Freedom Force vs The 3rd Reich;7.7;Mar 8, 2005
|
||||
86;The Binding of Isaac: Rebirth;8.3;Nov 4, 2014
|
||||
86;Tribes: Ascend;7.7;Apr 12, 2012
|
||||
86;Titanfall;6.1;Mar 11, 2014
|
||||
86;Rayman Origins;8.4;Mar 29, 2012
|
||||
86;Her Story;5.7;Jun 24, 2015
|
||||
86;Starcraft II: Heart of the Swarm;7.9;Mar 12, 2013
|
||||
86;Mass Effect 2: Lair of the Shadow Broker;8.5;Sep 7, 2010
|
||||
86;LEGO Star Wars II: The Original Trilogy;8.3;Sep 12, 2006
|
||||
86;Dungeon Siege;7.9;Mar 31, 2002
|
||||
86;Crysis 2;6.7;Mar 22, 2011
|
||||
86;Call of Duty: Modern Warfare 2;4.1;Nov 10, 2009
|
||||
86;The Secret of Monkey Island: Special Edition;9.1;Jul 15, 2009
|
||||
86;Max Payne 2: The Fall of Max Payne;9.0;Oct 14, 2003
|
||||
86;Homeworld Remastered Collection;8.2;Feb 25, 2015
|
||||
86;Galactic Civilizations II: Dread Lords;8.0;Feb 21, 2006
|
||||
86;Tomb Raider;8.5;Mar 5, 2013
|
||||
86;Star Trek: Voyager Elite Force;8.2;Sep 20, 2000
|
||||
86;Worldwide Soccer Manager 2008;8.4;Oct 23, 2007
|
||||
86;IL-2 Sturmovik: Forgotten Battles;8.6;Mar 2, 2003
|
||||
86;Hyper Light Drifter;8.1;Mar 31, 2016
|
||||
86;DiRT 3;6.9;May 24, 2011
|
||||
86;Unreal Tournament 2003;8.1;Sep 30, 2002
|
||||
86;Age of Wonders II: The Wizard's Throne;8.4;Jun 12, 2002
|
||||
86;Links 2001;6.8;Oct 24, 2000
|
||||
86;EverQuest: The Ruins of Kunark;8.8;Mar 31, 2000
|
||||
86;Full Throttle;8.8;Apr 30, 1995
|
||||
86;The Lord of the Rings Online: Shadows of Angmar;8.1;Apr 24, 2007
|
||||
86;Pony Island;6.8;Jan 4, 2016
|
||||
86;Warhammer 40,000: Dawn of War;8.8;Sep 20, 2004
|
||||
86;Warhammer Online: Age of Reckoning;7.9;Sep 16, 2008
|
||||
86;Dead Space;8.0;Oct 20, 2008
|
||||
86;Bionic Commando Rearmed;7.0;Aug 13, 2008
|
||||
86;Command & Conquer: Red Alert 2 - Yuri's Revenge;9.0;Oct 10, 2001
|
||||
86;Europa Universalis;8.1;Feb 2, 2001
|
||||
86;Escape from Monkey Island;8.2;Nov 8, 2000
|
||||
86;IL-2 Sturmovik: 1946;8.8;Mar 13, 2007
|
||||
86;XCOM: Enemy Within;7.9;Nov 12, 2013
|
||||
86;Battlefield 3: Back to Karkand;7.2;Dec 13, 2011
|
||||
86;Heroes of the Storm;6.7;Jun 2, 2015
|
||||
86;Civilization III: Conquests;8.4;Nov 4, 2003
|
||||
86;Path of Exile;8.0;Jan 25, 2013
|
||||
86;Battlefield: Bad Company 2 Vietnam;8.1;Dec 18, 2010
|
||||
86;Assassin's Creed II;6.8;Mar 9, 2010
|
||||
86;The Elder Scrolls IV: Shivering Isles;8.4;Mar 26, 2007
|
||||
86;DiRT Rally;8.8;Dec 7, 2015
|
||||
86;Rocket League;8.1;Jul 7, 2015
|
||||
86;Allegiance;8.2;Mar 31, 2000
|
||||
85;The Talos Principle;8.5;Dec 11, 2014
|
||||
85;Cities: Skylines;8.9;Mar 10, 2015
|
||||
85;Falcon 4.0;8.0;Nov 30, 1998
|
||||
85;Tom Clancy's Rainbow Six;8.6;Jul 31, 1998
|
||||
85;Madden NFL 2005;6.4;Sep 14, 2004
|
||||
85;Legend of Grimrock II;8.0;Oct 15, 2014
|
||||
85;Sam & Max Episode 205: What's New, Beelzebub?;8.6;Apr 10, 2008
|
||||
85;Dragon Age: Inquisition;5.8;Nov 18, 2014
|
||||
85;Tales from the Borderlands: A Telltale Game Series;8.7;Apr 26, 2016
|
||||
85;Tom Clancy's Rainbow Six: Vegas;7.7;Dec 12, 2006
|
||||
85;City of Heroes;8.5;Apr 27, 2004
|
||||
85;SWAT 4;8.6;Apr 5, 2005
|
||||
85;Clive Barker's Undying;8.7;Feb 21, 2001
|
||||
85;EverQuest;8.2;Mar 16, 1999
|
||||
85;Warhammer 40,000: Dawn of War II;8.1;Feb 18, 2009
|
||||
85;Command & Conquer 3: Tiberium Wars;8.0;Mar 26, 2007
|
||||
85;Bit.Trip Presents...Runner2: Future Legend of Rhythm Alien;8.2;Feb 26, 2013
|
||||
85;Hotline Miami;8.5;Oct 23, 2012
|
||||
85;Out of the Park Baseball 13;8.2;Apr 9, 2012
|
||||
85;Wizardry 8;8.6;Nov 14, 2001
|
||||
85;Aliens Versus Predator 2;8.7;Oct 31, 2001
|
||||
85;Operation Flashpoint: Cold War Crisis;9.0;Aug 30, 2001
|
||||
85;Tropico;8.4;Apr 5, 2001
|
||||
85;Giants: Citizen Kabuto;8.9;Dec 6, 2000
|
||||
85;NASCAR SimRacing;4.9;Feb 15, 2005
|
||||
85;The Lord of the Rings Online: Mines of Moria;8.3;Nov 17, 2008
|
||||
85;The Binding of Isaac: Afterbirth;8.1;Oct 30, 2015
|
||||
85;Amnesia: The Dark Descent;8.6;Feb 17, 2011
|
||||
85;GTR FIA Racing;8.6;May 3, 2005
|
||||
85;Football Manager 2011;8.4;Nov 23, 2010
|
||||
85;Dust: An Elysian Tail;8.5;May 24, 2013
|
||||
85;South Park: The Stick of Truth;8.6;Mar 4, 2014
|
||||
85;Dark Souls: Prepare to Die Edition;7.4;Aug 24, 2012
|
||||
85;Medieval II: Total War Kingdoms;8.8;Aug 28, 2007
|
||||
85;Shovel Knight;7.9;Jun 26, 2014
|
||||
85;DmC: Devil May Cry;6.7;Jan 24, 2013
|
||||
85;Peggle Deluxe;8.1;Feb 19, 2008
|
||||
85;Monopoly Tycoon;8.0;Sep 24, 2001
|
||||
85;Indigo Prophecy;8.3;Oct 2, 2005
|
||||
85;Prince of Persia: The Two Thrones;8.0;Dec 1, 2005
|
||||
85;Sam & Max Episode 204: Chariots of the Dogs;8.1;Mar 13, 2008
|
||||
85;Assetto Corsa;8.4;Dec 19, 2014
|
||||
85;Machinarium;8.8;Oct 16, 2009
|
||||
85;Frozen Synapse;7.7;May 26, 2011
|
||||
85;Valkyria Chronicles;8.3;Nov 11, 2014
|
||||
85;Freelancer;8.9;Mar 3, 2003
|
||||
85;Zenzizenzic;5.9;Jul 23, 2015
|
||||
85;The Wolf Among Us: Episode 1 - Faith;9.0;Oct 11, 2013
|
||||
85;Mega Man Legacy Collection;7.3;Aug 25, 2015
|
||||
85;Warhammer 40,000: Dawn of War II - Chaos Rising;8.7;Mar 11, 2010
|
||||
85;Far Cry 2;5.8;Oct 21, 2008
|
||||
85;The Walking Dead: Episode 3 - Long Road Ahead;8.4;Aug 29, 2012
|
||||
85;AudioSurf;8.8;Feb 15, 2008
|
||||
85;BattleBlock Theater;8.0;May 15, 2014
|
||||
85;Star Wars: Knights of the Old Republic II - The Sith Lords;8.4;Feb 8, 2005
|
||||
85;MVP Baseball 2005;8.1;Feb 22, 2005
|
||||
85;The Elder Scrolls III: Bloodmoon;8.5;Jun 3, 2003
|
||||
85;Rogue Legacy;7.9;Jun 27, 2013
|
||||
85;Chaos Reborn;8.4;Oct 26, 2015
|
||||
85;Thief: Deadly Shadows;8.4;May 25, 2004
|
||||
85;Football Manager 2014;5.4;Oct 30, 2013
|
||||
85;System Shock: Enhanced Edition;7.9;Sep 22, 2015
|
||||
85;EverQuest: Gates of Discord;6.8;Feb 9, 2004
|
||||
85;FIFA 2001 Major League Soccer;7.3;Oct 30, 2000
|
||||
85;Sid Meier's Civilization V: Brave New World;8.6;Jul 9, 2013
|
||||
85;Final Fantasy XI;7.5;Oct 28, 2003
|
||||
85;Serious Sam: The Second Encounter;8.5;Feb 4, 2002
|
||||
85;The Sims: Hot Date;7.9;Nov 12, 2001
|
||||
85;American McGee's Alice;8.2;Dec 6, 2000
|
||||
85;Trials Evolution: Gold Edition;6.7;Mar 21, 2013
|
||||
85;Warhammer 40,000: Dawn of War - Winter Assault;8.3;Sep 21, 2005
|
||||
85;Tony Hawk's Underground 2;7.9;Oct 4, 2004
|
||||
85;Papers, Please;8.5;Aug 8, 2013
|
||||
85;Star Wars: The Old Republic;5.9;Dec 20, 2011
|
||||
85;Anarchy Online: Shadowlands;8.7;Sep 8, 2003
|
||||
85;Dark Age of Camelot: Shrouded Isles;8.8;Dec 2, 2002
|
||||
85;Obsidian;8.3;Dec 31, 1996
|
||||
84;The Walking Dead: Episode 2 - Starved for Help;8.6;Jun 29, 2012
|
||||
84;Saints Row: The Third;8.1;Nov 15, 2011
|
||||
84;Fallout: New Vegas;8.5;Oct 19, 2010
|
||||
84;The Movies;8.3;Nov 8, 2005
|
||||
84;Neverwinter Nights: Hordes of the Underdark;8.6;Dec 2, 2003
|
||||
84;Command & Conquer: Generals;8.3;Feb 10, 2003
|
||||
84;Sid Meier's SimGolf;8.2;Jan 23, 2002
|
||||
84;Middle-earth: Shadow of Mordor;8.0;Sep 30, 2014
|
||||
84;SpaceChem;8.4;Mar 2, 2011
|
||||
84;Downwell;6.2;Oct 15, 2015
|
||||
84;Pinball FX 2;8.0;Oct 27, 2012
|
||||
84;Devil Daggers;6.7;Feb 18, 2016
|
||||
84;PlanetSide 2;7.0;Nov 20, 2012
|
||||
84;Enter the Gungeon;7.4;Apr 5, 2016
|
||||
84;GT Legends;8.6;Jan 23, 2006
|
||||
84;Hearthstone: Goblins Vs. Gnomes;6.6;Dec 8, 2014
|
||||
84;Space Rangers 2: Rise of the Dominators;9.0;Mar 27, 2006
|
||||
84;Tales From The Borderlands: Episode 1 - Zer0 Sum;8.4;Nov 25, 2014
|
||||
84;Puzzle Quest: Challenge of the Warlords;8.3;Oct 10, 2007
|
||||
84;Heroes of Might and Magic IV;7.6;Mar 29, 2002
|
||||
84;Command & Conquer: Red Alert 2;8.9;Oct 21, 2000
|
||||
84;Shogun: Total War;8.7;Jun 13, 2000
|
||||
84;DiRT;7.2;Jun 19, 2007
|
||||
84;Darkest Dungeon;8.0;Jan 19, 2016
|
||||
84;Super Street Fighter IV: Arcade Edition;7.8;Jul 13, 2011
|
||||
84;Football Manager 2012;8.0;Oct 20, 2011
|
||||
84;Guild Wars Factions;8.5;Apr 28, 2006
|
||||
84;80 Days (2015);6.1;Sep 29, 2015
|
||||
84;Spore;5.2;Sep 7, 2008
|
||||
84;Unity of Command;7.2;Nov 15, 2011
|
||||
84;Hearthstone: The Grand Tournament;4.0;Aug 24, 2015
|
||||
84;Metro Redux;8.0;Aug 26, 2014
|
||||
84;Time Gentlemen, Please!;7.6;Jul 2, 2009
|
||||
84;Europa Universalis IV: Wealth of Nations;8.4;May 29, 2014
|
||||
84;Mass Effect 3: Citadel;7.8;Mar 5, 2013
|
||||
84;Disciples II: Dark Prophecy;8.6;Jan 22, 2002
|
||||
84;Just Cause 2;7.7;Mar 23, 2010
|
||||
84;Crysis Warhead;7.9;Sep 16, 2008
|
||||
84;Assassin's Creed IV: Black Flag;7.7;Nov 19, 2013
|
||||
84;Age of Mythology: The Titans;8.7;Sep 30, 2003
|
||||
84;SimCity 4;8.7;Jan 12, 2003
|
||||
84;Microsoft Train Simulator;8.4;May 31, 2001
|
||||
84;Rise of Nations: Rise of Legends;8.5;May 9, 2006
|
||||
84;TOCA Race Driver 3;7.8;Feb 24, 2006
|
||||
84;FTL: Faster Than Light;8.4;Sep 14, 2012
|
||||
84;SOMA;8.2;Sep 22, 2015
|
||||
84;DEFCON: Everybody Dies;8.3;Mar 26, 2007
|
||||
84;Tron 2.0;8.3;Aug 26, 2003
|
||||
84;Brothers in Arms: Earned in Blood;7.3;Oct 6, 2005
|
||||
84;Grim Fandango Remastered;8.0;Jan 27, 2015
|
||||
84;The Lord of the Rings: The Battle for Middle-Earth II;7.5;Mar 2, 2006
|
||||
84;Battlefield Vietnam;7.4;Mar 16, 2004
|
||||
84;Medieval: Total War - Viking Invasion;8.8;May 7, 2003
|
||||
84;Fallout 4;5.4;Nov 10, 2015
|
||||
84;Guild Wars Nightfall;8.7;Oct 26, 2006
|
||||
84;The Binding of Isaac;8.3;Sep 28, 2011
|
||||
84;Enemy Territory: Quake Wars;8.3;Oct 2, 2007
|
||||
84;Trine 2;8.4;Dec 7, 2011
|
||||
84;Rift;7.3;Mar 1, 2011
|
||||
84;The Wolf Among Us: Episode 5 - Cry Wolf;8.8;Jul 8, 2014
|
||||
84;Shift 2: Unleashed;6.1;Mar 29, 2011
|
||||
84;Sid Meier's Civilization IV: Warlords;8.2;Jul 24, 2006
|
||||
84;Battlefield 1942: The Road to Rome;7.9;Feb 2, 2003
|
||||
84;Poseidon;8.4;Jun 25, 2001
|
||||
84;F1 2010;6.6;Sep 22, 2010
|
||||
84;Shatter;7.4;Mar 15, 2010
|
||||
84;Darwinia;7.9;Jun 12, 2006
|
||||
84;Ultimate General: Gettysburg;8.0;Oct 16, 2014
|
||||
83;Final Fantasy XI: Treasures of Aht Urhgan;7.6;Apr 18, 2006
|
||||
83;MDK2;8.4;May 31, 2000
|
||||
83;Gunpoint;8.4;Jun 3, 2013
|
||||
83;Beyond Good & Evil;8.7;Nov 19, 2003
|
||||
83;Anno 2070;7.0;Nov 17, 2011
|
||||
83;SMITE;8.3;Mar 25, 2014
|
||||
83;Halo: Combat Evolved;7.4;Sep 30, 2003
|
||||
83;Grim Dawn;8.9;Feb 25, 2016
|
||||
83;Silent Storm;8.9;Jan 20, 2004
|
||||
83;Command & Conquer: Generals - Zero Hour;9.0;Sep 22, 2003
|
||||
83;Homeworld 2;8.3;Sep 16, 2003
|
||||
83;Galactic Civilizations;8.1;Mar 26, 2003
|
||||
83;EverQuest: The Shadows of Luclin;7.2;Dec 2, 2001
|
||||
83;Orcs Must Die!;8.1;Oct 11, 2011
|
||||
83;Life is Strange;8.6;Jan 19, 2016
|
||||
83;Fable: The Lost Chapters;8.7;Sep 20, 2005
|
||||
83;Unreal Tournament III;8.0;Nov 19, 2007
|
||||
83;The Blackwell Epiphany;7.6;Apr 24, 2014
|
||||
83;The Lord of the Rings Online: Siege of Mirkwood;7.1;Dec 1, 2009
|
||||
83;Out of the Park Baseball 10;8.3;Jun 2, 2009
|
||||
83;Tomb Raider: Anniversary;8.0;Jun 5, 2007
|
||||
83;Need for Speed: Shift;5.7;Sep 15, 2009
|
||||
83;Hearts of Iron II;8.6;Jan 4, 2005
|
||||
83;FIFA Soccer 11;7.6;Sep 28, 2010
|
||||
83;Project CARS;7.0;May 6, 2015
|
||||
83;FIFA Soccer 2003;6.8;Nov 2, 2002
|
||||
83;Icewind Dale II;8.3;Aug 26, 2002
|
||||
83;Age of Empires;8.8;Sep 30, 1997
|
||||
83;EverQuest II: Echoes of Faydwer;8.4;Nov 13, 2006
|
||||
83;EverQuest II;7.3;Nov 8, 2004
|
||||
83;Terraria;8.5;May 16, 2011
|
||||
83;Final Fantasy XIV Online: A Realm Reborn;6.7;Aug 27, 2013
|
||||
83;Card Hunter (2013);7.9;Sep 12, 2013
|
||||
83;Sam & Max: The Devil's Playhouse - Episode 2: The Tomb of Sammun-Mak;7.9;May 18, 2010
|
||||
83;This War of Mine;8.4;Nov 14, 2014
|
||||
83;Darksiders;7.7;Sep 23, 2010
|
||||
83;Tom Clancy's Rainbow Six 3: Raven Shield;8.9;Mar 19, 2003
|
||||
83;World of Outlaws: Sprint Cars;7.9;Feb 11, 2003
|
||||
83;Colin McRae Rally 2.0;8.4;Feb 14, 2001
|
||||
83;Combat Flight Simulator 2: WWII Pacific Theater;8.1;Oct 13, 2000
|
||||
83;Orcs Must Die! 2;7.9;Jul 30, 2012
|
||||
83;Prey;7.9;Jul 11, 2006
|
||||
83;Metal Gear Rising: Revengeance;7.9;Jan 9, 2014
|
||||
83;Starseed Pilgrim;6.3;Apr 16, 2013
|
||||
83;Age of Conan: Rise of the Godslayer;8.4;May 11, 2010
|
||||
83;Alan Wake;8.0;Feb 16, 2012
|
||||
83;Tiger Woods PGA Tour 2002;5.0;Feb 24, 2002
|
||||
83;Monaco: What's Yours Is Mine;7.7;Apr 24, 2013
|
||||
83;Transistor;8.3;May 20, 2014
|
||||
83;Helldivers;6.9;Dec 7, 2015
|
||||
83;Worldwide Soccer Manager 2009;8.1;Nov 18, 2008
|
||||
83;Call of Duty: World at War;7.5;Nov 10, 2008
|
||||
83;Torchlight;8.0;Jan 5, 2010
|
||||
83;Prison Architect;8.3;Oct 6, 2015
|
||||
83;Valdis Story: Abyssal City;8.1;Oct 30, 2013
|
||||
83;Crimson Skies;8.2;Sep 17, 2000
|
||||
83;RACE 07: Official WTCC Game;9.0;Oct 9, 2007
|
||||
83;SUPERHOT;7.6;Feb 25, 2016
|
||||
83;EverQuest II: Rise of Kunark;7.9;Nov 13, 2007
|
||||
83;Dark Age of Camelot: Catacombs;8.6;Dec 7, 2004
|
||||
83;Spore Creature Creator;8.1;Jun 17, 2008
|
||||
83;Colin McRae Rally 2005;7.0;Oct 28, 2004
|
||||
83;Tom Clancy's Splinter Cell: Conviction;5.2;Apr 27, 2010
|
||||
83;Tribes: Vengeance;7.6;Oct 12, 2004
|
||||
83;L.A. Noire: The Complete Edition;7.9;Nov 8, 2011
|
||||
83;GTR Evolution;8.2;Sep 2, 2008
|
||||
83;Life is Strange: Episode 5 - Polarized;8.4;Oct 20, 2015
|
||||
83;BROFORCE;8.0;Oct 15, 2015
|
||||
83;Independence War 2: Edge of Chaos;8.4;Aug 22, 2001
|
||||
83;Myst III: Exile;8.2;May 8, 2001
|
||||
83;Superbrothers: Sword & Sworcery EP;6.4;Apr 16, 2012
|
||||
83;Sid Meier's Civilization IV: Colonization;6.7;Sep 22, 2008
|
||||
83;Europa Universalis III;8.4;Jan 23, 2007
|
||||
83;F1 2011;7.2;Sep 20, 2011
|
||||
83;Prince of Persia: Warrior Within;8.4;Nov 30, 2004
|
||||
83;Danganronpa: Trigger Happy Havoc;7.6;Feb 18, 2016
|
||||
83;Counter-Strike: Global Offensive;7.8;Aug 21, 2012
|
||||
83;Outland;7.1;Sep 29, 2014
|
||||
83;MechWarrior 4: Mercenaries;8.6;Nov 7, 2002
|
||||
83;Metal Gear Solid;9.0;Sep 24, 2000
|
||||
82;Invisible, Inc.;8.0;May 12, 2015
|
||||
82;Dark Souls II: Crown of the Ivory King;7.8;Sep 29, 2014
|
||||
82;Red Faction: Guerrilla;7.5;Sep 15, 2009
|
||||
82;The Book of Unwritten Tales;8.2;Oct 28, 2011
|
||||
82;Capitalism II;9.0;Dec 16, 2001
|
||||
82;Rally Trophy;8.5;Nov 20, 2001
|
||||
82;Dawn of Discovery;8.8;Jun 17, 2009
|
||||
82;City of Villains;8.1;Oct 31, 2005
|
||||
82;Kentucky Route Zero - Act II;8.0;May 31, 2013
|
||||
82;Tom Clancy's Splinter Cell: Blacklist;7.4;Aug 20, 2013
|
||||
82;Act of War: Direct Action;8.5;Mar 15, 2005
|
||||
82;Sokobond;7.8;Aug 27, 2013
|
||||
82;Sam & Max Episode 105: Reality 2.0;8.4;Mar 29, 2007
|
||||
82;Bejeweled 3;8.0;Dec 7, 2010
|
||||
82;Dangerous Waters;8.8;Feb 22, 2005
|
||||
82;Tomb Raider: Legend;7.8;Apr 11, 2006
|
||||
82;Asheron's Call 2: Fallen Kings;8.8;Nov 20, 2002
|
||||
82;Gemini Rue;8.4;Feb 24, 2011
|
||||
82;Antichamber;8.2;Jan 31, 2013
|
||||
82;Neverwinter Nights 2;6.5;Oct 31, 2006
|
||||
82;Dragon Age: Origins - Awakening;7.7;Mar 16, 2010
|
||||
82;Door Kickers;8.2;Oct 20, 2014
|
||||
82;Hearthstone: Blackrock Mountain;6.4;Apr 2, 2015
|
||||
82;Rome: Total War Barbarian Invasion;8.4;Sep 27, 2005
|
||||
82;Hacknet;7.3;Aug 12, 2015
|
||||
82;Tales of Monkey Island Chapter 3: Lair of the Leviathan;7.8;Sep 29, 2009
|
||||
82;Neverwinter Nights 2: Mask of The Betrayer;8.8;Oct 9, 2007
|
||||
82;Sins of a Solar Empire: Rebellion;7.8;Jun 12, 2012
|
||||
82;Broken Sword: The Sleeping Dragon;7.6;Nov 17, 2003
|
||||
82;Age of Wonders: Shadow Magic;8.5;Jul 25, 2003
|
||||
82;Tom Clancy's Ghost Recon: Desert Siege;8.4;Mar 27, 2002
|
||||
82;Warlords Battlecry II;8.5;Mar 11, 2002
|
||||
82;Football Manager Live;2.9;Jan 23, 2009
|
||||
82;Marvel: Ultimate Alliance;8.3;Oct 24, 2006
|
||||
82;The Talos Principle: Road To Gehenna;7.6;Jul 23, 2015
|
||||
82;Lara Croft and the Guardian of Light;8.2;Sep 28, 2010
|
||||
82;Aquaria;8.3;Dec 7, 2007
|
||||
82;Need for Speed: Underground;8.3;Nov 17, 2003
|
||||
82;TrackMania Sunrise;8.5;May 6, 2005
|
||||
82;King's Quest Chapter 1: A Knight to Remember;7.2;Jul 28, 2015
|
||||
82;Dragon Age II;4.4;Mar 8, 2011
|
||||
82;Endless Legend;7.9;Apr 24, 2014
|
||||
82;Tom Clancy's Ghost Recon: Island Thunder;8.3;Sep 25, 2002
|
||||
82;S.T.A.L.K.E.R.: Shadow of Chernobyl;8.4;Mar 20, 2007
|
||||
82;Kero Blaster;6.9;May 11, 2014
|
||||
82;Monday Night Combat;7.3;Jan 24, 2011
|
||||
82;The Wolf Among Us: Episode 3 - A Crooked Mile;8.6;Apr 8, 2014
|
||||
82;Airborne Assault: Red Devils Over Arnhem;7.4;Jun 17, 2002
|
||||
82;Fallout Tactics: Brotherhood of Steel;7.9;Mar 14, 2001
|
||||
82;Need for Speed: Underground 2;8.5;Nov 9, 2004
|
||||
82;NHL Eastside Hockey Manager 2005;6.6;Oct 5, 2005
|
||||
82;Legend of Grimrock;8.1;Apr 11, 2012
|
||||
82;Dominions 3: The Awakening;8.1;Sep 29, 2006
|
||||
82;Bulletstorm;7.7;Feb 22, 2011
|
||||
82;Borderlands 2: Mr. Torgue's Campaign of Carnage;7.3;Nov 20, 2012
|
||||
82;Desktop Dungeons;8.2;Oct 17, 2010
|
||||
82;Fallout: New Vegas - Old World Blues;7.8;Jul 19, 2011
|
||||
82;Crusader Kings II;8.7;Feb 14, 2012
|
||||
82;MVP Baseball 2004;7.9;Mar 9, 2004
|
||||
82;Europa 1400: The Guild;8.6;Nov 18, 2002
|
||||
82;Battle Realms;8.6;Nov 7, 2001
|
||||
82;Warlords Battlecry;8.2;Jul 9, 2000
|
||||
82;Sam & Max Episode 201: Ice Station Santa;8.6;Nov 8, 2007
|
||||
82;Technobabylon;7.8;May 21, 2015
|
||||
82;World of Warcraft: Mists of Pandaria;4.8;Sep 25, 2012
|
||||
82;FIFA 15;4.2;Sep 23, 2014
|
||||
82;Recettear: An Item Shop's Tale;8.6;Sep 10, 2010
|
||||
82;ETHER One;6.9;Mar 25, 2014
|
||||
82;The Vanishing of Ethan Carter;8.1;Sep 25, 2014
|
||||
82;Flight Simulator X: Acceleration;7.3;Oct 23, 2007
|
||||
82;Blood;9.0;May 31, 1997
|
||||
82;Command & Conquer: Red Alert 3;6.8;Oct 28, 2008
|
||||
82;The Walking Dead: Episode 1 - A New Day;8.4;Apr 24, 2012
|
||||
82;Links 2003;6.8;Sep 16, 2002
|
||||
82;Earth & Beyond;7.1;Sep 2, 2002
|
||||
82;Syberia;8.5;Sep 1, 2002
|
||||
82;Virtual Pool 3;7.3;Nov 14, 2000
|
||||
82;The Sims: Livin' Large;6.6;Aug 27, 2000
|
||||
82;DCS: Black Shark;8.5;Apr 13, 2009
|
||||
82;King's Bounty: Armored Princess;8.7;Sep 10, 2010
|
||||
82;Age of Wonders III - Golden Realms;8.5;Sep 18, 2014
|
||||
82;Strong Bad's Cool Game for Attractive People Episode 5: 8-Bit Is Enough;7.5;Dec 15, 2008
|
||||
82;Prince of Persia;7.2;Dec 2, 2008
|
||||
82;Joint Operations: Typhoon Rising;8.7;Jun 15, 2004
|
||||
82;Xpand Rally;7.4;Apr 20, 2006
|
||||
82;Dark Souls II: Crown of the Sunken King;7.3;Jul 22, 2014
|
||||
82;Resident Evil HD Remaster;8.2;Jan 20, 2015
|
||||
82;Celtic Kings: Rage of War;8.5;Aug 21, 2002
|
||||
82;B-17 Flying Fortress: The Mighty 8th;7.3;Dec 13, 2000
|
||||
82;EverQuest: The Scars of Velious;7.8;Dec 4, 2000
|
||||
82;Metro: Last Light;8.6;May 14, 2013
|
||||
82;Rising Storm;8.5;May 30, 2013
|
||||
82;Lethal League;7.4;Aug 27, 2014
|
||||
82;Botanicula;8.3;Apr 19, 2012
|
||||
82;Pro Evolution Soccer 2015;5.8;Nov 13, 2014
|
||||
82;Bookworm Adventures Deluxe;7.9;Dec 20, 2006
|
||||
82;The Lord of the Rings: The Battle for Middle-Earth;8.6;Dec 6, 2004
|
||||
82;Hitman: Blood Money;8.8;May 30, 2006
|
||||
82;Need for Speed: Most Wanted;8.5;Nov 15, 2005
|
||||
82;OlliOlli2: Welcome to Olliwood;5.2;Aug 11, 2015
|
||||
82;WildStar;7.4;Jun 3, 2014
|
||||
82;Broken Age: Act 1;7.7;Jan 28, 2014
|
||||
82;Divinity II: The Dragon Knight Saga;8.2;Nov 5, 2010
|
||||
82;Out of the Park Baseball 9;7.4;Jun 1, 2008
|
||||
82;The Simpsons: Hit & Run;8.0;Nov 13, 2003
|
||||
82;America's Army;6.1;Aug 28, 2002
|
||||
82;Star Trek Bridge Commander;8.1;Feb 27, 2002
|
||||
82;The Last Express;8.9;Mar 31, 1997
|
||||
81;Quake 4;7.5;Oct 11, 2005
|
||||
81;Nidhogg;7.0;Jan 13, 2014
|
||||
81;Battlefield 4;6.0;Oct 29, 2013
|
||||
81;To the Moon;8.9;Sep 7, 2012
|
||||
81;The Sims 3: World Adventures;8.0;Nov 16, 2009
|
||||
81;Painkiller;8.0;Apr 12, 2004
|
||||
81;Airborne Assault: Highway to the Reich;6.1;Dec 10, 2003
|
||||
81;Nancy Drew: Danger on Deception Island;7.7;Oct 1, 2003
|
||||
81;Shadowrun: Hong Kong;7.7;Aug 20, 2015
|
||||
81;Supreme Commander: Forged Alliance;8.9;Nov 6, 2007
|
||||
81;Sunless Sea;7.4;Jul 1, 2014
|
||||
81;The Walking Dead: Season Two Episode 3 - In Harm's Way;8.3;May 13, 2014
|
||||
81;Marvel Heroes 2015;7.9;Jun 4, 2014
|
||||
81;Football Manager 2016;6.4;Nov 13, 2015
|
||||
81;VVVVVV;8.1;Jan 11, 2010
|
||||
81;Darksiders II;7.9;Aug 14, 2012
|
||||
81;Wolfenstein: The New Order;8.2;May 20, 2014
|
||||
81;Lone Survivor;7.2;Apr 23, 2012
|
||||
81;Alien: Isolation;8.4;Oct 6, 2014
|
||||
81;The Witcher;8.8;Oct 30, 2007
|
||||
81;Kentucky Route Zero - Act I;7.5;Jan 7, 2013
|
||||
81;Jade Empire: Special Edition;8.3;Feb 26, 2007
|
||||
81;SWAT 3: Elite Edition;8.4;Oct 6, 2000
|
||||
81;Asheron's Call;8.8;Oct 31, 1999
|
||||
81;Unravel;8.1;Feb 9, 2016
|
||||
81;Midnight Club II;8.0;Jun 30, 2003
|
||||
81;Chessmaster 10th Edition;7.4;Aug 12, 2004
|
||||
81;Age of Empires III;7.7;Oct 18, 2005
|
||||
81;Tales of Monkey Island Chapter 5: Rise of the Pirate God;8.4;Dec 8, 2009
|
||||
81;Castlevania: Lords of Shadow Ultimate Edition;7.3;Aug 27, 2013
|
||||
81;Strong Bad's Cool Game for Attractive People Episode 2: Strong Badia the Free;8.2;Sep 15, 2008
|
||||
81;The Cat Lady;8.7;Dec 4, 2013
|
||||
81;Vessel;7.9;Mar 1, 2012
|
||||
81;Metro 2033;8.1;Mar 16, 2010
|
||||
81;OutRun 2006: Coast 2 Coast;7.8;Jun 27, 2006
|
||||
81;Blur;7.3;May 25, 2010
|
||||
81;Empires: Dawn of the Modern World;8.2;Oct 21, 2003
|
||||
81;Chessmaster 9000;7.7;Aug 31, 2002
|
||||
81;Gothic;8.6;Nov 23, 2001
|
||||
81;Arcanum: Of Steamworks and Magick Obscura;8.9;Aug 22, 2001
|
||||
81;NASCAR Heat;8.6;Sep 27, 2000
|
||||
81;Company of Heroes 2: Ardennes Assault;6.1;Nov 17, 2014
|
||||
81;PlanetSide;7.3;May 20, 2003
|
||||
81;Tales From The Borderlands: Episode 3 - Catch A Ride;8.4;Jun 23, 2015
|
||||
81;The Walking Dead: Season Two Episode 2 - A House Divided;8.6;Mar 4, 2014
|
||||
81;Kingdoms of Amalur: Reckoning;6.6;Feb 7, 2012
|
||||
81;Sam & Max: The Devil's Playhouse - Episode 1: The Penal Zone;8.5;Apr 15, 2010
|
||||
81;Borderlands;7.8;Oct 26, 2009
|
||||
81;DG2: Defense Grid 2;6.7;Sep 23, 2014
|
||||
81;Napoleon: Total War;7.9;Feb 23, 2010
|
||||
81;Overlord;8.1;Jun 26, 2007
|
||||
81;Firewatch;7.2;Feb 9, 2016
|
||||
81;Victoria II: Heart of Darkness;8.7;Apr 16, 2013
|
||||
81;Waveform;7.6;Jan 25, 2013
|
||||
81;The Elder Scrolls IV: Knights of the Nine;7.5;Nov 21, 2006
|
||||
81;Red Orchestra: Ostfront 41-45;8.6;Mar 14, 2006
|
||||
81;Stronghold;8.9;Oct 21, 2001
|
||||
81;Strong Bad's Cool Game for Attractive People Episode 4: Dangeresque 3: The Criminal Projective;8.5;Nov 17, 2008
|
||||
81;Rochard;8.0;Nov 15, 2011
|
||||
81;Fallout 3: Broken Steel;7.3;May 5, 2009
|
||||
81;Tiger Woods PGA Tour 06;8.1;Sep 20, 2005
|
||||
81;RollerCoaster Tycoon 3;4.9;Oct 26, 2004
|
||||
81;Dragon's Dogma: Dark Arisen;8.3;Jan 15, 2016
|
||||
81;Guild Wars 2: Heart of Thorns;7.3;Oct 23, 2015
|
||||
81;AaaaaAAaaaAAAaaAAAAaAAAAA!!! - A Reckless Disregard for Gravity;7.2;Sep 3, 2009
|
||||
81;The Sims 2 University;7.8;Feb 28, 2005
|
||||
81;Far Cry 3: Blood Dragon;8.1;May 1, 2013
|
||||
81;Sid Meier's Civilization: Beyond Earth;5.5;Oct 24, 2014
|
||||
81;Disney's Toontown Online;8.7;Oct 6, 2005
|
||||
81;Combat Mission 3: Afrika Korps;8.4;Dec 3, 2003
|
||||
81;EverQuest: The Planes of Power;8.2;Oct 28, 2002
|
||||
81;Rails Across America;8.0;Sep 18, 2001
|
||||
81;Wasteland 2;7.3;Sep 19, 2014
|
||||
81;Jamestown: Legend of the Lost Colony;7.5;Jun 8, 2011
|
||||
81;Call of Duty: Black Ops;5.1;Nov 9, 2010
|
||||
81;Kohan II: Kings of War;7.9;Sep 20, 2004
|
||||
81;The Age of Decadence;7.9;Oct 15, 2015
|
||||
81;Samorost 3;8.3;Mar 24, 2016
|
||||
81;Order of Battle: Pacific;6.4;Apr 30, 2015
|
||||
81;Empire Earth;8.3;Nov 12, 2001
|
||||
81;Star Trek: Deep Space Nine: The Fallen;7.9;Nov 15, 2000
|
||||
81;Sam & Max Episode 101: Culture Shock;8.7;Oct 18, 2006
|
||||
81;Mirror's Edge (2008);8.1;Jan 12, 2009
|
||||
81;TrackMania 2 Canyon;7.7;Sep 14, 2011
|
||||
81;Sleeping Dogs;8.2;Aug 14, 2012
|
||||
81;Star Wars Jedi Knight: Jedi Academy;8.6;Sep 17, 2003
|
||||
81;Mortal Kombat Komplete Edition;8.7;Aug 6, 2013
|
||||
81;Shadowrun: Dragonfall;8.3;Feb 27, 2014
|
||||
81;Eets;6.4;Mar 29, 2006
|
||||
81;World of Warships;6.6;Sep 17, 2015
|
||||
81;TOCA Race Driver 2: The Ultimate Racing Simulator;8.0;Apr 15, 2004
|
||||
81;Wargame: European Escalation;8.2;Feb 22, 2012
|
||||
81;Dungeon Defenders;7.3;Oct 18, 2011
|
||||
81;Sam & Max: The Devil's Playhouse - Episode 5: The City That Dares Not Sleep;7.9;Aug 30, 2010
|
||||
81;Age of Empires III: The Asian Dynasties;8.5;Oct 23, 2007
|
||||
81;Defense Grid: The Awakening;8.8;Jul 29, 2009
|
||||
81;Codename: Panzers, Phase One;8.8;Sep 30, 2004
|
||||
81;FIFA 16;4.4;Sep 22, 2015
|
||||
81;Europa Universalis IV: Conquest of Paradise;7.7;Jan 14, 2014
|
||||
81;Ghost Master;8.0;Aug 26, 2003
|
||||
81;Divine Divinity;8.5;Sep 22, 2002
|
||||
80;The Book of Unwritten Tales 2;7.7;Feb 20, 2015
|
||||
80;Galactic Civilizations III;6.6;May 14, 2015
|
||||
80;Lovers in a Dangerous Spacetime;7.2;Sep 9, 2015
|
||||
80;Age of Conan: Hyborian Adventures;7.3;May 20, 2008
|
||||
80;Company of Heroes 2: The Western Front Armies;6.8;Jun 23, 2014
|
||||
80;Sid Meier's Civilization V: Gods & Kings;7.7;Jun 19, 2012
|
||||
80;Age of Empires III: The WarChiefs;8.1;Oct 17, 2006
|
||||
80;Metal Gear Solid V: Ground Zeroes;7.7;Dec 18, 2014
|
||||
80;Trials Fusion;6.8;Apr 16, 2014
|
||||
80;Syberia II;8.3;Mar 30, 2004
|
||||
80;Tom Clancy's Ghost Recon;8.4;Nov 13, 2001
|
||||
80;Conquest: Frontier Wars;8.3;Aug 14, 2001
|
||||
80;Gabriel Knight 3: Blood of the Sacred, Blood of the Damned;8.8;Oct 5, 1999
|
||||
80;Westerado: Double Barreled;7.4;Apr 16, 2015
|
||||
80;Anomaly: Warzone Earth;7.3;Apr 8, 2011
|
||||
80;Volume;7.2;Aug 18, 2015
|
||||
80;GRID 2;5.7;May 27, 2013
|
||||
80;The Banner Saga;7.9;Jan 14, 2014
|
||||
80;Sam & Max Episode 202: Moai Better Blues;7.7;Jan 10, 2008
|
||||
80;Age of Wonders III - Eternal Lords;8.4;Apr 14, 2015
|
||||
80;Pro Evolution Soccer 2013;6.8;Sep 25, 2012
|
||||
80;Osmos;7.5;Aug 18, 2009
|
||||
80;Dungeon Siege II;7.9;Aug 16, 2005
|
||||
80;Dead Island;6.8;Sep 6, 2011
|
||||
80;Sam & Max Episode 104: Abe Lincoln Must Die!;7.8;Feb 22, 2007
|
||||
80;Deus Ex: Invisible War;6.3;Dec 2, 2003
|
||||
80;The Sims: Makin' Magic;8.6;Oct 28, 2003
|
||||
80;Tom Clancy's Splinter Cell: Double Agent;5.7;Nov 7, 2006
|
||||
80;Medal of Honor: Pacific Assault;7.4;Nov 4, 2004
|
||||
80;Assassin's Creed: Revelations;7.4;Nov 29, 2011
|
||||
80;Grandia II Anniversary Edition;7.6;Aug 24, 2015
|
||||
80;Assassin's Creed III;6.2;Nov 20, 2012
|
||||
80;Madden NFL 07;7.3;Aug 22, 2006
|
||||
80;Outlast;8.4;Sep 4, 2013
|
||||
80;The Chronicles of Riddick: Assault on Dark Athena;8.0;Apr 7, 2009
|
||||
80;Hearts of Iron II: Doomsday;8.8;Apr 7, 2006
|
||||
80;Dishonored: The Brigmore Witches;8.5;Aug 13, 2013
|
||||
80;Codename: Panzers, Phase Two;8.0;Jul 25, 2005
|
||||
80;Full Spectrum Warrior;7.0;Sep 21, 2004
|
||||
80;AI War: Fleet Command;8.4;May 14, 2009
|
||||
80;Freedom Fighters;8.3;Oct 1, 2003
|
||||
80;NBA Live 2003;8.3;Nov 14, 2002
|
||||
80;The Elder Scrolls III: Tribunal;8.2;Nov 6, 2002
|
||||
80;Elite: Dangerous;6.4;Dec 16, 2014
|
||||
80;Pure;6.9;Sep 16, 2008
|
||||
80;Goodbye Deponia;8.1;Oct 17, 2013
|
||||
80;SWAT 4: The Stetchkov Syndicate;8.3;Feb 28, 2006
|
||||
80;Dropsy;7.3;Sep 10, 2015
|
||||
80;Company of Heroes 2: The British Forces;5.9;Sep 3, 2015
|
||||
80;Ground Control II: Operation Exodus;8.8;Jun 23, 2004
|
||||
80;NBA Live 2004;9.0;Nov 11, 2003
|
||||
80;Brutal Legend;7.8;Feb 26, 2013
|
||||
80;Tomb Raider: Underworld;7.6;Nov 18, 2008
|
||||
80;Oxenfree;7.7;Jan 15, 2016
|
||||
80;Titan Quest: Immortal Throne;8.7;Mar 5, 2007
|
||||
80;La-Mulana (Remake);7.1;Jul 13, 2012
|
||||
80;X-Men Legends II: Rise of Apocalypse;8.4;Sep 20, 2005
|
||||
80;SpellForce 2: Shadow Wars;7.6;May 5, 2006
|
||||
80;Fritz 8 Deluxe;7.8;Dec 1, 2004
|
||||
80;Trine;8.2;Sep 11, 2009
|
||||
80;Dishonored: The Knife of Dunwall;8.1;Apr 16, 2013
|
||||
80;Company of Heroes 2;2.0;Jun 25, 2013
|
||||
80;Natural Selection 2;8.4;Oct 30, 2012
|
||||
80;Read Only Memories;7.2;Oct 5, 2015
|
||||
80;The Sims 3: Into the Future;5.4;Oct 22, 2013
|
||||
80;Borderlands 2: Captain Scarlett and Her Pirate's Booty;7.4;Oct 16, 2012
|
||||
80;FATE;8.3;Sep 19, 2006
|
||||
80;2002 FIFA World Cup;7.9;Apr 30, 2002
|
||||
80;Asheron's Call Dark Majesty;8.1;Nov 4, 2001
|
||||
80;The Bug Butcher;8.2;Jan 19, 2016
|
||||
80;Dragonshard;7.4;Oct 2, 2005
|
||||
80;Icewind Dale: Enhanced Edition;7.6;Oct 30, 2014
|
||||
80;The Magic Circle;7.3;Jul 9, 2015
|
||||
80;Far Cry 4;6.6;Nov 18, 2014
|
||||
80;Super Time Force Ultra;6.6;Aug 25, 2014
|
||||
80;Day of Defeat: Source;9.1;Feb 7, 2006
|
||||
80;Battlefield 2142;6.8;Oct 17, 2006
|
||||
80;World of Tanks;3.8;Sep 6, 2011
|
||||
80;Vampire: The Masquerade - Bloodlines;9.0;Nov 16, 2004
|
||||
80;Dark Souls II: Scholar of the First Sin;7.4;Apr 1, 2015
|
||||
80;Warhammer 40,000: Dawn of War II - Retribution;7.8;Mar 1, 2011
|
||||
80;Panzer Corps;7.5;Jul 11, 2011
|
||||
80;Men of War;8.1;Mar 16, 2009
|
||||
80;Fallen Enchantress: Legendary Heroes;7.7;May 22, 2013
|
||||
80;The Walking Dead: Episode 4 - Around Every Corner;8.5;Oct 10, 2012
|
||||
80;Tales of Monkey Island Chapter 4: The Trial and Execution of Guybrush Threepwood;8.4;Oct 30, 2009
|
||||
80;Penny Arcade Adventures: Episode Two;7.7;Nov 7, 2008
|
||||
80;Time Commando;8.9;Jul 31, 1996
|
||||
80;Sins of a Solar Empire: Entrenchment;8.1;Feb 25, 2009
|
||||
80;F1 2012;6.9;Sep 18, 2012
|
||||
80;Luftrausers;6.8;Mar 18, 2014
|
||||
80;Naruto Shippuden: Ultimate Ninja Storm 3 Full Burst;7.9;Oct 24, 2013
|
||||
80;Stealth Bastard Deluxe;8.3;Nov 28, 2012
|
||||
80;Tom Clancy's Ghost Recon Advanced Warfighter;7.7;May 3, 2006
|
||||
80;LEGO Batman: The Videogame;7.9;Sep 23, 2008
|
||||
80;Stacking;7.9;Mar 6, 2012
|
||||
80;Age of Wonders III;7.8;Mar 31, 2014
|
||||
80;Life is Strange: Episode 3 - Chaos Theory;9.0;May 19, 2015
|
||||
80;The Legend of Heroes: Trails in the Sky SC;8.4;Oct 29, 2015
|
||||
80;Proteus;5.6;Jan 30, 2013
|
||||
80;Robin Hood: The Legend of Sherwood;8.3;Nov 14, 2002
|
||||
80;Soldier of Fortune II: Double Helix;7.3;May 20, 2002
|
||||
80;RollerCoaster Tycoon: Loopy Landscapes;9.0;Sep 30, 2000
|
||||
80;Toki Tori;7.9;Jan 28, 2010
|
||||
80;RoboBlitz;8.3;Nov 7, 2006
|
||||
80;Wargame: AirLand Battle;8.1;May 29, 2013
|
||||
80;Football Manager 2015;6.0;Nov 7, 2014
|
||||
80;The Suffering;8.2;Jun 8, 2004
|
||||
80;Gish;7.2;Sep 17, 2004
|
||||
80;Axiom Verge;8.2;May 14, 2015
|
||||
80;Driver: San Francisco;7.0;Sep 27, 2011
|
||||
80;The Corporate Machine;7.5;Jul 14, 2001
|
||||
80;Dungeons & Dragons: Chronicles of Mystara;6.7;Jun 18, 2013
|
||||
80;Disciples II: Rise of the Elves;8.1;Nov 25, 2003
|
||||
80;MechCommander 2;8.3;Jul 18, 2001
|
||||
80;Waterloo: Napoleon's Last Battle;7.5;Mar 25, 2001
|
||||
80;Chessmaster 8000;6.4;Nov 14, 2000
|
||||
80;Circle of Blood;8.6;Sep 30, 1996
|
||||
80;BioShock Infinite: Burial at Sea - Episode Two;8.5;Mar 25, 2014
|
||||
80;S.T.A.L.K.E.R.: Call of Pripyat;8.7;Feb 2, 2010
|
||||
80;The Walking Dead: Season Two - A Telltale Games Series;8.3;Dec 17, 2013
|
||||
80;FLY'N;8.2;Nov 9, 2012
|
||||
80;Total War: Attila;7.3;Feb 17, 2015
|
||||
80;The Wolf Among Us;8.8;Oct 11, 2013
|
||||
80;Nancy Drew: Secret of the Old Clock;8.1;Jul 26, 2005
|
||||
80;ArcheAge;3.6;Sep 16, 2014
|
||||
80;CAPSIZED;7.1;Apr 29, 2011
|
||||
80;Microsoft Flight Simulator X;7.6;Oct 17, 2006
|
||||
80;Myst V: End of Ages;7.8;Sep 19, 2005
|
||||
80;Railroad Tycoon 3;7.7;Oct 23, 2003
|
||||
80;Hostile Waters: Antaeus Rising;8.1;Jun 13, 2001
|
||||
79;Dustforce;7.9;Jan 17, 2012
|
||||
79;Empire Earth II;7.0;Apr 26, 2005
|
||||
79;Fallout 3: Point Lookout;7.8;Jun 23, 2009
|
||||
79;Test Drive Unlimited;8.1;Mar 20, 2007
|
||||
79;Dying Light: The Following;8.3;Feb 9, 2016
|
||||
79;The Path;7.0;Mar 18, 2009
|
||||
79;Dungeon of the Endless;8.0;Oct 27, 2014
|
||||
79;Revenge of the Titans;7.6;May 24, 2010
|
||||
79;Bookworm Adventures: Volume 2;7.6;Jul 30, 2009
|
||||
79;F1 2001;7.5;Oct 14, 2001
|
||||
79;Brothers in Arms: Hell's Highway;7.9;Oct 7, 2008
|
||||
79;Star Wars: Empire at War;8.4;Feb 15, 2006
|
||||
79;Dariusburst: Chronicle Saviours;8.3;Dec 3, 2015
|
||||
79;Europa Universalis: Rome - Vae Victis;8.6;Nov 19, 2008
|
||||
79;Silent Hunter: Wolves of the Pacific;6.5;Mar 20, 2007
|
||||
79;Pillars of Eternity: The White March - Part 2;6.7;Feb 16, 2016
|
||||
79;1701 A.D.;8.3;Nov 6, 2006
|
||||
79;Stasis;7.6;Aug 31, 2015
|
||||
79;Pro Evolution Soccer 2009;7.4;Nov 12, 2008
|
||||
79;Return to Mysterious Island;8.5;Nov 2, 2004
|
||||
79;Jotun;7.0;Sep 29, 2015
|
||||
79;Else Heart.Break();7.5;Sep 24, 2015
|
||||
79;Kohan: Ahriman's Gift;8.7;Nov 5, 2001
|
||||
79;Emperor: Battle for Dune;8.3;Jun 12, 2001
|
||||
79;Trackmania Turbo;6.9;Mar 24, 2016
|
||||
79;Cart Life;5.9;Jul 29, 2010
|
||||
79;Sword of the Stars: Born of Blood;8.1;Jun 5, 2007
|
||||
79;Worms Reloaded;6.7;Aug 26, 2010
|
||||
79;Warhammer: End Times - Vermintide;7.9;Oct 23, 2015
|
||||
79;Euro Truck Simulator 2;8.7;Jan 16, 2013
|
||||
79;Tropico 3;8.2;Oct 20, 2009
|
||||
79;Cities: Skylines - After Dark;7.9;Sep 24, 2015
|
||||
79;Runaway: A Twist of Fate;8.5;Apr 21, 2011
|
||||
79;Tales of Monkey Island Chapter 1: Launch of the Screaming Narwhal;8.2;Jul 7, 2009
|
||||
79;Bloodline Champions;8.0;Jan 13, 2011
|
||||
79;The Sims: Superstar;8.2;May 12, 2003
|
||||
79;NBA Live 2005;8.5;Oct 26, 2004
|
||||
79;Valiant Hearts: The Great War;8.6;Jun 25, 2014
|
||||
79;Payday 2;3.4;Aug 13, 2013
|
||||
79;Dungeons of Dredmor;7.8;Jul 13, 2011
|
||||
79;Geometry Wars 3: Dimensions;6.2;Nov 25, 2014
|
||||
79;Assassin's Creed: Director's Cut Edition;7.5;Apr 8, 2008
|
||||
79;Puzzle Dimension;7.6;Jun 21, 2010
|
||||
79;Split/Second;8.2;May 18, 2010
|
||||
79;Sang-Froid: Tales of Werewolves;7.9;Apr 5, 2013
|
||||
79;The Incredible Adventures of Van Helsing: Final Cut;7.2;Oct 7, 2015
|
||||
79;Hitman: Absolution;7.0;Nov 19, 2012
|
||||
79;Call of Juarez: Gunslinger;8.2;May 22, 2013
|
||||
79;Rome: Total War Alexander;7.6;Jun 19, 2006
|
||||
79;Strong Bad's Cool Game for Attractive People Episode 3: Baddest of the Bands;8.1;Oct 27, 2008
|
||||
79;Sam & Max Episode 102: Situation: Comedy;7.9;Dec 20, 2006
|
||||
79;Tropico 3: Absolute Power;7.7;May 17, 2010
|
||||
79;Sam & Max Episode 106: Bright Side of the Moon;7.3;Apr 26, 2007
|
||||
79;Day of Defeat;9.3;May 6, 2003
|
||||
79;Space Empires: IV;8.3;Nov 6, 2000
|
||||
79;Resident Evil 4: Ultimate HD Edition;7.7;Feb 27, 2014
|
||||
79;Sam & Max Episode 203: Night of the Raving Dead;8.2;Feb 12, 2008
|
||||
79;FlatOut: Ultimate Carnage;7.6;Sep 2, 2008
|
||||
79;Guitar Hero III: Legends of Rock;7.2;Nov 13, 2007
|
||||
79;Sid Meier's Civilization: Beyond Earth - Rising Tide;5.9;Oct 9, 2015
|
||||
79;Memoria;8.5;Aug 29, 2013
|
||||
79;The Last Door;7.8;May 20, 2014
|
||||
79;Shadowgrounds Survivor;7.8;Dec 6, 2007
|
||||
79;Gothic II;8.8;Oct 28, 2003
|
||||
79;Port Royale;8.2;Jun 4, 2003
|
||||
79;Deadly Dozen: Pacific Theater;7.9;Oct 31, 2002
|
||||
79;Shattered Galaxy;8.3;Aug 21, 2001
|
||||
79;Close Combat: Invasion: Normandy;8.2;Oct 10, 2000
|
||||
79;King's Bounty: The Legend;8.6;Sep 23, 2008
|
||||
79;Rage;5.1;Oct 4, 2011
|
||||
79;The Misadventures of P.B. Winterbottom;8.3;Apr 20, 2010
|
||||
79;Uru: Ages Beyond Myst;7.4;Nov 11, 2003
|
||||
79;Guild Wars: Eye of the North;8.6;Aug 28, 2007
|
||||
79;Tales From The Borderlands: Episode 4 - Escape Plan Bravo;8.4;Aug 18, 2015
|
||||
79;EverQuest: Lost Dungeons of Norrath;7.0;Sep 8, 2003
|
||||
79;Battlefield 1942: Secret Weapons of WWII;8.5;Sep 4, 2003
|
||||
79;The Sims: Unleashed;8.0;Sep 23, 2002
|
||||
79;Race the Sun;7.5;Aug 19, 2013
|
||||
79;The Sims 3: Pets;6.1;Oct 18, 2011
|
||||
79;Prototype;7.9;Jun 10, 2009
|
||||
79;Stick it to the Man!;7.2;Dec 13, 2013
|
||||
79;Street Fighter X Tekken;6.4;May 11, 2012
|
||||
79;Frozen Cortex;6.5;Feb 19, 2015
|
||||
79;Free Realms;6.4;Apr 29, 2009
|
||||
79;Homeworld: Deserts of Kharak;8.0;Jan 20, 2016
|
||||
79;Don't Starve;8.3;Apr 23, 2013
|
||||
79;Assault Android Cactus;7.0;Sep 23, 2015
|
||||
79;Trainz;7.2;Feb 10, 2002
|
||||
79;King Arthur: The Role-Playing Wargame;7.9;Nov 24, 2009
|
||||
79;Chivalry: Medieval Warfare;7.8;Oct 16, 2012
|
||||
79;Overlord II;8.1;Jun 23, 2009
|
||||
79;F.E.A.R. 2: Project Origin;7.8;Feb 10, 2009
|
||||
79;Tom Clancy's Rainbow Six Siege;6.9;Dec 1, 2015
|
||||
79;The Settlers 7: Paths to a Kingdom;5.2;Mar 23, 2010
|
||||
79;RollerCoaster Tycoon 3: Soaked!;2.9;Jun 23, 2005
|
||||
79;Dark Souls II: Crown of the Old Iron King;7.6;Aug 26, 2014
|
||||
79;TrackMania 2 Valley;8.3;Jul 4, 2013
|
||||
79;State of Decay;6.8;Nov 5, 2013
|
||||
79;LEGO Harry Potter: Years 1-4;7.8;Jun 29, 2010
|
||||
79;Rift: Storm Legion;7.8;Nov 13, 2012
|
||||
79;Crayon Physics Deluxe;7.6;Jan 7, 2009
|
||||
79;Nancy Drew: Legend of the Crystal Skull;8.5;Oct 8, 2007
|
||||
79;EverQuest II: Desert of Flames;7.8;Sep 12, 2005
|
||||
79;SimCity 4: Rush Hour;8.6;Sep 22, 2003
|
||||
79;Uncommon Valor: Campaign for the South Pacific;7.6;Dec 2, 2002
|
||||
79;Global Operations;8.3;Mar 25, 2002
|
||||
78;Apotheon;7.8;Feb 3, 2015
|
||||
78;Need for Speed: Most Wanted - A Criterion Game;4.4;Oct 30, 2012
|
||||
78;Star Wars: Battlefront II;8.8;Oct 31, 2005
|
||||
78;The Walking Dead: Season Two Episode 1 - All That Remains;8.5;Dec 17, 2013
|
||||
78;The Journey Down: Chapter Two;7.1;Aug 25, 2014
|
||||
78;Star Trek: Elite Force II;7.6;Jun 25, 2003
|
||||
78;Zuma's Revenge!;7.9;Sep 15, 2009
|
||||
78;Baldur's Gate: Enhanced Edition;7.0;Nov 28, 2012
|
||||
78;Doom 3: Resurrection of Evil;6.0;Apr 4, 2005
|
||||
78;LEGO Indiana Jones: The Original Adventures;7.7;Jun 3, 2008
|
||||
78;NASCAR Thunder 2004;7.5;Sep 16, 2003
|
||||
78;Transformers: Fall of Cybertron;7.8;Aug 21, 2012
|
||||
78;FIFA Soccer 06;6.7;Oct 4, 2005
|
||||
78;DeadCore;6.8;Oct 17, 2014
|
||||
78;The Walking Dead: Season Two Episode 5 - No Going Back;8.5;Aug 26, 2014
|
|
@ -0,0 +1,26 @@
|
|||
# Stack und Heap unterscheiden
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Unterschied zwischen Stack und Heap bei parallelen Programmen verstehen.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.threads.stack_heap](../sources/src/main/java/pr2/threads/stack_heap/).
|
||||
|
||||
Schreiben Sie ein kurzes Java-Programm `ThreadProblem`, das den Unterschied zwischen Variablen auf dem Stack und Variablen auf dem Heap bezüglich des gleichzeitigen Zugriffs durch Threads demonstriert.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,994 @@
|
|||
96;Half-Life 2;9.2;Nov 16, 2004
|
||||
96;Grand Theft Auto V;7.8;Apr 14, 2015
|
||||
96;The Orange Box;9.3;Oct 10, 2007
|
||||
96;Half-Life;9.1;Oct 31, 1998
|
||||
96;BioShock;8.4;Aug 21, 2007
|
||||
95;Baldur's Gate II: Shadows of Amn;9.2;Sep 24, 2000
|
||||
95;Portal 2;8.8;Apr 19, 2011
|
||||
94;The Elder Scrolls V: Skyrim;8.1;Nov 11, 2011
|
||||
94;Mass Effect 2;8.7;Jan 26, 2010
|
||||
94;Grand Theft Auto: Vice City;8.8;May 12, 2003
|
||||
94;Civilization II;9.0;Feb 29, 1996
|
||||
94;Quake;8.8;Jun 22, 1996
|
||||
94;BioShock Infinite;8.5;Mar 26, 2013
|
||||
94;The Elder Scrolls IV: Oblivion;8.0;Mar 20, 2006
|
||||
94;Grim Fandango;9.1;Sep 30, 1998
|
||||
94;Diablo;8.7;Nov 30, 1996
|
||||
94;Sid Meier's Civilization IV;8.2;Oct 25, 2005
|
||||
93;The Witcher 3: Wild Hunt;9.1;May 19, 2015
|
||||
93;Company of Heroes;8.8;Sep 13, 2006
|
||||
93;Unreal Tournament 2004;8.9;Mar 16, 2004
|
||||
93;Starcraft II: Wings of Liberty;8.2;Jul 27, 2010
|
||||
93;Minecraft;7.4;May 10, 2009
|
||||
93;Grand Theft Auto III;8.4;May 20, 2002
|
||||
93;Homeworld;8.9;Aug 31, 1999
|
||||
93;Star Wars: Knights of the Old Republic;9.0;Nov 18, 2003
|
||||
93;World of Warcraft;7.2;Nov 23, 2004
|
||||
93;Grand Theft Auto: San Andreas;8.8;Jun 7, 2005
|
||||
92;Call of Duty 4: Modern Warfare;8.5;Nov 5, 2007
|
||||
92;Warcraft III: Reign of Chaos;9.1;Jul 3, 2002
|
||||
92;The Sims;7.9;Jan 31, 2000
|
||||
92;Sid Meier's Gettysburg!;7.7;Sep 30, 1997
|
||||
92;World Soccer Winning Eleven 7 International;7.9;Apr 9, 2004
|
||||
92;Team Fortress 2;9.2;Apr 8, 2008
|
||||
92;System Shock 2;9.1;Aug 11, 1999
|
||||
92;Tom Clancy's Splinter Cell: Chaos Theory;8.8;Mar 28, 2005
|
||||
92;Undertale;8.2;Sep 15, 2015
|
||||
92;Rome: Total War;9.1;Sep 22, 2004
|
||||
92;Thief: The Dark Project;9.1;Nov 30, 1998
|
||||
92;Age of Empires II: The Age of Kings;9.0;Sep 30, 1999
|
||||
92;Unreal Tournament (1999);9.1;Nov 30, 1999
|
||||
92;Sid Meier's Alpha Centauri;9.1;Feb 12, 1999
|
||||
92;Galactic Civilizations II: Twilight of the Arnor;8.4;Apr 30, 2008
|
||||
92;Tiger Woods PGA Tour 2003;6.0;Oct 31, 2002
|
||||
91;Dishonored;8.4;Oct 9, 2012
|
||||
91;Medal of Honor: Allied Assault;8.6;Jan 20, 2002
|
||||
91;Myth: The Fallen Lords;8.8;Oct 31, 1997
|
||||
91;World of Warcraft: Wrath of the Lich King;7.4;Nov 13, 2008
|
||||
91;F1 Challenge '99-'02;8.3;Jun 24, 2003
|
||||
91;Baldur's Gate;9.0;Nov 30, 1998
|
||||
91;IL-2 Sturmovik;8.7;Nov 18, 2001
|
||||
91;FreeSpace 2;8.8;Sep 30, 1999
|
||||
91;Metal Gear Solid V: The Phantom Pain;7.7;Sep 1, 2015
|
||||
91;Tom Clancy's Splinter Cell;8.6;Feb 19, 2003
|
||||
91;Crysis;8.0;Nov 13, 2007
|
||||
91;World of Warcraft: The Burning Crusade;7.9;Jan 16, 2007
|
||||
91;Tiger Woods PGA Tour 2005;4.6;Sep 20, 2004
|
||||
91;The Longest Journey;8.9;Nov 16, 2000
|
||||
91;Tony Hawk's Pro Skater 2;8.5;Oct 31, 2000
|
||||
91;Star Wars Jedi Knight: Dark Forces II;8.5;Sep 30, 1997
|
||||
91;Batman: Arkham Asylum;8.7;Sep 15, 2009
|
||||
91;Galactic Civilizations II: Dark Avatar;8.2;Feb 14, 2007
|
||||
91;The Operative: No One Lives Forever;8.9;Nov 9, 2000
|
||||
91;Battlefield 2;8.4;Jun 21, 2005
|
||||
91;Street Fighter IV;8.0;Jul 1, 2009
|
||||
91;Fallout 3;7.9;Oct 28, 2008
|
||||
91;Batman: Arkham City;8.6;Nov 22, 2011
|
||||
91;Fez;6.5;May 1, 2013
|
||||
91;Planescape: Torment;9.3;Nov 30, 1999
|
||||
91;Neverwinter Nights;8.1;Jun 16, 2002
|
||||
91;No One Lives Forever 2: A Spy in H.A.R.M.'s Way;8.7;Sep 30, 2002
|
||||
91;Dragon Age: Origins;8.6;Nov 3, 2009
|
||||
91;Mark of the Ninja;8.0;Oct 16, 2012
|
||||
91;Dark Souls II;7.1;Apr 25, 2014
|
||||
91;Call of Duty;8.5;Oct 29, 2003
|
||||
91;Madden NFL 2004;8.2;Aug 12, 2003
|
||||
90;The Sims 2;8.8;Sep 14, 2004
|
||||
90;World of Warcraft: Cataclysm;5.5;Dec 7, 2010
|
||||
90;World of Goo;8.5;Oct 21, 2008
|
||||
90;Spelunky;7.2;Aug 8, 2013
|
||||
90;Black & White;7.6;Mar 26, 2001
|
||||
90;Portal;9.3;Apr 8, 2008
|
||||
90;NHL 2001;6.9;Sep 28, 2000
|
||||
90;Tony Hawk's Pro Skater 3;8.6;Mar 28, 2002
|
||||
90;Deus Ex;9.3;Jun 26, 2000
|
||||
90;Half-Life 2: Episode Two;9.2;Oct 10, 2007
|
||||
90;Braid;8.6;Jan 26, 2010
|
||||
90;The Chronicles of Riddick: Escape From Butcher Bay - Developer's Cut;8.7;Dec 8, 2004
|
||||
90;Sid Meier's Civilization III;8.4;Oct 30, 2001
|
||||
90;Silent Hunter III;7.8;Mar 15, 2005
|
||||
90;Sid Meier's Civilization V;7.8;Sep 21, 2010
|
||||
90;Falcon 4.0: Allied Force;8.6;Jun 28, 2005
|
||||
90;Deus Ex: Human Revolution;8.5;Aug 23, 2011
|
||||
90;Dark Souls III;8.2;Apr 12, 2016
|
||||
90;Flight Simulator 2002;8.4;Oct 19, 2001
|
||||
90;Brothers: A Tale of Two Sons;8.5;Sep 3, 2013
|
||||
90;Dota 2;6.2;Jul 9, 2013
|
||||
90;Guild Wars 2;7.9;Aug 28, 2012
|
||||
90;Freedom Force;8.0;Mar 24, 2002
|
||||
90;GTR 2;8.7;Sep 29, 2006
|
||||
90;Grand Theft Auto IV;6.5;Dec 2, 2008
|
||||
90;Total War: Shogun 2;8.3;Mar 15, 2011
|
||||
90;Empire: Total War;6.9;Mar 3, 2009
|
||||
90;Command & Conquer: Red Alert;8.9;Oct 31, 1996
|
||||
89;Star Wars Jedi Knight II: Jedi Outcast;8.6;Mar 26, 2002
|
||||
89;The Walking Dead: A Telltale Games Series;8.7;Dec 11, 2012
|
||||
89;Age of Mythology;8.9;Nov 1, 2002
|
||||
89;Sacrifice;8.8;Nov 5, 2000
|
||||
89;The Witcher 3: Wild Hunt - Hearts of Stone;8.4;Oct 13, 2015
|
||||
89;Pillars of Eternity;8.3;Mar 26, 2015
|
||||
89;The Elder Scrolls III: Morrowind;9.0;May 1, 2002
|
||||
89;Rocksmith 2014 Edition;7.9;Oct 22, 2013
|
||||
89;Fallout;8.9;Sep 30, 1997
|
||||
89;World Soccer Winning Eleven 9;8.4;Apr 28, 2006
|
||||
89;Worldwide Soccer Manager 2005;8.7;Dec 7, 2004
|
||||
89;Left 4 Dead;9.2;Nov 18, 2008
|
||||
89;Left 4 Dead 2;8.5;Nov 17, 2009
|
||||
89;NASCAR Racing 2002 Season;5.8;Feb 14, 2002
|
||||
89;Mass Effect;8.6;May 28, 2008
|
||||
89;Combat Mission: Barbarossa to Berlin;8.3;Oct 29, 2002
|
||||
89;Homeworld: Cataclysm;8.9;Sep 7, 2000
|
||||
89;The Walking Dead: Episode 5 - No Time Left;8.9;Nov 21, 2012
|
||||
89;Guild Wars;8.4;Apr 26, 2005
|
||||
89;Borderlands 2;8.2;Sep 18, 2012
|
||||
89;Max Payne;9.1;Jul 23, 2001
|
||||
89;Out of the Park Baseball 15;7.2;Apr 21, 2014
|
||||
89;World in Conflict;8.1;Sep 18, 2007
|
||||
89;NASCAR Racing 4;8.2;Feb 6, 2001
|
||||
89;Duke Nukem 3D;8.8;Jan 31, 1996
|
||||
89;Far Cry;8.0;Mar 23, 2004
|
||||
89;FIFA Soccer 12;7.1;Sep 27, 2011
|
||||
89;XCOM: Enemy Unknown;8.2;Oct 9, 2012
|
||||
89;Mass Effect 3;5.4;Mar 6, 2012
|
||||
89;Rise of Nations;9.0;May 20, 2003
|
||||
89;NASCAR Racing 2003 Season;8.6;Feb 14, 2003
|
||||
89;Descent 3;8.3;Jun 14, 2000
|
||||
89;The Curse of Monkey Island;9.1;Oct 31, 1997
|
||||
89;Battlefield 3;7.5;Oct 25, 2011
|
||||
89;Battlefield 1942;8.6;Sep 10, 2002
|
||||
89;Madden NFL 2003;8.4;Aug 12, 2002
|
||||
89;DiRT 2;8.3;Dec 10, 2009
|
||||
89;Stardew Valley;8.5;Feb 26, 2016
|
||||
89;Prince of Persia: The Sands of Time;8.6;Nov 30, 2003
|
||||
89;Railroad Tycoon II;8.4;Oct 31, 1998
|
||||
88;Microsoft Flight Simulator 2004: A Century of Flight;8.2;Jul 29, 2003
|
||||
88;Medieval: Total War;8.8;Aug 19, 2002
|
||||
88;Mafia;9.1;Aug 27, 2002
|
||||
88;LIMBO;8.1;Aug 2, 2011
|
||||
88;Nuclear Throne;7.4;Dec 5, 2015
|
||||
88;Crusader Kings II: The Old Gods;8.8;May 28, 2013
|
||||
88;Assassin's Creed: Brotherhood;8.2;Mar 22, 2011
|
||||
88;Superbike 2001;6.5;Oct 9, 2000
|
||||
88;F.E.A.R.;8.3;Oct 17, 2005
|
||||
88;Kerbal Space Program;8.1;Apr 27, 2015
|
||||
88;Tribes 2;8.5;Mar 28, 2001
|
||||
88;Age of Empires II: The Conquerors Expansion;9.0;Aug 24, 2000
|
||||
88;Tiger Woods PGA Tour 2004;8.8;Sep 22, 2003
|
||||
88;Warcraft III: The Frozen Throne;9.0;Jul 1, 2003
|
||||
88;Starcraft;9.1;Apr 1, 1998
|
||||
88;Far Cry 3;8.2;Dec 4, 2012
|
||||
88;XCOM 2;7.0;Feb 5, 2016
|
||||
88;World Soccer Winning Eleven 8 International;8.5;Feb 16, 2005
|
||||
88;Torchlight II;8.6;Sep 20, 2012
|
||||
88;Myth II: Soulblighter;9.0;Nov 30, 1998
|
||||
88;Return to Castle Wolfenstein;8.7;Nov 19, 2001
|
||||
88;Shogo: Mobile Armor Division;8.9;Sep 30, 1998
|
||||
88;Thirty Flights of Loving;5.0;Aug 20, 2012
|
||||
88;Hearthstone: Heroes of Warcraft;6.3;Mar 11, 2014
|
||||
88;Medieval II: Total War;8.9;Nov 13, 2006
|
||||
88;F1 2002;7.6;Jun 13, 2002
|
||||
88;The Stanley Parable;8.0;Oct 17, 2013
|
||||
88;BioShock 2;8.0;Feb 9, 2010
|
||||
88;Counter-Strike: Source;8.9;Sep 26, 2005
|
||||
88;Starcraft II: Legacy of the Void;8.3;Nov 10, 2015
|
||||
88;Diablo III;4.0;May 15, 2012
|
||||
88;Rise of Nations: Thrones & Patriots;8.8;Apr 27, 2004
|
||||
88;Sid Meier's Pirates!;8.3;Nov 22, 2004
|
||||
88;EVE Online: Special Edition;7.8;Mar 10, 2009
|
||||
88;Guacamelee! Gold Edition;7.3;Aug 8, 2013
|
||||
88;Armadillo Run;8.2;Apr 22, 2006
|
||||
88;Dark Age of Camelot;8.9;Sep 1, 2001
|
||||
88;Baldur's Gate II: Throne of Bhaal;8.9;Jun 21, 2001
|
||||
88;Counter-Strike;9.3;Nov 8, 2000
|
||||
88;Tony Hawk's Pro Skater 4;8.4;Aug 27, 2003
|
||||
88;Ori and the Blind Forest;8.7;Mar 11, 2015
|
||||
88;Diablo II;8.8;Jun 29, 2000
|
||||
88;The Witcher 2: Assassins of Kings;8.5;May 17, 2011
|
||||
87;Plants vs. Zombies;8.9;Aug 18, 2009
|
||||
87;Doom 3;7.5;Aug 3, 2004
|
||||
87;Super Meat Boy;8.3;Apr 5, 2011
|
||||
87;Football Manager 2010;9.1;Nov 3, 2009
|
||||
87;Oddworld: Abe's Oddysee - New 'n' Tasty;7.8;Feb 25, 2015
|
||||
87;Tom Clancy's Splinter Cell: Pandora Tomorrow;8.0;Mar 23, 2004
|
||||
87;Europa Universalis II;8.8;Nov 12, 2001
|
||||
87;Burnout Paradise: The Ultimate Box;7.5;Feb 5, 2009
|
||||
87;Battlefield: Bad Company 2;8.3;Mar 2, 2010
|
||||
87;GRID;7.9;Jun 3, 2008
|
||||
87;Crypt of the NecroDancer;7.7;Apr 23, 2015
|
||||
87;Sins of a Solar Empire;8.2;Feb 4, 2008
|
||||
87;MechWarrior 4: Vengeance;8.2;Nov 23, 2000
|
||||
87;Thief II: The Metal Age;9.1;Feb 29, 2000
|
||||
87;Diablo II: Lord of Destruction;9.1;Jun 27, 2001
|
||||
87;Monkey Island 2 Special Edition: LeChuck's Revenge;9.0;Jul 7, 2010
|
||||
87;Half-Life 2: Episode One;8.6;Jun 1, 2006
|
||||
87;The Swapper;8.7;May 30, 2013
|
||||
87;Hitman 2: Silent Assassin;8.2;Oct 1, 2002
|
||||
87;Year Walk;7.0;Mar 6, 2014
|
||||
87;Max Payne 3;7.6;Jun 1, 2012
|
||||
87;TowerFall Ascension;6.6;Mar 11, 2014
|
||||
87;Battlefield 3: Armored Kill;7.0;Sep 11, 2012
|
||||
87;NHL 2002;8.7;Sep 17, 2001
|
||||
87;Icewind Dale;8.3;Jun 29, 2000
|
||||
87;The Witness;6.6;Jan 26, 2016
|
||||
87;Brothers in Arms: Road to Hill 30;7.1;Mar 15, 2005
|
||||
87;Kohan: Immortal Sovereigns;8.6;Mar 14, 2001
|
||||
87;Day of the Tentacle Remastered;7.9;Mar 21, 2016
|
||||
87;Dead Space 2;8.3;Jan 25, 2011
|
||||
87;Diablo III: Reaper of Souls;6.6;Mar 25, 2014
|
||||
87;Shogun: Total War Warlord Edition;8.7;Aug 13, 2001
|
||||
87;Serious Sam: The First Encounter;8.4;Mar 21, 2001
|
||||
87;Grand Prix 3;8.3;Aug 24, 2000
|
||||
87;Call of Duty: United Offensive;8.3;Sep 14, 2004
|
||||
87;Divinity: Original Sin;8.7;Jan 17, 2014
|
||||
87;Company of Heroes: Opposing Fronts;8.6;Sep 24, 2007
|
||||
87;Psychonauts;8.9;Apr 19, 2005
|
||||
87;Gears of War;7.8;Nov 6, 2007
|
||||
87;Out of the Park Baseball 4;7.8;Feb 28, 2002
|
||||
87;Europa Universalis IV;8.7;Aug 13, 2013
|
||||
87;NHL 2004;8.2;Sep 22, 2003
|
||||
87;Zeus: Master of Olympus;9.0;Oct 22, 2000
|
||||
87;World of Warcraft: Warlords of Draenor;6.0;Nov 13, 2014
|
||||
87;Warhammer 40,000: Dawn of War - Dark Crusade;8.9;Oct 9, 2006
|
||||
87;Commandos 2: Men of Courage;8.8;Sep 20, 2001
|
||||
86;Tales From The Borderlands: Episode 5 - The Vault of the Traveler;8.7;Oct 20, 2015
|
||||
86;Bastion;8.6;Aug 16, 2011
|
||||
86;Gone Home;5.4;Aug 15, 2013
|
||||
86;Pac-Man Championship Edition DX +;7.3;Sep 24, 2013
|
||||
86;Supreme Commander;8.3;Feb 20, 2007
|
||||
86;Total War: Shogun 2 - Fall of the Samurai;8.4;Mar 23, 2012
|
||||
86;Startopia;8.7;Jun 19, 2001
|
||||
86;Enemy Engaged: RAH-66 Comanche Versus Ka-52 Hokum;8.3;Jul 31, 2000
|
||||
86;Fallout 2;9.2;Sep 30, 1998
|
||||
86;Final Fantasy XIV: Heavensward;7.7;Jun 23, 2015
|
||||
86;Football Manager 2013;6.7;Nov 1, 2012
|
||||
86;Out of the Park Baseball 14;8.6;Apr 15, 2013
|
||||
86;The Witcher: Enhanced Edition;8.5;Sep 16, 2008
|
||||
86;Borderlands: The Secret Armory of General Knoxx;7.6;Feb 25, 2010
|
||||
86;Call of Duty 2;8.3;Oct 25, 2005
|
||||
86;Astebreed;7.3;May 30, 2014
|
||||
86;Ground Control;7.8;May 31, 2000
|
||||
86;Rise of the Tomb Raider;8.0;Jan 28, 2016
|
||||
86;Resident Evil 5;7.1;Sep 18, 2009
|
||||
86;Saints Row IV;7.4;Aug 20, 2013
|
||||
86;Black Mesa;9.0;Sep 14, 2012
|
||||
86;EverQuest: Omens of War;7.7;Sep 13, 2004
|
||||
86;Steel Beasts;8.4;Sep 24, 2000
|
||||
86;Total Annihilation;8.9;Sep 30, 1997
|
||||
86;Need for Speed: Hot Pursuit;6.7;Nov 16, 2010
|
||||
86;FIFA Soccer 13;6.6;Sep 25, 2012
|
||||
86;Sid Meier's Civilization IV: Beyond the Sword;8.6;Jul 23, 2007
|
||||
86;The Sims 3;7.6;Jun 2, 2009
|
||||
86;Freedom Force vs The 3rd Reich;7.7;Mar 8, 2005
|
||||
86;The Binding of Isaac: Rebirth;8.3;Nov 4, 2014
|
||||
86;Tribes: Ascend;7.7;Apr 12, 2012
|
||||
86;Titanfall;6.1;Mar 11, 2014
|
||||
86;Rayman Origins;8.4;Mar 29, 2012
|
||||
86;Her Story;5.7;Jun 24, 2015
|
||||
86;Starcraft II: Heart of the Swarm;7.9;Mar 12, 2013
|
||||
86;Mass Effect 2: Lair of the Shadow Broker;8.5;Sep 7, 2010
|
||||
86;LEGO Star Wars II: The Original Trilogy;8.3;Sep 12, 2006
|
||||
86;Dungeon Siege;7.9;Mar 31, 2002
|
||||
86;Crysis 2;6.7;Mar 22, 2011
|
||||
86;Call of Duty: Modern Warfare 2;4.1;Nov 10, 2009
|
||||
86;The Secret of Monkey Island: Special Edition;9.1;Jul 15, 2009
|
||||
86;Max Payne 2: The Fall of Max Payne;9.0;Oct 14, 2003
|
||||
86;Homeworld Remastered Collection;8.2;Feb 25, 2015
|
||||
86;Galactic Civilizations II: Dread Lords;8.0;Feb 21, 2006
|
||||
86;Tomb Raider;8.5;Mar 5, 2013
|
||||
86;Star Trek: Voyager Elite Force;8.2;Sep 20, 2000
|
||||
86;Worldwide Soccer Manager 2008;8.4;Oct 23, 2007
|
||||
86;IL-2 Sturmovik: Forgotten Battles;8.6;Mar 2, 2003
|
||||
86;Hyper Light Drifter;8.1;Mar 31, 2016
|
||||
86;DiRT 3;6.9;May 24, 2011
|
||||
86;Unreal Tournament 2003;8.1;Sep 30, 2002
|
||||
86;Age of Wonders II: The Wizard's Throne;8.4;Jun 12, 2002
|
||||
86;Links 2001;6.8;Oct 24, 2000
|
||||
86;EverQuest: The Ruins of Kunark;8.8;Mar 31, 2000
|
||||
86;Full Throttle;8.8;Apr 30, 1995
|
||||
86;The Lord of the Rings Online: Shadows of Angmar;8.1;Apr 24, 2007
|
||||
86;Pony Island;6.8;Jan 4, 2016
|
||||
86;Warhammer 40,000: Dawn of War;8.8;Sep 20, 2004
|
||||
86;Warhammer Online: Age of Reckoning;7.9;Sep 16, 2008
|
||||
86;Dead Space;8.0;Oct 20, 2008
|
||||
86;Bionic Commando Rearmed;7.0;Aug 13, 2008
|
||||
86;Command & Conquer: Red Alert 2 - Yuri's Revenge;9.0;Oct 10, 2001
|
||||
86;Europa Universalis;8.1;Feb 2, 2001
|
||||
86;Escape from Monkey Island;8.2;Nov 8, 2000
|
||||
86;IL-2 Sturmovik: 1946;8.8;Mar 13, 2007
|
||||
86;XCOM: Enemy Within;7.9;Nov 12, 2013
|
||||
86;Battlefield 3: Back to Karkand;7.2;Dec 13, 2011
|
||||
86;Heroes of the Storm;6.7;Jun 2, 2015
|
||||
86;Civilization III: Conquests;8.4;Nov 4, 2003
|
||||
86;Path of Exile;8.0;Jan 25, 2013
|
||||
86;Battlefield: Bad Company 2 Vietnam;8.1;Dec 18, 2010
|
||||
86;Assassin's Creed II;6.8;Mar 9, 2010
|
||||
86;The Elder Scrolls IV: Shivering Isles;8.4;Mar 26, 2007
|
||||
86;DiRT Rally;8.8;Dec 7, 2015
|
||||
86;Rocket League;8.1;Jul 7, 2015
|
||||
86;Allegiance;8.2;Mar 31, 2000
|
||||
85;The Talos Principle;8.5;Dec 11, 2014
|
||||
85;Cities: Skylines;8.9;Mar 10, 2015
|
||||
85;Falcon 4.0;8.0;Nov 30, 1998
|
||||
85;Tom Clancy's Rainbow Six;8.6;Jul 31, 1998
|
||||
85;Madden NFL 2005;6.4;Sep 14, 2004
|
||||
85;Legend of Grimrock II;8.0;Oct 15, 2014
|
||||
85;Sam & Max Episode 205: What's New, Beelzebub?;8.6;Apr 10, 2008
|
||||
85;Dragon Age: Inquisition;5.8;Nov 18, 2014
|
||||
85;Tales from the Borderlands: A Telltale Game Series;8.7;Apr 26, 2016
|
||||
85;Tom Clancy's Rainbow Six: Vegas;7.7;Dec 12, 2006
|
||||
85;City of Heroes;8.5;Apr 27, 2004
|
||||
85;SWAT 4;8.6;Apr 5, 2005
|
||||
85;Clive Barker's Undying;8.7;Feb 21, 2001
|
||||
85;EverQuest;8.2;Mar 16, 1999
|
||||
85;Warhammer 40,000: Dawn of War II;8.1;Feb 18, 2009
|
||||
85;Command & Conquer 3: Tiberium Wars;8.0;Mar 26, 2007
|
||||
85;Bit.Trip Presents...Runner2: Future Legend of Rhythm Alien;8.2;Feb 26, 2013
|
||||
85;Hotline Miami;8.5;Oct 23, 2012
|
||||
85;Out of the Park Baseball 13;8.2;Apr 9, 2012
|
||||
85;Wizardry 8;8.6;Nov 14, 2001
|
||||
85;Aliens Versus Predator 2;8.7;Oct 31, 2001
|
||||
85;Operation Flashpoint: Cold War Crisis;9.0;Aug 30, 2001
|
||||
85;Tropico;8.4;Apr 5, 2001
|
||||
85;Giants: Citizen Kabuto;8.9;Dec 6, 2000
|
||||
85;NASCAR SimRacing;4.9;Feb 15, 2005
|
||||
85;The Lord of the Rings Online: Mines of Moria;8.3;Nov 17, 2008
|
||||
85;The Binding of Isaac: Afterbirth;8.1;Oct 30, 2015
|
||||
85;Amnesia: The Dark Descent;8.6;Feb 17, 2011
|
||||
85;GTR FIA Racing;8.6;May 3, 2005
|
||||
85;Football Manager 2011;8.4;Nov 23, 2010
|
||||
85;Dust: An Elysian Tail;8.5;May 24, 2013
|
||||
85;South Park: The Stick of Truth;8.6;Mar 4, 2014
|
||||
85;Dark Souls: Prepare to Die Edition;7.4;Aug 24, 2012
|
||||
85;Medieval II: Total War Kingdoms;8.8;Aug 28, 2007
|
||||
85;Shovel Knight;7.9;Jun 26, 2014
|
||||
85;DmC: Devil May Cry;6.7;Jan 24, 2013
|
||||
85;Peggle Deluxe;8.1;Feb 19, 2008
|
||||
85;Monopoly Tycoon;8.0;Sep 24, 2001
|
||||
85;Indigo Prophecy;8.3;Oct 2, 2005
|
||||
85;Prince of Persia: The Two Thrones;8.0;Dec 1, 2005
|
||||
85;Sam & Max Episode 204: Chariots of the Dogs;8.1;Mar 13, 2008
|
||||
85;Assetto Corsa;8.4;Dec 19, 2014
|
||||
85;Machinarium;8.8;Oct 16, 2009
|
||||
85;Frozen Synapse;7.7;May 26, 2011
|
||||
85;Valkyria Chronicles;8.3;Nov 11, 2014
|
||||
85;Freelancer;8.9;Mar 3, 2003
|
||||
85;Zenzizenzic;5.9;Jul 23, 2015
|
||||
85;The Wolf Among Us: Episode 1 - Faith;9.0;Oct 11, 2013
|
||||
85;Mega Man Legacy Collection;7.3;Aug 25, 2015
|
||||
85;Warhammer 40,000: Dawn of War II - Chaos Rising;8.7;Mar 11, 2010
|
||||
85;Far Cry 2;5.8;Oct 21, 2008
|
||||
85;The Walking Dead: Episode 3 - Long Road Ahead;8.4;Aug 29, 2012
|
||||
85;AudioSurf;8.8;Feb 15, 2008
|
||||
85;BattleBlock Theater;8.0;May 15, 2014
|
||||
85;Star Wars: Knights of the Old Republic II - The Sith Lords;8.4;Feb 8, 2005
|
||||
85;MVP Baseball 2005;8.1;Feb 22, 2005
|
||||
85;The Elder Scrolls III: Bloodmoon;8.5;Jun 3, 2003
|
||||
85;Rogue Legacy;7.9;Jun 27, 2013
|
||||
85;Chaos Reborn;8.4;Oct 26, 2015
|
||||
85;Thief: Deadly Shadows;8.4;May 25, 2004
|
||||
85;Football Manager 2014;5.4;Oct 30, 2013
|
||||
85;System Shock: Enhanced Edition;7.9;Sep 22, 2015
|
||||
85;EverQuest: Gates of Discord;6.8;Feb 9, 2004
|
||||
85;FIFA 2001 Major League Soccer;7.3;Oct 30, 2000
|
||||
85;Sid Meier's Civilization V: Brave New World;8.6;Jul 9, 2013
|
||||
85;Final Fantasy XI;7.5;Oct 28, 2003
|
||||
85;Serious Sam: The Second Encounter;8.5;Feb 4, 2002
|
||||
85;The Sims: Hot Date;7.9;Nov 12, 2001
|
||||
85;American McGee's Alice;8.2;Dec 6, 2000
|
||||
85;Trials Evolution: Gold Edition;6.7;Mar 21, 2013
|
||||
85;Warhammer 40,000: Dawn of War - Winter Assault;8.3;Sep 21, 2005
|
||||
85;Tony Hawk's Underground 2;7.9;Oct 4, 2004
|
||||
85;Papers, Please;8.5;Aug 8, 2013
|
||||
85;Star Wars: The Old Republic;5.9;Dec 20, 2011
|
||||
85;Anarchy Online: Shadowlands;8.7;Sep 8, 2003
|
||||
85;Dark Age of Camelot: Shrouded Isles;8.8;Dec 2, 2002
|
||||
85;Obsidian;8.3;Dec 31, 1996
|
||||
84;The Walking Dead: Episode 2 - Starved for Help;8.6;Jun 29, 2012
|
||||
84;Saints Row: The Third;8.1;Nov 15, 2011
|
||||
84;Fallout: New Vegas;8.5;Oct 19, 2010
|
||||
84;The Movies;8.3;Nov 8, 2005
|
||||
84;Neverwinter Nights: Hordes of the Underdark;8.6;Dec 2, 2003
|
||||
84;Command & Conquer: Generals;8.3;Feb 10, 2003
|
||||
84;Sid Meier's SimGolf;8.2;Jan 23, 2002
|
||||
84;Middle-earth: Shadow of Mordor;8.0;Sep 30, 2014
|
||||
84;SpaceChem;8.4;Mar 2, 2011
|
||||
84;Downwell;6.2;Oct 15, 2015
|
||||
84;Pinball FX 2;8.0;Oct 27, 2012
|
||||
84;Devil Daggers;6.7;Feb 18, 2016
|
||||
84;PlanetSide 2;7.0;Nov 20, 2012
|
||||
84;Enter the Gungeon;7.4;Apr 5, 2016
|
||||
84;GT Legends;8.6;Jan 23, 2006
|
||||
84;Hearthstone: Goblins Vs. Gnomes;6.6;Dec 8, 2014
|
||||
84;Space Rangers 2: Rise of the Dominators;9.0;Mar 27, 2006
|
||||
84;Tales From The Borderlands: Episode 1 - Zer0 Sum;8.4;Nov 25, 2014
|
||||
84;Puzzle Quest: Challenge of the Warlords;8.3;Oct 10, 2007
|
||||
84;Heroes of Might and Magic IV;7.6;Mar 29, 2002
|
||||
84;Command & Conquer: Red Alert 2;8.9;Oct 21, 2000
|
||||
84;Shogun: Total War;8.7;Jun 13, 2000
|
||||
84;DiRT;7.2;Jun 19, 2007
|
||||
84;Darkest Dungeon;8.0;Jan 19, 2016
|
||||
84;Super Street Fighter IV: Arcade Edition;7.8;Jul 13, 2011
|
||||
84;Football Manager 2012;8.0;Oct 20, 2011
|
||||
84;Guild Wars Factions;8.5;Apr 28, 2006
|
||||
84;80 Days (2015);6.1;Sep 29, 2015
|
||||
84;Spore;5.2;Sep 7, 2008
|
||||
84;Unity of Command;7.2;Nov 15, 2011
|
||||
84;Hearthstone: The Grand Tournament;4.0;Aug 24, 2015
|
||||
84;Metro Redux;8.0;Aug 26, 2014
|
||||
84;Time Gentlemen, Please!;7.6;Jul 2, 2009
|
||||
84;Europa Universalis IV: Wealth of Nations;8.4;May 29, 2014
|
||||
84;Mass Effect 3: Citadel;7.8;Mar 5, 2013
|
||||
84;Disciples II: Dark Prophecy;8.6;Jan 22, 2002
|
||||
84;Just Cause 2;7.7;Mar 23, 2010
|
||||
84;Crysis Warhead;7.9;Sep 16, 2008
|
||||
84;Assassin's Creed IV: Black Flag;7.7;Nov 19, 2013
|
||||
84;Age of Mythology: The Titans;8.7;Sep 30, 2003
|
||||
84;SimCity 4;8.7;Jan 12, 2003
|
||||
84;Microsoft Train Simulator;8.4;May 31, 2001
|
||||
84;Rise of Nations: Rise of Legends;8.5;May 9, 2006
|
||||
84;TOCA Race Driver 3;7.8;Feb 24, 2006
|
||||
84;FTL: Faster Than Light;8.4;Sep 14, 2012
|
||||
84;SOMA;8.2;Sep 22, 2015
|
||||
84;DEFCON: Everybody Dies;8.3;Mar 26, 2007
|
||||
84;Tron 2.0;8.3;Aug 26, 2003
|
||||
84;Brothers in Arms: Earned in Blood;7.3;Oct 6, 2005
|
||||
84;Grim Fandango Remastered;8.0;Jan 27, 2015
|
||||
84;The Lord of the Rings: The Battle for Middle-Earth II;7.5;Mar 2, 2006
|
||||
84;Battlefield Vietnam;7.4;Mar 16, 2004
|
||||
84;Medieval: Total War - Viking Invasion;8.8;May 7, 2003
|
||||
84;Fallout 4;5.4;Nov 10, 2015
|
||||
84;Guild Wars Nightfall;8.7;Oct 26, 2006
|
||||
84;The Binding of Isaac;8.3;Sep 28, 2011
|
||||
84;Enemy Territory: Quake Wars;8.3;Oct 2, 2007
|
||||
84;Trine 2;8.4;Dec 7, 2011
|
||||
84;Rift;7.3;Mar 1, 2011
|
||||
84;The Wolf Among Us: Episode 5 - Cry Wolf;8.8;Jul 8, 2014
|
||||
84;Shift 2: Unleashed;6.1;Mar 29, 2011
|
||||
84;Sid Meier's Civilization IV: Warlords;8.2;Jul 24, 2006
|
||||
84;Battlefield 1942: The Road to Rome;7.9;Feb 2, 2003
|
||||
84;Poseidon;8.4;Jun 25, 2001
|
||||
84;F1 2010;6.6;Sep 22, 2010
|
||||
84;Shatter;7.4;Mar 15, 2010
|
||||
84;Darwinia;7.9;Jun 12, 2006
|
||||
84;Ultimate General: Gettysburg;8.0;Oct 16, 2014
|
||||
83;Final Fantasy XI: Treasures of Aht Urhgan;7.6;Apr 18, 2006
|
||||
83;MDK2;8.4;May 31, 2000
|
||||
83;Gunpoint;8.4;Jun 3, 2013
|
||||
83;Beyond Good & Evil;8.7;Nov 19, 2003
|
||||
83;Anno 2070;7.0;Nov 17, 2011
|
||||
83;SMITE;8.3;Mar 25, 2014
|
||||
83;Halo: Combat Evolved;7.4;Sep 30, 2003
|
||||
83;Grim Dawn;8.9;Feb 25, 2016
|
||||
83;Silent Storm;8.9;Jan 20, 2004
|
||||
83;Command & Conquer: Generals - Zero Hour;9.0;Sep 22, 2003
|
||||
83;Homeworld 2;8.3;Sep 16, 2003
|
||||
83;Galactic Civilizations;8.1;Mar 26, 2003
|
||||
83;EverQuest: The Shadows of Luclin;7.2;Dec 2, 2001
|
||||
83;Orcs Must Die!;8.1;Oct 11, 2011
|
||||
83;Life is Strange;8.6;Jan 19, 2016
|
||||
83;Fable: The Lost Chapters;8.7;Sep 20, 2005
|
||||
83;Unreal Tournament III;8.0;Nov 19, 2007
|
||||
83;The Blackwell Epiphany;7.6;Apr 24, 2014
|
||||
83;The Lord of the Rings Online: Siege of Mirkwood;7.1;Dec 1, 2009
|
||||
83;Out of the Park Baseball 10;8.3;Jun 2, 2009
|
||||
83;Tomb Raider: Anniversary;8.0;Jun 5, 2007
|
||||
83;Need for Speed: Shift;5.7;Sep 15, 2009
|
||||
83;Hearts of Iron II;8.6;Jan 4, 2005
|
||||
83;FIFA Soccer 11;7.6;Sep 28, 2010
|
||||
83;Project CARS;7.0;May 6, 2015
|
||||
83;FIFA Soccer 2003;6.8;Nov 2, 2002
|
||||
83;Icewind Dale II;8.3;Aug 26, 2002
|
||||
83;Age of Empires;8.8;Sep 30, 1997
|
||||
83;EverQuest II: Echoes of Faydwer;8.4;Nov 13, 2006
|
||||
83;EverQuest II;7.3;Nov 8, 2004
|
||||
83;Terraria;8.5;May 16, 2011
|
||||
83;Final Fantasy XIV Online: A Realm Reborn;6.7;Aug 27, 2013
|
||||
83;Card Hunter (2013);7.9;Sep 12, 2013
|
||||
83;Sam & Max: The Devil's Playhouse - Episode 2: The Tomb of Sammun-Mak;7.9;May 18, 2010
|
||||
83;This War of Mine;8.4;Nov 14, 2014
|
||||
83;Darksiders;7.7;Sep 23, 2010
|
||||
83;Tom Clancy's Rainbow Six 3: Raven Shield;8.9;Mar 19, 2003
|
||||
83;World of Outlaws: Sprint Cars;7.9;Feb 11, 2003
|
||||
83;Colin McRae Rally 2.0;8.4;Feb 14, 2001
|
||||
83;Combat Flight Simulator 2: WWII Pacific Theater;8.1;Oct 13, 2000
|
||||
83;Orcs Must Die! 2;7.9;Jul 30, 2012
|
||||
83;Prey;7.9;Jul 11, 2006
|
||||
83;Metal Gear Rising: Revengeance;7.9;Jan 9, 2014
|
||||
83;Starseed Pilgrim;6.3;Apr 16, 2013
|
||||
83;Age of Conan: Rise of the Godslayer;8.4;May 11, 2010
|
||||
83;Alan Wake;8.0;Feb 16, 2012
|
||||
83;Tiger Woods PGA Tour 2002;5.0;Feb 24, 2002
|
||||
83;Monaco: What's Yours Is Mine;7.7;Apr 24, 2013
|
||||
83;Transistor;8.3;May 20, 2014
|
||||
83;Helldivers;6.9;Dec 7, 2015
|
||||
83;Worldwide Soccer Manager 2009;8.1;Nov 18, 2008
|
||||
83;Call of Duty: World at War;7.5;Nov 10, 2008
|
||||
83;Torchlight;8.0;Jan 5, 2010
|
||||
83;Prison Architect;8.3;Oct 6, 2015
|
||||
83;Valdis Story: Abyssal City;8.1;Oct 30, 2013
|
||||
83;Crimson Skies;8.2;Sep 17, 2000
|
||||
83;RACE 07: Official WTCC Game;9.0;Oct 9, 2007
|
||||
83;SUPERHOT;7.6;Feb 25, 2016
|
||||
83;EverQuest II: Rise of Kunark;7.9;Nov 13, 2007
|
||||
83;Dark Age of Camelot: Catacombs;8.6;Dec 7, 2004
|
||||
83;Spore Creature Creator;8.1;Jun 17, 2008
|
||||
83;Colin McRae Rally 2005;7.0;Oct 28, 2004
|
||||
83;Tom Clancy's Splinter Cell: Conviction;5.2;Apr 27, 2010
|
||||
83;Tribes: Vengeance;7.6;Oct 12, 2004
|
||||
83;L.A. Noire: The Complete Edition;7.9;Nov 8, 2011
|
||||
83;GTR Evolution;8.2;Sep 2, 2008
|
||||
83;Life is Strange: Episode 5 - Polarized;8.4;Oct 20, 2015
|
||||
83;BROFORCE;8.0;Oct 15, 2015
|
||||
83;Independence War 2: Edge of Chaos;8.4;Aug 22, 2001
|
||||
83;Myst III: Exile;8.2;May 8, 2001
|
||||
83;Superbrothers: Sword & Sworcery EP;6.4;Apr 16, 2012
|
||||
83;Sid Meier's Civilization IV: Colonization;6.7;Sep 22, 2008
|
||||
83;Europa Universalis III;8.4;Jan 23, 2007
|
||||
83;F1 2011;7.2;Sep 20, 2011
|
||||
83;Prince of Persia: Warrior Within;8.4;Nov 30, 2004
|
||||
83;Danganronpa: Trigger Happy Havoc;7.6;Feb 18, 2016
|
||||
83;Counter-Strike: Global Offensive;7.8;Aug 21, 2012
|
||||
83;Outland;7.1;Sep 29, 2014
|
||||
83;MechWarrior 4: Mercenaries;8.6;Nov 7, 2002
|
||||
83;Metal Gear Solid;9.0;Sep 24, 2000
|
||||
82;Invisible, Inc.;8.0;May 12, 2015
|
||||
82;Dark Souls II: Crown of the Ivory King;7.8;Sep 29, 2014
|
||||
82;Red Faction: Guerrilla;7.5;Sep 15, 2009
|
||||
82;The Book of Unwritten Tales;8.2;Oct 28, 2011
|
||||
82;Capitalism II;9.0;Dec 16, 2001
|
||||
82;Rally Trophy;8.5;Nov 20, 2001
|
||||
82;Dawn of Discovery;8.8;Jun 17, 2009
|
||||
82;City of Villains;8.1;Oct 31, 2005
|
||||
82;Kentucky Route Zero - Act II;8.0;May 31, 2013
|
||||
82;Tom Clancy's Splinter Cell: Blacklist;7.4;Aug 20, 2013
|
||||
82;Act of War: Direct Action;8.5;Mar 15, 2005
|
||||
82;Sokobond;7.8;Aug 27, 2013
|
||||
82;Sam & Max Episode 105: Reality 2.0;8.4;Mar 29, 2007
|
||||
82;Bejeweled 3;8.0;Dec 7, 2010
|
||||
82;Dangerous Waters;8.8;Feb 22, 2005
|
||||
82;Tomb Raider: Legend;7.8;Apr 11, 2006
|
||||
82;Asheron's Call 2: Fallen Kings;8.8;Nov 20, 2002
|
||||
82;Gemini Rue;8.4;Feb 24, 2011
|
||||
82;Antichamber;8.2;Jan 31, 2013
|
||||
82;Neverwinter Nights 2;6.5;Oct 31, 2006
|
||||
82;Dragon Age: Origins - Awakening;7.7;Mar 16, 2010
|
||||
82;Door Kickers;8.2;Oct 20, 2014
|
||||
82;Hearthstone: Blackrock Mountain;6.4;Apr 2, 2015
|
||||
82;Rome: Total War Barbarian Invasion;8.4;Sep 27, 2005
|
||||
82;Hacknet;7.3;Aug 12, 2015
|
||||
82;Tales of Monkey Island Chapter 3: Lair of the Leviathan;7.8;Sep 29, 2009
|
||||
82;Neverwinter Nights 2: Mask of The Betrayer;8.8;Oct 9, 2007
|
||||
82;Sins of a Solar Empire: Rebellion;7.8;Jun 12, 2012
|
||||
82;Broken Sword: The Sleeping Dragon;7.6;Nov 17, 2003
|
||||
82;Age of Wonders: Shadow Magic;8.5;Jul 25, 2003
|
||||
82;Tom Clancy's Ghost Recon: Desert Siege;8.4;Mar 27, 2002
|
||||
82;Warlords Battlecry II;8.5;Mar 11, 2002
|
||||
82;Football Manager Live;2.9;Jan 23, 2009
|
||||
82;Marvel: Ultimate Alliance;8.3;Oct 24, 2006
|
||||
82;The Talos Principle: Road To Gehenna;7.6;Jul 23, 2015
|
||||
82;Lara Croft and the Guardian of Light;8.2;Sep 28, 2010
|
||||
82;Aquaria;8.3;Dec 7, 2007
|
||||
82;Need for Speed: Underground;8.3;Nov 17, 2003
|
||||
82;TrackMania Sunrise;8.5;May 6, 2005
|
||||
82;King's Quest Chapter 1: A Knight to Remember;7.2;Jul 28, 2015
|
||||
82;Dragon Age II;4.4;Mar 8, 2011
|
||||
82;Endless Legend;7.9;Apr 24, 2014
|
||||
82;Tom Clancy's Ghost Recon: Island Thunder;8.3;Sep 25, 2002
|
||||
82;S.T.A.L.K.E.R.: Shadow of Chernobyl;8.4;Mar 20, 2007
|
||||
82;Kero Blaster;6.9;May 11, 2014
|
||||
82;Monday Night Combat;7.3;Jan 24, 2011
|
||||
82;The Wolf Among Us: Episode 3 - A Crooked Mile;8.6;Apr 8, 2014
|
||||
82;Airborne Assault: Red Devils Over Arnhem;7.4;Jun 17, 2002
|
||||
82;Fallout Tactics: Brotherhood of Steel;7.9;Mar 14, 2001
|
||||
82;Need for Speed: Underground 2;8.5;Nov 9, 2004
|
||||
82;NHL Eastside Hockey Manager 2005;6.6;Oct 5, 2005
|
||||
82;Legend of Grimrock;8.1;Apr 11, 2012
|
||||
82;Dominions 3: The Awakening;8.1;Sep 29, 2006
|
||||
82;Bulletstorm;7.7;Feb 22, 2011
|
||||
82;Borderlands 2: Mr. Torgue's Campaign of Carnage;7.3;Nov 20, 2012
|
||||
82;Desktop Dungeons;8.2;Oct 17, 2010
|
||||
82;Fallout: New Vegas - Old World Blues;7.8;Jul 19, 2011
|
||||
82;Crusader Kings II;8.7;Feb 14, 2012
|
||||
82;MVP Baseball 2004;7.9;Mar 9, 2004
|
||||
82;Europa 1400: The Guild;8.6;Nov 18, 2002
|
||||
82;Battle Realms;8.6;Nov 7, 2001
|
||||
82;Warlords Battlecry;8.2;Jul 9, 2000
|
||||
82;Sam & Max Episode 201: Ice Station Santa;8.6;Nov 8, 2007
|
||||
82;Technobabylon;7.8;May 21, 2015
|
||||
82;World of Warcraft: Mists of Pandaria;4.8;Sep 25, 2012
|
||||
82;FIFA 15;4.2;Sep 23, 2014
|
||||
82;Recettear: An Item Shop's Tale;8.6;Sep 10, 2010
|
||||
82;ETHER One;6.9;Mar 25, 2014
|
||||
82;The Vanishing of Ethan Carter;8.1;Sep 25, 2014
|
||||
82;Flight Simulator X: Acceleration;7.3;Oct 23, 2007
|
||||
82;Blood;9.0;May 31, 1997
|
||||
82;Command & Conquer: Red Alert 3;6.8;Oct 28, 2008
|
||||
82;The Walking Dead: Episode 1 - A New Day;8.4;Apr 24, 2012
|
||||
82;Links 2003;6.8;Sep 16, 2002
|
||||
82;Earth & Beyond;7.1;Sep 2, 2002
|
||||
82;Syberia;8.5;Sep 1, 2002
|
||||
82;Virtual Pool 3;7.3;Nov 14, 2000
|
||||
82;The Sims: Livin' Large;6.6;Aug 27, 2000
|
||||
82;DCS: Black Shark;8.5;Apr 13, 2009
|
||||
82;King's Bounty: Armored Princess;8.7;Sep 10, 2010
|
||||
82;Age of Wonders III - Golden Realms;8.5;Sep 18, 2014
|
||||
82;Strong Bad's Cool Game for Attractive People Episode 5: 8-Bit Is Enough;7.5;Dec 15, 2008
|
||||
82;Prince of Persia;7.2;Dec 2, 2008
|
||||
82;Joint Operations: Typhoon Rising;8.7;Jun 15, 2004
|
||||
82;Xpand Rally;7.4;Apr 20, 2006
|
||||
82;Dark Souls II: Crown of the Sunken King;7.3;Jul 22, 2014
|
||||
82;Resident Evil HD Remaster;8.2;Jan 20, 2015
|
||||
82;Celtic Kings: Rage of War;8.5;Aug 21, 2002
|
||||
82;B-17 Flying Fortress: The Mighty 8th;7.3;Dec 13, 2000
|
||||
82;EverQuest: The Scars of Velious;7.8;Dec 4, 2000
|
||||
82;Metro: Last Light;8.6;May 14, 2013
|
||||
82;Rising Storm;8.5;May 30, 2013
|
||||
82;Lethal League;7.4;Aug 27, 2014
|
||||
82;Botanicula;8.3;Apr 19, 2012
|
||||
82;Pro Evolution Soccer 2015;5.8;Nov 13, 2014
|
||||
82;Bookworm Adventures Deluxe;7.9;Dec 20, 2006
|
||||
82;The Lord of the Rings: The Battle for Middle-Earth;8.6;Dec 6, 2004
|
||||
82;Hitman: Blood Money;8.8;May 30, 2006
|
||||
82;Need for Speed: Most Wanted;8.5;Nov 15, 2005
|
||||
82;OlliOlli2: Welcome to Olliwood;5.2;Aug 11, 2015
|
||||
82;WildStar;7.4;Jun 3, 2014
|
||||
82;Broken Age: Act 1;7.7;Jan 28, 2014
|
||||
82;Divinity II: The Dragon Knight Saga;8.2;Nov 5, 2010
|
||||
82;Out of the Park Baseball 9;7.4;Jun 1, 2008
|
||||
82;The Simpsons: Hit & Run;8.0;Nov 13, 2003
|
||||
82;America's Army;6.1;Aug 28, 2002
|
||||
82;Star Trek Bridge Commander;8.1;Feb 27, 2002
|
||||
82;The Last Express;8.9;Mar 31, 1997
|
||||
81;Quake 4;7.5;Oct 11, 2005
|
||||
81;Nidhogg;7.0;Jan 13, 2014
|
||||
81;Battlefield 4;6.0;Oct 29, 2013
|
||||
81;To the Moon;8.9;Sep 7, 2012
|
||||
81;The Sims 3: World Adventures;8.0;Nov 16, 2009
|
||||
81;Painkiller;8.0;Apr 12, 2004
|
||||
81;Airborne Assault: Highway to the Reich;6.1;Dec 10, 2003
|
||||
81;Nancy Drew: Danger on Deception Island;7.7;Oct 1, 2003
|
||||
81;Shadowrun: Hong Kong;7.7;Aug 20, 2015
|
||||
81;Supreme Commander: Forged Alliance;8.9;Nov 6, 2007
|
||||
81;Sunless Sea;7.4;Jul 1, 2014
|
||||
81;The Walking Dead: Season Two Episode 3 - In Harm's Way;8.3;May 13, 2014
|
||||
81;Marvel Heroes 2015;7.9;Jun 4, 2014
|
||||
81;Football Manager 2016;6.4;Nov 13, 2015
|
||||
81;VVVVVV;8.1;Jan 11, 2010
|
||||
81;Darksiders II;7.9;Aug 14, 2012
|
||||
81;Wolfenstein: The New Order;8.2;May 20, 2014
|
||||
81;Lone Survivor;7.2;Apr 23, 2012
|
||||
81;Alien: Isolation;8.4;Oct 6, 2014
|
||||
81;The Witcher;8.8;Oct 30, 2007
|
||||
81;Kentucky Route Zero - Act I;7.5;Jan 7, 2013
|
||||
81;Jade Empire: Special Edition;8.3;Feb 26, 2007
|
||||
81;SWAT 3: Elite Edition;8.4;Oct 6, 2000
|
||||
81;Asheron's Call;8.8;Oct 31, 1999
|
||||
81;Unravel;8.1;Feb 9, 2016
|
||||
81;Midnight Club II;8.0;Jun 30, 2003
|
||||
81;Chessmaster 10th Edition;7.4;Aug 12, 2004
|
||||
81;Age of Empires III;7.7;Oct 18, 2005
|
||||
81;Tales of Monkey Island Chapter 5: Rise of the Pirate God;8.4;Dec 8, 2009
|
||||
81;Castlevania: Lords of Shadow Ultimate Edition;7.3;Aug 27, 2013
|
||||
81;Strong Bad's Cool Game for Attractive People Episode 2: Strong Badia the Free;8.2;Sep 15, 2008
|
||||
81;The Cat Lady;8.7;Dec 4, 2013
|
||||
81;Vessel;7.9;Mar 1, 2012
|
||||
81;Metro 2033;8.1;Mar 16, 2010
|
||||
81;OutRun 2006: Coast 2 Coast;7.8;Jun 27, 2006
|
||||
81;Blur;7.3;May 25, 2010
|
||||
81;Empires: Dawn of the Modern World;8.2;Oct 21, 2003
|
||||
81;Chessmaster 9000;7.7;Aug 31, 2002
|
||||
81;Gothic;8.6;Nov 23, 2001
|
||||
81;Arcanum: Of Steamworks and Magick Obscura;8.9;Aug 22, 2001
|
||||
81;NASCAR Heat;8.6;Sep 27, 2000
|
||||
81;Company of Heroes 2: Ardennes Assault;6.1;Nov 17, 2014
|
||||
81;PlanetSide;7.3;May 20, 2003
|
||||
81;Tales From The Borderlands: Episode 3 - Catch A Ride;8.4;Jun 23, 2015
|
||||
81;The Walking Dead: Season Two Episode 2 - A House Divided;8.6;Mar 4, 2014
|
||||
81;Kingdoms of Amalur: Reckoning;6.6;Feb 7, 2012
|
||||
81;Sam & Max: The Devil's Playhouse - Episode 1: The Penal Zone;8.5;Apr 15, 2010
|
||||
81;Borderlands;7.8;Oct 26, 2009
|
||||
81;DG2: Defense Grid 2;6.7;Sep 23, 2014
|
||||
81;Napoleon: Total War;7.9;Feb 23, 2010
|
||||
81;Overlord;8.1;Jun 26, 2007
|
||||
81;Firewatch;7.2;Feb 9, 2016
|
||||
81;Victoria II: Heart of Darkness;8.7;Apr 16, 2013
|
||||
81;Waveform;7.6;Jan 25, 2013
|
||||
81;The Elder Scrolls IV: Knights of the Nine;7.5;Nov 21, 2006
|
||||
81;Red Orchestra: Ostfront 41-45;8.6;Mar 14, 2006
|
||||
81;Stronghold;8.9;Oct 21, 2001
|
||||
81;Strong Bad's Cool Game for Attractive People Episode 4: Dangeresque 3: The Criminal Projective;8.5;Nov 17, 2008
|
||||
81;Rochard;8.0;Nov 15, 2011
|
||||
81;Fallout 3: Broken Steel;7.3;May 5, 2009
|
||||
81;Tiger Woods PGA Tour 06;8.1;Sep 20, 2005
|
||||
81;RollerCoaster Tycoon 3;4.9;Oct 26, 2004
|
||||
81;Dragon's Dogma: Dark Arisen;8.3;Jan 15, 2016
|
||||
81;Guild Wars 2: Heart of Thorns;7.3;Oct 23, 2015
|
||||
81;AaaaaAAaaaAAAaaAAAAaAAAAA!!! - A Reckless Disregard for Gravity;7.2;Sep 3, 2009
|
||||
81;The Sims 2 University;7.8;Feb 28, 2005
|
||||
81;Far Cry 3: Blood Dragon;8.1;May 1, 2013
|
||||
81;Sid Meier's Civilization: Beyond Earth;5.5;Oct 24, 2014
|
||||
81;Disney's Toontown Online;8.7;Oct 6, 2005
|
||||
81;Combat Mission 3: Afrika Korps;8.4;Dec 3, 2003
|
||||
81;EverQuest: The Planes of Power;8.2;Oct 28, 2002
|
||||
81;Rails Across America;8.0;Sep 18, 2001
|
||||
81;Wasteland 2;7.3;Sep 19, 2014
|
||||
81;Jamestown: Legend of the Lost Colony;7.5;Jun 8, 2011
|
||||
81;Call of Duty: Black Ops;5.1;Nov 9, 2010
|
||||
81;Kohan II: Kings of War;7.9;Sep 20, 2004
|
||||
81;The Age of Decadence;7.9;Oct 15, 2015
|
||||
81;Samorost 3;8.3;Mar 24, 2016
|
||||
81;Order of Battle: Pacific;6.4;Apr 30, 2015
|
||||
81;Empire Earth;8.3;Nov 12, 2001
|
||||
81;Star Trek: Deep Space Nine: The Fallen;7.9;Nov 15, 2000
|
||||
81;Sam & Max Episode 101: Culture Shock;8.7;Oct 18, 2006
|
||||
81;Mirror's Edge (2008);8.1;Jan 12, 2009
|
||||
81;TrackMania 2 Canyon;7.7;Sep 14, 2011
|
||||
81;Sleeping Dogs;8.2;Aug 14, 2012
|
||||
81;Star Wars Jedi Knight: Jedi Academy;8.6;Sep 17, 2003
|
||||
81;Mortal Kombat Komplete Edition;8.7;Aug 6, 2013
|
||||
81;Shadowrun: Dragonfall;8.3;Feb 27, 2014
|
||||
81;Eets;6.4;Mar 29, 2006
|
||||
81;World of Warships;6.6;Sep 17, 2015
|
||||
81;TOCA Race Driver 2: The Ultimate Racing Simulator;8.0;Apr 15, 2004
|
||||
81;Wargame: European Escalation;8.2;Feb 22, 2012
|
||||
81;Dungeon Defenders;7.3;Oct 18, 2011
|
||||
81;Sam & Max: The Devil's Playhouse - Episode 5: The City That Dares Not Sleep;7.9;Aug 30, 2010
|
||||
81;Age of Empires III: The Asian Dynasties;8.5;Oct 23, 2007
|
||||
81;Defense Grid: The Awakening;8.8;Jul 29, 2009
|
||||
81;Codename: Panzers, Phase One;8.8;Sep 30, 2004
|
||||
81;FIFA 16;4.4;Sep 22, 2015
|
||||
81;Europa Universalis IV: Conquest of Paradise;7.7;Jan 14, 2014
|
||||
81;Ghost Master;8.0;Aug 26, 2003
|
||||
81;Divine Divinity;8.5;Sep 22, 2002
|
||||
80;The Book of Unwritten Tales 2;7.7;Feb 20, 2015
|
||||
80;Galactic Civilizations III;6.6;May 14, 2015
|
||||
80;Lovers in a Dangerous Spacetime;7.2;Sep 9, 2015
|
||||
80;Age of Conan: Hyborian Adventures;7.3;May 20, 2008
|
||||
80;Company of Heroes 2: The Western Front Armies;6.8;Jun 23, 2014
|
||||
80;Sid Meier's Civilization V: Gods & Kings;7.7;Jun 19, 2012
|
||||
80;Age of Empires III: The WarChiefs;8.1;Oct 17, 2006
|
||||
80;Metal Gear Solid V: Ground Zeroes;7.7;Dec 18, 2014
|
||||
80;Trials Fusion;6.8;Apr 16, 2014
|
||||
80;Syberia II;8.3;Mar 30, 2004
|
||||
80;Tom Clancy's Ghost Recon;8.4;Nov 13, 2001
|
||||
80;Conquest: Frontier Wars;8.3;Aug 14, 2001
|
||||
80;Gabriel Knight 3: Blood of the Sacred, Blood of the Damned;8.8;Oct 5, 1999
|
||||
80;Westerado: Double Barreled;7.4;Apr 16, 2015
|
||||
80;Anomaly: Warzone Earth;7.3;Apr 8, 2011
|
||||
80;Volume;7.2;Aug 18, 2015
|
||||
80;GRID 2;5.7;May 27, 2013
|
||||
80;The Banner Saga;7.9;Jan 14, 2014
|
||||
80;Sam & Max Episode 202: Moai Better Blues;7.7;Jan 10, 2008
|
||||
80;Age of Wonders III - Eternal Lords;8.4;Apr 14, 2015
|
||||
80;Pro Evolution Soccer 2013;6.8;Sep 25, 2012
|
||||
80;Osmos;7.5;Aug 18, 2009
|
||||
80;Dungeon Siege II;7.9;Aug 16, 2005
|
||||
80;Dead Island;6.8;Sep 6, 2011
|
||||
80;Sam & Max Episode 104: Abe Lincoln Must Die!;7.8;Feb 22, 2007
|
||||
80;Deus Ex: Invisible War;6.3;Dec 2, 2003
|
||||
80;The Sims: Makin' Magic;8.6;Oct 28, 2003
|
||||
80;Tom Clancy's Splinter Cell: Double Agent;5.7;Nov 7, 2006
|
||||
80;Medal of Honor: Pacific Assault;7.4;Nov 4, 2004
|
||||
80;Assassin's Creed: Revelations;7.4;Nov 29, 2011
|
||||
80;Grandia II Anniversary Edition;7.6;Aug 24, 2015
|
||||
80;Assassin's Creed III;6.2;Nov 20, 2012
|
||||
80;Madden NFL 07;7.3;Aug 22, 2006
|
||||
80;Outlast;8.4;Sep 4, 2013
|
||||
80;The Chronicles of Riddick: Assault on Dark Athena;8.0;Apr 7, 2009
|
||||
80;Hearts of Iron II: Doomsday;8.8;Apr 7, 2006
|
||||
80;Dishonored: The Brigmore Witches;8.5;Aug 13, 2013
|
||||
80;Codename: Panzers, Phase Two;8.0;Jul 25, 2005
|
||||
80;Full Spectrum Warrior;7.0;Sep 21, 2004
|
||||
80;AI War: Fleet Command;8.4;May 14, 2009
|
||||
80;Freedom Fighters;8.3;Oct 1, 2003
|
||||
80;NBA Live 2003;8.3;Nov 14, 2002
|
||||
80;The Elder Scrolls III: Tribunal;8.2;Nov 6, 2002
|
||||
80;Elite: Dangerous;6.4;Dec 16, 2014
|
||||
80;Pure;6.9;Sep 16, 2008
|
||||
80;Goodbye Deponia;8.1;Oct 17, 2013
|
||||
80;SWAT 4: The Stetchkov Syndicate;8.3;Feb 28, 2006
|
||||
80;Dropsy;7.3;Sep 10, 2015
|
||||
80;Company of Heroes 2: The British Forces;5.9;Sep 3, 2015
|
||||
80;Ground Control II: Operation Exodus;8.8;Jun 23, 2004
|
||||
80;NBA Live 2004;9.0;Nov 11, 2003
|
||||
80;Brutal Legend;7.8;Feb 26, 2013
|
||||
80;Tomb Raider: Underworld;7.6;Nov 18, 2008
|
||||
80;Oxenfree;7.7;Jan 15, 2016
|
||||
80;Titan Quest: Immortal Throne;8.7;Mar 5, 2007
|
||||
80;La-Mulana (Remake);7.1;Jul 13, 2012
|
||||
80;X-Men Legends II: Rise of Apocalypse;8.4;Sep 20, 2005
|
||||
80;SpellForce 2: Shadow Wars;7.6;May 5, 2006
|
||||
80;Fritz 8 Deluxe;7.8;Dec 1, 2004
|
||||
80;Trine;8.2;Sep 11, 2009
|
||||
80;Dishonored: The Knife of Dunwall;8.1;Apr 16, 2013
|
||||
80;Company of Heroes 2;2.0;Jun 25, 2013
|
||||
80;Natural Selection 2;8.4;Oct 30, 2012
|
||||
80;Read Only Memories;7.2;Oct 5, 2015
|
||||
80;The Sims 3: Into the Future;5.4;Oct 22, 2013
|
||||
80;Borderlands 2: Captain Scarlett and Her Pirate's Booty;7.4;Oct 16, 2012
|
||||
80;FATE;8.3;Sep 19, 2006
|
||||
80;2002 FIFA World Cup;7.9;Apr 30, 2002
|
||||
80;Asheron's Call Dark Majesty;8.1;Nov 4, 2001
|
||||
80;The Bug Butcher;8.2;Jan 19, 2016
|
||||
80;Dragonshard;7.4;Oct 2, 2005
|
||||
80;Icewind Dale: Enhanced Edition;7.6;Oct 30, 2014
|
||||
80;The Magic Circle;7.3;Jul 9, 2015
|
||||
80;Far Cry 4;6.6;Nov 18, 2014
|
||||
80;Super Time Force Ultra;6.6;Aug 25, 2014
|
||||
80;Day of Defeat: Source;9.1;Feb 7, 2006
|
||||
80;Battlefield 2142;6.8;Oct 17, 2006
|
||||
80;World of Tanks;3.8;Sep 6, 2011
|
||||
80;Vampire: The Masquerade - Bloodlines;9.0;Nov 16, 2004
|
||||
80;Dark Souls II: Scholar of the First Sin;7.4;Apr 1, 2015
|
||||
80;Warhammer 40,000: Dawn of War II - Retribution;7.8;Mar 1, 2011
|
||||
80;Panzer Corps;7.5;Jul 11, 2011
|
||||
80;Men of War;8.1;Mar 16, 2009
|
||||
80;Fallen Enchantress: Legendary Heroes;7.7;May 22, 2013
|
||||
80;The Walking Dead: Episode 4 - Around Every Corner;8.5;Oct 10, 2012
|
||||
80;Tales of Monkey Island Chapter 4: The Trial and Execution of Guybrush Threepwood;8.4;Oct 30, 2009
|
||||
80;Penny Arcade Adventures: Episode Two;7.7;Nov 7, 2008
|
||||
80;Time Commando;8.9;Jul 31, 1996
|
||||
80;Sins of a Solar Empire: Entrenchment;8.1;Feb 25, 2009
|
||||
80;F1 2012;6.9;Sep 18, 2012
|
||||
80;Luftrausers;6.8;Mar 18, 2014
|
||||
80;Naruto Shippuden: Ultimate Ninja Storm 3 Full Burst;7.9;Oct 24, 2013
|
||||
80;Stealth Bastard Deluxe;8.3;Nov 28, 2012
|
||||
80;Tom Clancy's Ghost Recon Advanced Warfighter;7.7;May 3, 2006
|
||||
80;LEGO Batman: The Videogame;7.9;Sep 23, 2008
|
||||
80;Stacking;7.9;Mar 6, 2012
|
||||
80;Age of Wonders III;7.8;Mar 31, 2014
|
||||
80;Life is Strange: Episode 3 - Chaos Theory;9.0;May 19, 2015
|
||||
80;The Legend of Heroes: Trails in the Sky SC;8.4;Oct 29, 2015
|
||||
80;Proteus;5.6;Jan 30, 2013
|
||||
80;Robin Hood: The Legend of Sherwood;8.3;Nov 14, 2002
|
||||
80;Soldier of Fortune II: Double Helix;7.3;May 20, 2002
|
||||
80;RollerCoaster Tycoon: Loopy Landscapes;9.0;Sep 30, 2000
|
||||
80;Toki Tori;7.9;Jan 28, 2010
|
||||
80;RoboBlitz;8.3;Nov 7, 2006
|
||||
80;Wargame: AirLand Battle;8.1;May 29, 2013
|
||||
80;Football Manager 2015;6.0;Nov 7, 2014
|
||||
80;The Suffering;8.2;Jun 8, 2004
|
||||
80;Gish;7.2;Sep 17, 2004
|
||||
80;Axiom Verge;8.2;May 14, 2015
|
||||
80;Driver: San Francisco;7.0;Sep 27, 2011
|
||||
80;The Corporate Machine;7.5;Jul 14, 2001
|
||||
80;Dungeons & Dragons: Chronicles of Mystara;6.7;Jun 18, 2013
|
||||
80;Disciples II: Rise of the Elves;8.1;Nov 25, 2003
|
||||
80;MechCommander 2;8.3;Jul 18, 2001
|
||||
80;Waterloo: Napoleon's Last Battle;7.5;Mar 25, 2001
|
||||
80;Chessmaster 8000;6.4;Nov 14, 2000
|
||||
80;Circle of Blood;8.6;Sep 30, 1996
|
||||
80;BioShock Infinite: Burial at Sea - Episode Two;8.5;Mar 25, 2014
|
||||
80;S.T.A.L.K.E.R.: Call of Pripyat;8.7;Feb 2, 2010
|
||||
80;The Walking Dead: Season Two - A Telltale Games Series;8.3;Dec 17, 2013
|
||||
80;FLY'N;8.2;Nov 9, 2012
|
||||
80;Total War: Attila;7.3;Feb 17, 2015
|
||||
80;The Wolf Among Us;8.8;Oct 11, 2013
|
||||
80;Nancy Drew: Secret of the Old Clock;8.1;Jul 26, 2005
|
||||
80;ArcheAge;3.6;Sep 16, 2014
|
||||
80;CAPSIZED;7.1;Apr 29, 2011
|
||||
80;Microsoft Flight Simulator X;7.6;Oct 17, 2006
|
||||
80;Myst V: End of Ages;7.8;Sep 19, 2005
|
||||
80;Railroad Tycoon 3;7.7;Oct 23, 2003
|
||||
80;Hostile Waters: Antaeus Rising;8.1;Jun 13, 2001
|
||||
79;Dustforce;7.9;Jan 17, 2012
|
||||
79;Empire Earth II;7.0;Apr 26, 2005
|
||||
79;Fallout 3: Point Lookout;7.8;Jun 23, 2009
|
||||
79;Test Drive Unlimited;8.1;Mar 20, 2007
|
||||
79;Dying Light: The Following;8.3;Feb 9, 2016
|
||||
79;The Path;7.0;Mar 18, 2009
|
||||
79;Dungeon of the Endless;8.0;Oct 27, 2014
|
||||
79;Revenge of the Titans;7.6;May 24, 2010
|
||||
79;Bookworm Adventures: Volume 2;7.6;Jul 30, 2009
|
||||
79;F1 2001;7.5;Oct 14, 2001
|
||||
79;Brothers in Arms: Hell's Highway;7.9;Oct 7, 2008
|
||||
79;Star Wars: Empire at War;8.4;Feb 15, 2006
|
||||
79;Dariusburst: Chronicle Saviours;8.3;Dec 3, 2015
|
||||
79;Europa Universalis: Rome - Vae Victis;8.6;Nov 19, 2008
|
||||
79;Silent Hunter: Wolves of the Pacific;6.5;Mar 20, 2007
|
||||
79;Pillars of Eternity: The White March - Part 2;6.7;Feb 16, 2016
|
||||
79;1701 A.D.;8.3;Nov 6, 2006
|
||||
79;Stasis;7.6;Aug 31, 2015
|
||||
79;Pro Evolution Soccer 2009;7.4;Nov 12, 2008
|
||||
79;Return to Mysterious Island;8.5;Nov 2, 2004
|
||||
79;Jotun;7.0;Sep 29, 2015
|
||||
79;Else Heart.Break();7.5;Sep 24, 2015
|
||||
79;Kohan: Ahriman's Gift;8.7;Nov 5, 2001
|
||||
79;Emperor: Battle for Dune;8.3;Jun 12, 2001
|
||||
79;Trackmania Turbo;6.9;Mar 24, 2016
|
||||
79;Cart Life;5.9;Jul 29, 2010
|
||||
79;Sword of the Stars: Born of Blood;8.1;Jun 5, 2007
|
||||
79;Worms Reloaded;6.7;Aug 26, 2010
|
||||
79;Warhammer: End Times - Vermintide;7.9;Oct 23, 2015
|
||||
79;Euro Truck Simulator 2;8.7;Jan 16, 2013
|
||||
79;Tropico 3;8.2;Oct 20, 2009
|
||||
79;Cities: Skylines - After Dark;7.9;Sep 24, 2015
|
||||
79;Runaway: A Twist of Fate;8.5;Apr 21, 2011
|
||||
79;Tales of Monkey Island Chapter 1: Launch of the Screaming Narwhal;8.2;Jul 7, 2009
|
||||
79;Bloodline Champions;8.0;Jan 13, 2011
|
||||
79;The Sims: Superstar;8.2;May 12, 2003
|
||||
79;NBA Live 2005;8.5;Oct 26, 2004
|
||||
79;Valiant Hearts: The Great War;8.6;Jun 25, 2014
|
||||
79;Payday 2;3.4;Aug 13, 2013
|
||||
79;Dungeons of Dredmor;7.8;Jul 13, 2011
|
||||
79;Geometry Wars 3: Dimensions;6.2;Nov 25, 2014
|
||||
79;Assassin's Creed: Director's Cut Edition;7.5;Apr 8, 2008
|
||||
79;Puzzle Dimension;7.6;Jun 21, 2010
|
||||
79;Split/Second;8.2;May 18, 2010
|
||||
79;Sang-Froid: Tales of Werewolves;7.9;Apr 5, 2013
|
||||
79;The Incredible Adventures of Van Helsing: Final Cut;7.2;Oct 7, 2015
|
||||
79;Hitman: Absolution;7.0;Nov 19, 2012
|
||||
79;Call of Juarez: Gunslinger;8.2;May 22, 2013
|
||||
79;Rome: Total War Alexander;7.6;Jun 19, 2006
|
||||
79;Strong Bad's Cool Game for Attractive People Episode 3: Baddest of the Bands;8.1;Oct 27, 2008
|
||||
79;Sam & Max Episode 102: Situation: Comedy;7.9;Dec 20, 2006
|
||||
79;Tropico 3: Absolute Power;7.7;May 17, 2010
|
||||
79;Sam & Max Episode 106: Bright Side of the Moon;7.3;Apr 26, 2007
|
||||
79;Day of Defeat;9.3;May 6, 2003
|
||||
79;Space Empires: IV;8.3;Nov 6, 2000
|
||||
79;Resident Evil 4: Ultimate HD Edition;7.7;Feb 27, 2014
|
||||
79;Sam & Max Episode 203: Night of the Raving Dead;8.2;Feb 12, 2008
|
||||
79;FlatOut: Ultimate Carnage;7.6;Sep 2, 2008
|
||||
79;Guitar Hero III: Legends of Rock;7.2;Nov 13, 2007
|
||||
79;Sid Meier's Civilization: Beyond Earth - Rising Tide;5.9;Oct 9, 2015
|
||||
79;Memoria;8.5;Aug 29, 2013
|
||||
79;The Last Door;7.8;May 20, 2014
|
||||
79;Shadowgrounds Survivor;7.8;Dec 6, 2007
|
||||
79;Gothic II;8.8;Oct 28, 2003
|
||||
79;Port Royale;8.2;Jun 4, 2003
|
||||
79;Deadly Dozen: Pacific Theater;7.9;Oct 31, 2002
|
||||
79;Shattered Galaxy;8.3;Aug 21, 2001
|
||||
79;Close Combat: Invasion: Normandy;8.2;Oct 10, 2000
|
||||
79;King's Bounty: The Legend;8.6;Sep 23, 2008
|
||||
79;Rage;5.1;Oct 4, 2011
|
||||
79;The Misadventures of P.B. Winterbottom;8.3;Apr 20, 2010
|
||||
79;Uru: Ages Beyond Myst;7.4;Nov 11, 2003
|
||||
79;Guild Wars: Eye of the North;8.6;Aug 28, 2007
|
||||
79;Tales From The Borderlands: Episode 4 - Escape Plan Bravo;8.4;Aug 18, 2015
|
||||
79;EverQuest: Lost Dungeons of Norrath;7.0;Sep 8, 2003
|
||||
79;Battlefield 1942: Secret Weapons of WWII;8.5;Sep 4, 2003
|
||||
79;The Sims: Unleashed;8.0;Sep 23, 2002
|
||||
79;Race the Sun;7.5;Aug 19, 2013
|
||||
79;The Sims 3: Pets;6.1;Oct 18, 2011
|
||||
79;Prototype;7.9;Jun 10, 2009
|
||||
79;Stick it to the Man!;7.2;Dec 13, 2013
|
||||
79;Street Fighter X Tekken;6.4;May 11, 2012
|
||||
79;Frozen Cortex;6.5;Feb 19, 2015
|
||||
79;Free Realms;6.4;Apr 29, 2009
|
||||
79;Homeworld: Deserts of Kharak;8.0;Jan 20, 2016
|
||||
79;Don't Starve;8.3;Apr 23, 2013
|
||||
79;Assault Android Cactus;7.0;Sep 23, 2015
|
||||
79;Trainz;7.2;Feb 10, 2002
|
||||
79;King Arthur: The Role-Playing Wargame;7.9;Nov 24, 2009
|
||||
79;Chivalry: Medieval Warfare;7.8;Oct 16, 2012
|
||||
79;Overlord II;8.1;Jun 23, 2009
|
||||
79;F.E.A.R. 2: Project Origin;7.8;Feb 10, 2009
|
||||
79;Tom Clancy's Rainbow Six Siege;6.9;Dec 1, 2015
|
||||
79;The Settlers 7: Paths to a Kingdom;5.2;Mar 23, 2010
|
||||
79;RollerCoaster Tycoon 3: Soaked!;2.9;Jun 23, 2005
|
||||
79;Dark Souls II: Crown of the Old Iron King;7.6;Aug 26, 2014
|
||||
79;TrackMania 2 Valley;8.3;Jul 4, 2013
|
||||
79;State of Decay;6.8;Nov 5, 2013
|
||||
79;LEGO Harry Potter: Years 1-4;7.8;Jun 29, 2010
|
||||
79;Rift: Storm Legion;7.8;Nov 13, 2012
|
||||
79;Crayon Physics Deluxe;7.6;Jan 7, 2009
|
||||
79;Nancy Drew: Legend of the Crystal Skull;8.5;Oct 8, 2007
|
||||
79;EverQuest II: Desert of Flames;7.8;Sep 12, 2005
|
||||
79;SimCity 4: Rush Hour;8.6;Sep 22, 2003
|
||||
79;Uncommon Valor: Campaign for the South Pacific;7.6;Dec 2, 2002
|
||||
79;Global Operations;8.3;Mar 25, 2002
|
||||
78;Apotheon;7.8;Feb 3, 2015
|
||||
78;Need for Speed: Most Wanted - A Criterion Game;4.4;Oct 30, 2012
|
||||
78;Star Wars: Battlefront II;8.8;Oct 31, 2005
|
||||
78;The Walking Dead: Season Two Episode 1 - All That Remains;8.5;Dec 17, 2013
|
||||
78;The Journey Down: Chapter Two;7.1;Aug 25, 2014
|
||||
78;Star Trek: Elite Force II;7.6;Jun 25, 2003
|
||||
78;Zuma's Revenge!;7.9;Sep 15, 2009
|
||||
78;Baldur's Gate: Enhanced Edition;7.0;Nov 28, 2012
|
||||
78;Doom 3: Resurrection of Evil;6.0;Apr 4, 2005
|
||||
78;LEGO Indiana Jones: The Original Adventures;7.7;Jun 3, 2008
|
||||
78;NASCAR Thunder 2004;7.5;Sep 16, 2003
|
||||
78;Transformers: Fall of Cybertron;7.8;Aug 21, 2012
|
||||
78;FIFA Soccer 06;6.7;Oct 4, 2005
|
||||
78;DeadCore;6.8;Oct 17, 2014
|
||||
78;The Walking Dead: Season Two Episode 5 - No Going Back;8.5;Aug 26, 2014
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,26 @@
|
|||
# synchronized verwenden
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Schlüsselwort `synchronized` verwenden.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.threads.synchronize](../sources/src/main/java/pr2/threads/synchronize/).
|
||||
|
||||
Schreiben Sie eine Klasse `Synchronizer`, die ein einziges `int`-Attribut und zusätzlich noch eine Methode `addAndPrint` enthält. Bei jedem Aufruf der Methode soll das Attribut um eins hochgezählt werden. Starten Sie zwei Threads, die diese Method konkurrierend aufrufen und sorgen Sie durch korrekte Synchronisation bei der `addAndPrint` dafür, dass keine Zahl zweimal ausgegeben wird und die Folge der Zahlen wirklich ohne Lücken ist.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,28 @@
|
|||
# Timer und TimerTask verwenden
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Klassen aus `java.util.concurrent` verwenden.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.threads.timer](../sources/src/main/java/pr2/threads/timer/).
|
||||
|
||||
Schreiben Sie eine Klasse `FakultaetTimer`, die in der Lage ist, die Fakultäten für alle Zahlen zwischen 0 und 20 zu berechnen. Der Berechnung dient eine Methode `calculate` die ein `long`-Array mit den Ergebnissen zurückgibt. Verwenden Sie zur Implementierung der Berechnung die Klasse `Timer` und `TimerTask`, wobei Sie für jede zu berechnende Zahl einen eigenen `TimerTask` verwenden sollen.
|
||||
|
||||
Schreiben Sie eine `main`-Methode in der Klasse `Main`, welche die Klasse `FakultaetTimer` verwendet, um die Fakultäten von 0 bis 20 zu berechnen. Danach soll sie das Ergebnis der Berechnung ausgeben.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,26 @@
|
|||
# Summe über reduce bestimmen
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Daten in Streams mit `reduce` aggregieren.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.streams.summieren](../sources/src/main/java/pr2/streams/summieren/).
|
||||
|
||||
Schreiben Sie in der Klasse `SumUp` eine Methode `int sumUp(Stream<Integer> numbers)`, die die Elemente eines Streams von `Integer`-Objekten addiert.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,28 @@
|
|||
# Wörter zählen
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Daten in Streams mit `reduce` aggregieren.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.streams.word_count](../sources/src/main/java/pr2/streams/word_count/).
|
||||
|
||||
Gegeben sei eine Liste von Strings (`List<String>`), die die Wörter eines Textes enthält. Erzeugen Sie eine neue Liste, die zu jedem Wort die Häufigkeit im Text in der Form Wort->Häufigkeit also z.B. `die->32` angibt.
|
||||
|
||||
Testen Sie Ihre Implementierung mit der Testklasse `WordCountTest`.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,41 @@
|
|||
# Wörterbuchprogramm
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Interface `Map` und seine Implementierungen einsetzen.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.collections.woerterbuch](../sources/src/main/java/pr2/collections/woerterbuch/).
|
||||
|
||||
Schreiben Sie ein einfaches Wörterbuchprogramm, dem man auf der Kommandozeile eine beliebige Anzahl von Wörtern übergeben kann und das dann die entsprechende Übersetzung ausgibt. Die Wörter des Wörterbuchs sollen fest im Programm einprogrammiert sein. Es reicht, wenn Sie einige wenige Wörter vorsehen.
|
||||
|
||||
Berücksichtigen Sie bitte den Fall, dass der Benutzer kein Wort auf der Kommandozeile angibt bzw. dass ein Wort nicht im Wörterbuch vorhanden ist.
|
||||
|
||||
```console
|
||||
> java Woerterbuch
|
||||
Bitte mindestens ein Wort angeben!
|
||||
```
|
||||
|
||||
```console
|
||||
>java Woerterbuch gehen schlafen tanzen hopsen
|
||||
gehen => go
|
||||
schlafen => sleep
|
||||
tanzen => dance
|
||||
hopsen => <unbekanntes Wort>
|
||||
```
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
Binary file not shown.
|
@ -0,0 +1,32 @@
|
|||
# `RandomAccessFile`
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
`RandomAccessFile` sowohl zum Lesen, als auch zum Schreiben von Daten einsetzen. Verstehen, dass man sich wahlfrei durch die Datei bewegen kann.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.io.random_access](../sources/src/main/java/pr2/io/random_access/).
|
||||
|
||||
Bei dieser Aufgabe werden Sie ein Verfahren anwenden, das bei sehr großen Datenmengen zum Einsatz kommt: das Sortieren der Daten direkt auf der Festplatte, ohne sie vollständig in den Hauptspeicher zu laden.
|
||||
|
||||
Implementieren Sie einen [Bubblesort](https://de.wikipedia.org/wiki/Bubblesort) mithilfe von `RandomAccessFile` direkt auf einer Datei. Bubblesort ist ein ausgesprochen ineffizienter Algorithmus (O(n*n)), er ist aber sehr einfach zu implementieren. Da die zu sortierende Datei klein ist, können wir hier mit den Nachteilen von Bubblesort leben.
|
||||
|
||||
Implementieren Sie die bereits vorhandene Methode `sortFile` der Klasse `FileSort`. Öffnen Sie zuerst die Datei mithilfe von `RandomAccessFile` im Modus `"rw"`. Wandern Sie nun - entsprechend dem Bubblesort-Algorithmus - über die Daten und sortieren Sie die Bytes der Datei. Halten Sie nie mehr als zwei `byte` und die Position als `long` im Speicher. Weitere Variablen können auch noch nötig sein, um den Algorithmus zu implementieren.
|
||||
|
||||
Testen Sie Ihre Implementierung mit den JUnit-Tests. Die Testdatei für den Unit-Test ist [data.dat](../sources/src/main/resources/pr2/io/random_access/data.dat)
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,26 @@
|
|||
# `Reader` verwenden
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Textdaten mithilfe von `Reader` verarbeiten.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.io.reader_writer](../sources/src/main/java/pr2/io/reader_writer/).
|
||||
|
||||
Lesen Sie die Datei [kafka.txt](../sources/src/main/resources/pr2/io/reader_writer/kafka.txt) mit einem passenden `Reader` ein und geben Sie sie auf der Konsole aus. Verwenden Sie nicht die `read()`-Methode, die einzelne Zeichen verarbeitet, sondern arbeiten Sie mit einem `char[]`-Buffer.
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,36 @@
|
|||
# Rot13-Verschlüsselung
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Funktionsweise und Einsatz von Filtern.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.io.rot13](../sources/src/main/java/pr2/io/rot13/).
|
||||
|
||||
Schreiben Sie eine Klasse `Rot13Reader`, die als Filter-Reader implementiert ist und jedes eingelesene Zeichen durch ein Zeichen ersetzt, dessen numerischer Wert um 13 höher ist (d.h. um 13 Schritte im Alphabet verschoben ist).
|
||||
|
||||
Schreiben Sie eine Klasse `Rot13`, die einen Dateinamen von der Kommandozeile nimmt und diese Text-Datei mithilfe von `Rot13Reader` liest und auf der Konsole ausgibt.
|
||||
|
||||
```console
|
||||
> cat /tmp/test
|
||||
DIES IST EIN TEXT, DER GLEICH ROT13 VERSCHLUESSELT WIRD.
|
||||
|
||||
> java Rot13 /tmp/test
|
||||
QVR`-V`a-RV[-aRea9-QR_-TYRVPU-_\a>@-cR_`PUYbR``RYa-dV_Q;
|
||||
```
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,39 @@
|
|||
# Datei zerhacken
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Daten byteweise aus einem Stream lesen.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.io.scrambler](../sources/src/main/java/pr2/io/scrambler/).
|
||||
|
||||
Schreiben Sie eine Klasse `Scrambler`, die einen Dateinamen von der Kommandozeile entgegennimmt, die Datei einliest und dann wieder auf der Konsole ausgibt. Allerdings soll bei der Ausgabe nur jedes zweite Byte berücksichtigt werden.
|
||||
|
||||
```console
|
||||
> java Scrambler ../src/Scrambler.java
|
||||
motjv.oFlIpttem
|
||||
motjv.oFlNtonEcpin
|
||||
motjv.oIEcpin
|
||||
pbi ls cabe
|
||||
pbi ttcvi anSrn[ rs hosIEcpin{ i ag.egh! ){ Sse.r.rnl(
|
||||
Bteen ae nee"; Sse.xt1; }
|
||||
ienuSra i;
|
||||
r
|
||||
i e ienuSra(rs0)
|
||||
```
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
|
@ -0,0 +1,34 @@
|
|||
# Serialisierung
|
||||
## Lernziel
|
||||
|
||||
|
||||
|
||||
Serialisierung einsetzen können, um Objekte zu persistieren und wieder zu laden.
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Gehen Sie in das Paket [pr2.io.serialisierung](../sources/src/main/java/pr2/io/serialisierung/).
|
||||
|
||||
In dieser Aufgabe finden Sie bereits eine fertig implementierte Klasse `Board` vor, die ein Schachbrett repräsentiert. Allerdings wird dieses nicht für Schach benutzt, sondern für ein Spiel, bei dem man nur schwarze und weiße Steine auf das Brett stellen kann (z.B. Dame). Die Farbe der Steine wird durch die Enumeration `Color` dargestellt.
|
||||
|
||||
Was bei dem Schachbrett allerdings noch fehlt, ist eine Möglichkeit den Spielstand zu speichern und später wieder einzulesen.
|
||||
|
||||
Schauen Sie sich die Klassen `Board` und `Color` genau an und versuchen Sie diese zu verstehen. Sie können auch testweise ein Brett anlegen und mit Daten befüllen. (Wie dies geht, sehen Sie im JUnit-Test). Die `toString()`-Methode liefert eine anschauliche Darstellung des Spielfeldes.
|
||||
|
||||
Implementieren Sie nun die Methoden `writeToFile` und `loadFromFile` unter Zuhilfenahme von Serialisierung. D.h. anders als in der Aufgabe zu `DataOutputStream`, sollen Sie hier kein eigenes Datenformat implementieren. Verwenden Sie stattdessen einen `ObjectOutputStream` bzw. `ObjectInputStream`.
|
||||
|
||||
Lassen Sie den JUnit-Test laufen, um zu sehen, ob die Daten korrekt verarbeitet werden. Die Test-Datei für den Unit-Test ist [testdata.dat](../sources/src/main/resources/pr2/io/serialisierung/testdata.dat)
|
||||
|
||||
|
||||
<!--
|
||||
## Abgabe (optional)
|
||||
|
||||
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
|
||||
|
||||
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
|
||||
|
||||
1. Öffnen Sie eine Kommandozeile (Terminal).
|
||||
2. Gehen Sie in Ihr Working Directory.
|
||||
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
|
||||
4. Bauen Sie das Projekt mit dem Kommando `mvn`.
|
||||
-->
|
Binary file not shown.
|
@ -0,0 +1,9 @@
|
|||
## Softwareausstattung
|
||||
|
||||
* **Ubuntu Linux** als Installation oder VM
|
||||
* **Java JDK 18**<br>`sudo apt install openjdk-18-jdk openjdk-18-source openjdk-18-doc`
|
||||
* **Git** und Git-Frontends<br>`sudo apt install git meld git-cola`
|
||||
* **Maven 3.6 oder neuer**<br>`sudo apt install maven`
|
||||
* **Eclipse**<br>Von der [Webseite](https://www.eclipse.org/downloads/) herunterladen und installieren. Bitte verwenden Sie die Version **Eclipse IDE for Java Developers**
|
||||
|
||||
Eine Anleitung zur Installation von Ubuntu Linux finden Sie [hier](https://github.com/informatik-mannheim/linux-hsma/blob/master/doc/readme.md). Diese Anleitung bezieht sich auf Ubuntu 21.04, funktioniert so aber auch mit einer neueren Version.
|
|
@ -0,0 +1,123 @@
|
|||
# Programmieren 2 (Wintersemester 2024/2025)
|
||||
|
||||
## 👋 Willkommen zum Kurs Programmieren 2
|
||||
|
||||
In Programmieren 2 lernen Sie die Programmierung in Java auf einem fortgeschrittenen Niveau. Sie werden alle wichtigen Konzepte von Java kennenlernen und diese in praktischen Übungen anwenden. Hierbei werden Sie in kleinen Teams arbeiten und komplexere, objektorientierte Programme in Java entwickeln. Die dazu nötigen objektorientierten Konzepte (Polymorphie, Vererbung, Interfaces, etc.) werden Sie ebenso im Kurs anwenden, wie die dazu grundlegenden Algorithmen und Datenstrukturen.
|
||||
|
||||
## 🎓 Freiwillige Übungen
|
||||
|
||||
Hier finden Sie die **freiwilligen Übungen** zur Vorlesung Programmieren 2 (PR2). Die Übungen sind unten aufgelistet. Die Spalte **Ausgabe** hat keine Bedeutung.
|
||||
|
||||
Hinweise zur nötigen Softwareausstattung finden Sie [hier](help/softwareausstattung.md).
|
||||
|
||||
| # | Kapitel | Thema |
|
||||
|-----|-----------------------|-----------------------------------------------------------------------------------|
|
||||
| 1. | Auffrischung | [String in Großbuchstaben umwandeln](_001/readme.md) |
|
||||
| 2. | Auffrischung | [Labeled Break](_002/readme.md) |
|
||||
| 3. | Auffrischung | [Passwortbewertung](_003/readme.md) |
|
||||
| 4. | Auffrischung | [printf mit Formatstring](_004/readme.md) |
|
||||
| 5. | Auffrischung | [Maximum in einem Array suchen](_005/readme.md) |
|
||||
| 6. | Auffrischung | [Taschenrechner](_006/readme.md) |
|
||||
| 7. | Einführung | [Java-Coding-Standard anwenden](_001/readme.md) |
|
||||
| 8. | Einführung | [JavaDoc schreiben](_002/readme.md) |
|
||||
| 9. | Einführung | [Klasse mit JUnit testen](_003/readme.md) |
|
||||
| 10. | Strukturierung | [Information-Hiding einer Klasse verbessern](_001/readme.md) |
|
||||
| 11. | Strukturierung | [Vorhandene Bibliotheken als JAR einbinden](_002/readme.md) |
|
||||
| 12. | Vererbung | [Final anwenden](_001/readme.md) |
|
||||
| 13. | Vererbung | [Figur und Rechteck](_002/readme.md) |
|
||||
| 14. | Vererbung | [Figur erweitern](_003/readme.md) |
|
||||
| 15. | Vererbung | [Figur noch einmal erweitern](_004/readme.md) |
|
||||
| 16. | Vererbung | [Konstruktoren schreiben](_005/readme.md) |
|
||||
| 17. | Vererbung | [Polymorphie einsetzen](_006/readme.md) |
|
||||
| 18. | Vererbung | [Singleton](_007/readme.md) |
|
||||
| 19. | Vererbung | [Statische Methoden und Attribute](_008/readme.md) |
|
||||
| 20. | Vererbung | [Methode überladen](_009/readme.md) |
|
||||
| 21. | Vererbung | [Methoden überschreiben](_010/readme.md) |
|
||||
| 22. | Vererbung | [Varag-Methode schreiben](_011/readme.md) |
|
||||
| 23. | Vererbung | [Vererbung von Figuren](_012/readme.md) |
|
||||
| 24. | Abstrakte Klassen | [Abstrakte Klassen](_001/readme.md) |
|
||||
| 25. | Abstrakte Klassen | [Abstrakte Klasse](_002/readme.md) |
|
||||
| 26. | Interfaces | [Comparable implementieren](_001/readme.md) |
|
||||
| 27. | Interfaces | [Interface Stack entwerfen](_002/readme.md) |
|
||||
| 28. | Interfaces | [Interface: Uebersetzer](_003/readme.md) |
|
||||
| 29. | Interfaces | [Interfaces anwenden und entwerfen](_004/readme.md) |
|
||||
| 30. | Object und Wrapper | [Deep-Copy mit `clone()`](_001/readme.md) |
|
||||
| 31. | Object und Wrapper | [Clone](_002/readme.md) |
|
||||
| 32. | Object und Wrapper | [`equals()` und `hashCode()` implementieren und nutzen](_003/readme.md) |
|
||||
| 33. | Object und Wrapper | [equals und hashCode](_004/readme.md) |
|
||||
| 34. | Object und Wrapper | [`toString()`-Methode implementieren](_005/readme.md) |
|
||||
| 35. | Object und Wrapper | [Optimierung bei Integer](_006/readme.md) |
|
||||
| 36. | Object und Wrapper | [Methoden der Wrapper-Klassen](_007/readme.md) |
|
||||
| 37. | Enumerationen | [Eigene Enumeration schreiben und verwenden](_001/readme.md) |
|
||||
| 38. | Enumerationen | [Enumeration schreiben](_002/readme.md) |
|
||||
| 39. | Enumerationen | [Singleton-Eigenschaft von Enumerationen](_003/readme.md) |
|
||||
| 40. | Enumerationen | [Stein, Papier, Schere, Echse, Spock](_004/readme.md) |
|
||||
| 41. | Ausnahmen | [Ausnahmen testen](_001/readme.md) |
|
||||
| 42. | Ausnahmen | [Eigene Ausnahmen schreiben und an entsprechender Stelle werfen](_002/readme.md) |
|
||||
| 43. | Ausnahmen | [Eigene Exception schreiben](_003/readme.md) |
|
||||
| 44. | Ausnahmen | [Handle-or-Declare-Regel anwenden](_004/readme.md) |
|
||||
| 45. | Ausnahmen | [Ausnahmen mit `try` und `catch` behandeln.](_005/readme.md) |
|
||||
| 46. | Input und Output | [`BufferedReader` zum zeilenweisen Lesen einsetzen](_001/readme.md) |
|
||||
| 47. | Input und Output | [DataOutputStream](_002/readme.md) |
|
||||
| 48. | Input und Output | [DataOutputStream durch Serialisierung ersetzen](_003/readme.md) |
|
||||
| 49. | Input und Output | [Daten mit `DataOutputStream` und `DataInputStream` verarbeiten](_004/readme.md) |
|
||||
| 50. | Input und Output | [Daten mit einem `InputStream` lesen](_005/readme.md) |
|
||||
| 51. | Input und Output | [Daten mit einem `OutputStream` schreiben](_006/readme.md) |
|
||||
| 52. | Input und Output | [Filesystem-Abstraktion mit `File`](_007/readme.md) |
|
||||
| 53. | Input und Output | [Fileattribute lesen](_008/readme.md) |
|
||||
| 54. | Input und Output | [`FilterReader`](_009/readme.md) |
|
||||
| 55. | Input und Output | [Konsolen Input/Output](_010/readme.md) |
|
||||
| 56. | Input und Output | [Zeilen einer Textdatei zählen](_011/readme.md) |
|
||||
| 57. | Input und Output | [`RandomAccessFile`](_012/readme.md) |
|
||||
| 58. | Input und Output | [`Reader` verwenden](_013/readme.md) |
|
||||
| 59. | Input und Output | [Rot13-Verschlüsselung](_014/readme.md) |
|
||||
| 60. | Input und Output | [Datei zerhacken](_015/readme.md) |
|
||||
| 61. | Input und Output | [Serialisierung](_016/readme.md) |
|
||||
| 62. | Generische Typen | [Einen generischen Typ schreiben](_001/readme.md) |
|
||||
| 63. | Generische Typen | [Generische Klasse Pair schreiben](_002/readme.md) |
|
||||
| 64. | Generische Typen | [Generische Klasse Pair erweitern: NumberPair](_003/readme.md) |
|
||||
| 65. | Generische Typen | [Generische Klasse Pair erweitern: SamePair](_004/readme.md) |
|
||||
| 66. | Generische Typen | [PairList](_005/readme.md) |
|
||||
| 67. | Generische Typen | [Wildcard benutzen](_006/readme.md) |
|
||||
| 68. | Generische Typen | [Generische Queue](_007/readme.md) |
|
||||
| 69. | Generische Typen | [`super` und `extends` einsetzen](_008/readme.md) |
|
||||
| 70. | Generische Typen | [Generische Typen zusammen mit Wildcards einsetzen](_009/readme.md) |
|
||||
| 71. | Geschachtelte Klassen | [Eigene compare-Methode schreiben](_001/readme.md) |
|
||||
| 72. | Geschachtelte Klassen | [Innere Klasse Beobachter](_002/readme.md) |
|
||||
| 73. | Geschachtelte Klassen | [Callback mit anonymer Klasse realisieren](_003/readme.md) |
|
||||
| 74. | Lambdas | [Comparator als Lambda](_001/readme.md) |
|
||||
| 75. | Lambdas | [Callback mit Lambda realisieren](_002/readme.md) |
|
||||
| 76. | Geschachtelte Klassen | [MatrixSuche](_001/readme.md) |
|
||||
| 77. | Lambdas | [StringTransmogrifier](_001/readme.md) |
|
||||
| 78. | Lambdas | [StringTransmogrifier erweitern](_002/readme.md) |
|
||||
| 79. | Collections | [Iterator schreiben](_001/readme.md) |
|
||||
| 80. | Collections | [Iterator programmieren](_002/readme.md) |
|
||||
| 81. | Collections | [`List<T>` und dessen Implementierungen](_003/readme.md) |
|
||||
| 82. | Collections | [`Map<T>` verwenden](_004/readme.md) |
|
||||
| 83. | Collections | [ReverserGeneric](_005/readme.md) |
|
||||
| 84. | Collections | [Strings umgekehrt sortieren: Reverser](_006/readme.md) |
|
||||
| 85. | Collections | [`Set<T>` und dessen Implementierungen](_007/readme.md) |
|
||||
| 86. | Collections | [CommandLineSorter](_008/readme.md) |
|
||||
| 87. | Collections | [CommandLineSorter -- Version 2](_009/readme.md) |
|
||||
| 88. | Collections | [`Comparator<T>` verwenden und Objekte sortieren](_010/readme.md) |
|
||||
| 89. | Collections | [Wörterbuchprogramm](_011/readme.md) |
|
||||
| 90. | Streams | [Kleinbuchstaben in einem String zählen](_001/readme.md) |
|
||||
| 91. | Streams | [Buchstaben in einer Liste von Strings zählen](_002/readme.md) |
|
||||
| 92. | Streams | [Kleinbuchstaben in einem String zählen](_003/readme.md) |
|
||||
| 93. | Streams | [Liste filtern](_004/readme.md) |
|
||||
| 94. | Streams | [Streams mit interner Iteration](_005/readme.md) |
|
||||
| 95. | Streams | [Map und Filter auf Streams](_006/readme.md) |
|
||||
| 96. | Streams | [Map und Reduce auf Streams](_007/readme.md) |
|
||||
| 97. | Streams | [Reduce](_008/readme.md) |
|
||||
| 98. | Streams | [Summe über reduce bestimmen](_009/readme.md) |
|
||||
| 99. | Streams | [Wörter zählen](_010/readme.md) |
|
||||
| 100. | Threads | [Fakultät parallel berechnen](_001/readme.md) |
|
||||
| 101. | Threads | [Thread per interrupt beenden](_002/readme.md) |
|
||||
| 102. | Threads | [wait und notify benutzen](_003/readme.md) |
|
||||
| 103. | Threads | [Parallele Ausgaben erzeugen](_004/readme.md) |
|
||||
| 104. | Threads | [Race-Condition finden und beheben](_005/readme.md) |
|
||||
| 105. | Threads | [Stack und Heap unterscheiden](_006/readme.md) |
|
||||
| 106. | Threads | [synchronized verwenden](_007/readme.md) |
|
||||
| 107. | Threads | [Timer und TimerTask verwenden](_008/readme.md) |
|
||||
| 108. | Reflection | [Klasse per Reflection analysieren](_001/readme.md) |
|
||||
| 109. | Reflection | [Objekte per Reflection erzeugen](_002/readme.md) |
|
|
@ -0,0 +1,203 @@
|
|||
<?xml version="1.0"?>
|
||||
<!DOCTYPE module PUBLIC
|
||||
"-//Puppy Crawl//DTD Check Configuration 1.2//EN"
|
||||
"http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
|
||||
|
||||
<!--
|
||||
|
||||
Checkstyle configuration that checks the sun coding conventions from:
|
||||
|
||||
- the Java Language Specification at
|
||||
http://java.sun.com/docs/books/jls/second_edition/html/index.html
|
||||
|
||||
- the Sun Code Conventions at http://java.sun.com/docs/codeconv/
|
||||
|
||||
- the Javadoc guidelines at
|
||||
http://java.sun.com/j2se/javadoc/writingdoccomments/index.html
|
||||
|
||||
- the JDK Api documentation http://java.sun.com/j2se/docs/api/index.html
|
||||
|
||||
- some best practices
|
||||
|
||||
Checkstyle is very configurable. Be sure to read the documentation at
|
||||
http://checkstyle.sf.net (or in your downloaded distribution).
|
||||
|
||||
Most Checks are configurable, be sure to consult the documentation.
|
||||
|
||||
To completely disable a check, just comment it out or delete it from the file.
|
||||
|
||||
Finally, it is worth reading the documentation.
|
||||
|
||||
-->
|
||||
|
||||
<module name="Checker">
|
||||
<!--
|
||||
If you set the basedir property below, then all reported file
|
||||
names will be relative to the specified directory. See
|
||||
http://checkstyle.sourceforge.net/5.x/config.html#Checker
|
||||
|
||||
<property name="basedir" value="${basedir}"/>
|
||||
-->
|
||||
|
||||
<!-- Checks whether files end with a new line. -->
|
||||
<!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
|
||||
<!-- <module name="NewlineAtEndOfFile"/> -->
|
||||
|
||||
<!-- Checks that property files contain the same keys. -->
|
||||
<!-- See http://checkstyle.sf.net/config_misc.html#Translation -->
|
||||
<module name="Translation"/>
|
||||
|
||||
<!-- Checks for Size Violations. -->
|
||||
<!-- See http://checkstyle.sf.net/config_sizes.html -->
|
||||
<module name="FileLength"/>
|
||||
|
||||
<!-- Checks for whitespace -->
|
||||
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
||||
<module name="FileTabCharacter"/>
|
||||
|
||||
<!-- Miscellaneous other checks. -->
|
||||
<!-- See http://checkstyle.sf.net/config_misc.html -->
|
||||
<!--
|
||||
<module name="RegexpSingleline">
|
||||
<property name="format" value="\s+$"/>
|
||||
<property name="minimum" value="0"/>
|
||||
<property name="maximum" value="0"/>
|
||||
<property name="message" value="Line has trailing spaces."/>
|
||||
</module>
|
||||
-->
|
||||
|
||||
<module name="LineLength">
|
||||
<property name="ignorePattern" value="^.*//#.*|^.* \* @see .*|^import .*"/>
|
||||
</module>
|
||||
|
||||
<module name="TreeWalker">
|
||||
|
||||
<!-- Checks for Javadoc comments. -->
|
||||
<!-- See http://checkstyle.sf.net/config_javadoc.html -->
|
||||
<module name="JavadocMethod"/>
|
||||
<module name="JavadocType"/>
|
||||
<module name="JavadocVariable">
|
||||
<property name="scope" value="public"/>
|
||||
</module>
|
||||
<module name="JavadocStyle"/>
|
||||
|
||||
|
||||
<!-- Checks for Naming Conventions. -->
|
||||
<!-- See http://checkstyle.sf.net/config_naming.html -->
|
||||
<module name="ConstantName"/>
|
||||
<module name="LocalFinalVariableName"/>
|
||||
<module name="LocalVariableName"/>
|
||||
<module name="MemberName"/>
|
||||
<module name="MethodName"/>
|
||||
<module name="PackageName">
|
||||
<property name="format" value="^[a-z][a-z0-9_]+(\.[a-z][a-z0-9_]*)*$"/>
|
||||
</module>
|
||||
<module name="ParameterName"/>
|
||||
<module name="StaticVariableName"/>
|
||||
<module name="TypeName"/>
|
||||
|
||||
|
||||
<!-- Checks for Headers -->
|
||||
<!-- See http://checkstyle.sf.net/config_header.html -->
|
||||
<!-- <module name="Header"> -->
|
||||
<!-- The follow property value demonstrates the ability -->
|
||||
<!-- to have access to ANT properties. In this case it uses -->
|
||||
<!-- the ${basedir} property to allow Checkstyle to be run -->
|
||||
<!-- from any directory within a project. See property -->
|
||||
<!-- expansion, -->
|
||||
<!-- http://checkstyle.sf.net/config.html#properties -->
|
||||
<!-- <property -->
|
||||
<!-- name="headerFile" -->
|
||||
<!-- value="${basedir}/java.header"/> -->
|
||||
<!-- </module> -->
|
||||
|
||||
<!-- Following interprets the header file as regular expressions. -->
|
||||
<!-- <module name="RegexpHeader"/> -->
|
||||
|
||||
|
||||
<!-- Checks for imports -->
|
||||
<!-- See http://checkstyle.sf.net/config_import.html -->
|
||||
<module name="AvoidStarImport"/>
|
||||
<module name="IllegalImport"/> <!-- defaults to sun.* packages -->
|
||||
<module name="RedundantImport"/>
|
||||
<module name="UnusedImports"/>
|
||||
|
||||
|
||||
<!-- Checks for Size Violations. -->
|
||||
<!-- See http://checkstyle.sf.net/config_sizes.html -->
|
||||
<module name="MethodLength">
|
||||
<property name="countEmpty" value="false"/>
|
||||
</module>
|
||||
<module name="ParameterNumber"/>
|
||||
|
||||
|
||||
<!-- Checks for whitespace -->
|
||||
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
||||
<module name="EmptyForIteratorPad"/>
|
||||
<module name="GenericWhitespace"/>
|
||||
<module name="MethodParamPad"/>
|
||||
<module name="NoWhitespaceAfter">
|
||||
<property name="tokens" value="AT, INC, DEC, UNARY_MINUS, UNARY_PLUS, BNOT, LNOT, DOT, ARRAY_DECLARATOR, INDEX_OP"/>
|
||||
</module>
|
||||
<module name="NoWhitespaceBefore">
|
||||
<property name="tokens" value="COMMA, SEMI, POST_INC, POST_DEC, ELLIPSIS, LABELED_STAT"/>
|
||||
</module>
|
||||
<module name="OperatorWrap"/>
|
||||
<module name="ParenPad"/>
|
||||
<module name="TypecastParenPad"/>
|
||||
<module name="WhitespaceAfter"/>
|
||||
<module name="WhitespaceAround"/>
|
||||
|
||||
|
||||
<!-- Modifier Checks -->
|
||||
<!-- See http://checkstyle.sf.net/config_modifiers.html -->
|
||||
<module name="ModifierOrder"/>
|
||||
<!-- <module name="RedundantModifier"/> -->
|
||||
|
||||
|
||||
<!-- Checks for blocks. You know, those {}'s -->
|
||||
<!-- See http://checkstyle.sf.net/config_blocks.html -->
|
||||
<module name="AvoidNestedBlocks"/>
|
||||
<module name="EmptyBlock"/>
|
||||
<module name="LeftCurly"/>
|
||||
<module name="NeedBraces"/>
|
||||
<!-- <module name="RightCurly"/> -->
|
||||
|
||||
|
||||
<!-- Checks for common coding problems -->
|
||||
<!-- See http://checkstyle.sf.net/config_coding.html -->
|
||||
<!-- <module name="AvoidInlineConditionals"/> -->
|
||||
<module name="EmptyStatement"/>
|
||||
<module name="EqualsHashCode"/>
|
||||
<module name="HiddenField">
|
||||
<property name="ignoreConstructorParameter" value="true"/>
|
||||
<property name="ignoreSetter" value="true"/>
|
||||
</module>
|
||||
<module name="IllegalInstantiation"/>
|
||||
<module name="InnerAssignment"/>
|
||||
<module name="MissingSwitchDefault"/>
|
||||
<module name="SimplifyBooleanExpression"/>
|
||||
<module name="SimplifyBooleanReturn"/>
|
||||
|
||||
<!-- Checks for class design -->
|
||||
<!-- See http://checkstyle.sf.net/config_design.html -->
|
||||
<!-- <module name="DesignForExtension"/> -->
|
||||
<module name="FinalClass"/>
|
||||
<!-- <module name="HideUtilityClassConstructor"/> -->
|
||||
<module name="InterfaceIsType"/>
|
||||
<module name="VisibilityModifier">
|
||||
<property name="protectedAllowed" value="true"/>
|
||||
<property name="packageAllowed" value="true"/>
|
||||
</module>
|
||||
|
||||
|
||||
<!-- Miscellaneous other checks. -->
|
||||
<!-- See http://checkstyle.sf.net/config_misc.html -->
|
||||
<module name="ArrayTypeStyle"/>
|
||||
<!-- <module name="FinalParameters"/> -->
|
||||
<module name="TodoComment"/>
|
||||
<module name="UpperEll"/>
|
||||
|
||||
</module>
|
||||
|
||||
</module>
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,132 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>de.hs_mannheim.pr2</groupId>
|
||||
<artifactId>solutions</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>PR2 Excercises</name>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
<junit.jupiter.version>5.9.1</junit.jupiter.version>
|
||||
<junit.platform.version>1.9.1</junit.platform.version>
|
||||
</properties>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>jitpack.io</id>
|
||||
<url>https://jitpack.io</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
<build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
<directory>${basedir}/target</directory>
|
||||
<finalName>${project.artifactId}-${project.version}</finalName>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.10.1</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<version>3.0.0-M7</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-checkstyle-plugin</artifactId>
|
||||
<version>3.2.0</version>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.puppycrawl.tools</groupId>
|
||||
<artifactId>checkstyle</artifactId>
|
||||
<version>10.4</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<configuration>
|
||||
<configLocation>checkstyle.xml</configLocation>
|
||||
<consoleOutput>true</consoleOutput>
|
||||
<failsOnError>true</failsOnError>
|
||||
<linkXRef>false</linkXRef>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>validate</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>check</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
<version>3.19.0</version>
|
||||
<configuration>
|
||||
<rulesets>
|
||||
<ruleset>./pmd.xml</ruleset>
|
||||
</rulesets>
|
||||
<failOnViolation>true</failOnViolation>
|
||||
<printFailingErrors>true</printFailingErrors>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>check</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<dependencies>
|
||||
<!--
|
||||
<dependency>
|
||||
<groupId>de.smits_net.games</groupId>
|
||||
<artifactId>game-framework</artifactId>
|
||||
<version>1.0</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
-->
|
||||
<dependency>
|
||||
<groupId>com.github.thomsmits</groupId>
|
||||
<artifactId> game-framework</artifactId>
|
||||
<version>v1.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-engine</artifactId>
|
||||
<version>${junit.jupiter.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-api</artifactId>
|
||||
<version>${junit.jupiter.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-params</artifactId>
|
||||
<version>${junit.jupiter.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.platform</groupId>
|
||||
<artifactId>junit-platform-suite</artifactId>
|
||||
<version>${junit.platform.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.vintage</groupId>
|
||||
<artifactId>junit-vintage-engine</artifactId>
|
||||
<version>4.12.0-M4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jfree</groupId>
|
||||
<artifactId>jfreechart</artifactId>
|
||||
<version>1.5.3</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src/main/java"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
|
||||
<attributes>
|
||||
<attribute name="module" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="lib" path="lib/game_framework.jar"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/5"/>
|
||||
<classpathentry kind="output" path="target/classes"/>
|
||||
</classpath>
|
|
@ -0,0 +1,203 @@
|
|||
<?xml version="1.0"?>
|
||||
<!DOCTYPE module PUBLIC
|
||||
"-//Puppy Crawl//DTD Check Configuration 1.2//EN"
|
||||
"http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
|
||||
|
||||
<!--
|
||||
|
||||
Checkstyle configuration that checks the sun coding conventions from:
|
||||
|
||||
- the Java Language Specification at
|
||||
http://java.sun.com/docs/books/jls/second_edition/html/index.html
|
||||
|
||||
- the Sun Code Conventions at http://java.sun.com/docs/codeconv/
|
||||
|
||||
- the Javadoc guidelines at
|
||||
http://java.sun.com/j2se/javadoc/writingdoccomments/index.html
|
||||
|
||||
- the JDK Api documentation http://java.sun.com/j2se/docs/api/index.html
|
||||
|
||||
- some best practices
|
||||
|
||||
Checkstyle is very configurable. Be sure to read the documentation at
|
||||
http://checkstyle.sf.net (or in your downloaded distribution).
|
||||
|
||||
Most Checks are configurable, be sure to consult the documentation.
|
||||
|
||||
To completely disable a check, just comment it out or delete it from the file.
|
||||
|
||||
Finally, it is worth reading the documentation.
|
||||
|
||||
-->
|
||||
|
||||
<module name="Checker">
|
||||
<!--
|
||||
If you set the basedir property below, then all reported file
|
||||
names will be relative to the specified directory. See
|
||||
http://checkstyle.sourceforge.net/5.x/config.html#Checker
|
||||
|
||||
<property name="basedir" value="${basedir}"/>
|
||||
-->
|
||||
|
||||
<!-- Checks whether files end with a new line. -->
|
||||
<!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
|
||||
<!-- <module name="NewlineAtEndOfFile"/> -->
|
||||
|
||||
<!-- Checks that property files contain the same keys. -->
|
||||
<!-- See http://checkstyle.sf.net/config_misc.html#Translation -->
|
||||
<module name="Translation"/>
|
||||
|
||||
<!-- Checks for Size Violations. -->
|
||||
<!-- See http://checkstyle.sf.net/config_sizes.html -->
|
||||
<module name="FileLength"/>
|
||||
|
||||
<!-- Checks for whitespace -->
|
||||
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
||||
<module name="FileTabCharacter"/>
|
||||
|
||||
<!-- Miscellaneous other checks. -->
|
||||
<!-- See http://checkstyle.sf.net/config_misc.html -->
|
||||
<!--
|
||||
<module name="RegexpSingleline">
|
||||
<property name="format" value="\s+$"/>
|
||||
<property name="minimum" value="0"/>
|
||||
<property name="maximum" value="0"/>
|
||||
<property name="message" value="Line has trailing spaces."/>
|
||||
</module>
|
||||
-->
|
||||
|
||||
<module name="LineLength">
|
||||
<property name="ignorePattern" value="^.*//#.*|^.* \* @see .*|^import .*"/>
|
||||
</module>
|
||||
|
||||
<module name="TreeWalker">
|
||||
|
||||
<!-- Checks for Javadoc comments. -->
|
||||
<!-- See http://checkstyle.sf.net/config_javadoc.html -->
|
||||
<module name="JavadocMethod"/>
|
||||
<module name="JavadocType"/>
|
||||
<module name="JavadocVariable">
|
||||
<property name="scope" value="public"/>
|
||||
</module>
|
||||
<module name="JavadocStyle"/>
|
||||
|
||||
|
||||
<!-- Checks for Naming Conventions. -->
|
||||
<!-- See http://checkstyle.sf.net/config_naming.html -->
|
||||
<module name="ConstantName"/>
|
||||
<module name="LocalFinalVariableName"/>
|
||||
<module name="LocalVariableName"/>
|
||||
<module name="MemberName"/>
|
||||
<module name="MethodName"/>
|
||||
<module name="PackageName">
|
||||
<property name="format" value="^[a-z][a-z0-9_]+(\.[a-z][a-z0-9_]*)*$"/>
|
||||
</module>
|
||||
<module name="ParameterName"/>
|
||||
<module name="StaticVariableName"/>
|
||||
<module name="TypeName"/>
|
||||
|
||||
|
||||
<!-- Checks for Headers -->
|
||||
<!-- See http://checkstyle.sf.net/config_header.html -->
|
||||
<!-- <module name="Header"> -->
|
||||
<!-- The follow property value demonstrates the ability -->
|
||||
<!-- to have access to ANT properties. In this case it uses -->
|
||||
<!-- the ${basedir} property to allow Checkstyle to be run -->
|
||||
<!-- from any directory within a project. See property -->
|
||||
<!-- expansion, -->
|
||||
<!-- http://checkstyle.sf.net/config.html#properties -->
|
||||
<!-- <property -->
|
||||
<!-- name="headerFile" -->
|
||||
<!-- value="${basedir}/java.header"/> -->
|
||||
<!-- </module> -->
|
||||
|
||||
<!-- Following interprets the header file as regular expressions. -->
|
||||
<!-- <module name="RegexpHeader"/> -->
|
||||
|
||||
|
||||
<!-- Checks for imports -->
|
||||
<!-- See http://checkstyle.sf.net/config_import.html -->
|
||||
<module name="AvoidStarImport"/>
|
||||
<module name="IllegalImport"/> <!-- defaults to sun.* packages -->
|
||||
<module name="RedundantImport"/>
|
||||
<module name="UnusedImports"/>
|
||||
|
||||
|
||||
<!-- Checks for Size Violations. -->
|
||||
<!-- See http://checkstyle.sf.net/config_sizes.html -->
|
||||
<module name="MethodLength">
|
||||
<property name="countEmpty" value="false"/>
|
||||
</module>
|
||||
<module name="ParameterNumber"/>
|
||||
|
||||
|
||||
<!-- Checks for whitespace -->
|
||||
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
||||
<module name="EmptyForIteratorPad"/>
|
||||
<module name="GenericWhitespace"/>
|
||||
<module name="MethodParamPad"/>
|
||||
<module name="NoWhitespaceAfter">
|
||||
<property name="tokens" value="AT, INC, DEC, UNARY_MINUS, UNARY_PLUS, BNOT, LNOT, DOT, ARRAY_DECLARATOR, INDEX_OP"/>
|
||||
</module>
|
||||
<module name="NoWhitespaceBefore">
|
||||
<property name="tokens" value="COMMA, SEMI, POST_INC, POST_DEC, ELLIPSIS, LABELED_STAT"/>
|
||||
</module>
|
||||
<module name="OperatorWrap"/>
|
||||
<module name="ParenPad"/>
|
||||
<module name="TypecastParenPad"/>
|
||||
<module name="WhitespaceAfter"/>
|
||||
<module name="WhitespaceAround"/>
|
||||
|
||||
|
||||
<!-- Modifier Checks -->
|
||||
<!-- See http://checkstyle.sf.net/config_modifiers.html -->
|
||||
<module name="ModifierOrder"/>
|
||||
<!-- <module name="RedundantModifier"/> -->
|
||||
|
||||
|
||||
<!-- Checks for blocks. You know, those {}'s -->
|
||||
<!-- See http://checkstyle.sf.net/config_blocks.html -->
|
||||
<module name="AvoidNestedBlocks"/>
|
||||
<module name="EmptyBlock"/>
|
||||
<module name="LeftCurly"/>
|
||||
<module name="NeedBraces"/>
|
||||
<!-- <module name="RightCurly"/> -->
|
||||
|
||||
|
||||
<!-- Checks for common coding problems -->
|
||||
<!-- See http://checkstyle.sf.net/config_coding.html -->
|
||||
<!-- <module name="AvoidInlineConditionals"/> -->
|
||||
<module name="EmptyStatement"/>
|
||||
<module name="EqualsHashCode"/>
|
||||
<module name="HiddenField">
|
||||
<property name="ignoreConstructorParameter" value="true"/>
|
||||
<property name="ignoreSetter" value="true"/>
|
||||
</module>
|
||||
<module name="IllegalInstantiation"/>
|
||||
<module name="InnerAssignment"/>
|
||||
<module name="MissingSwitchDefault"/>
|
||||
<module name="SimplifyBooleanExpression"/>
|
||||
<module name="SimplifyBooleanReturn"/>
|
||||
|
||||
<!-- Checks for class design -->
|
||||
<!-- See http://checkstyle.sf.net/config_design.html -->
|
||||
<!-- <module name="DesignForExtension"/> -->
|
||||
<module name="FinalClass"/>
|
||||
<!-- <module name="HideUtilityClassConstructor"/> -->
|
||||
<module name="InterfaceIsType"/>
|
||||
<module name="VisibilityModifier">
|
||||
<property name="protectedAllowed" value="true"/>
|
||||
<property name="packageAllowed" value="true"/>
|
||||
</module>
|
||||
|
||||
|
||||
<!-- Miscellaneous other checks. -->
|
||||
<!-- See http://checkstyle.sf.net/config_misc.html -->
|
||||
<module name="ArrayTypeStyle"/>
|
||||
<!-- <module name="FinalParameters"/> -->
|
||||
<module name="TodoComment"/>
|
||||
<module name="UpperEll"/>
|
||||
|
||||
</module>
|
||||
|
||||
</module>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,132 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>de.hs_mannheim.pr2</groupId>
|
||||
<artifactId>solutions</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>PR2 Excercises</name>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
<junit.jupiter.version>5.9.1</junit.jupiter.version>
|
||||
<junit.platform.version>1.9.1</junit.platform.version>
|
||||
</properties>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>jitpack.io</id>
|
||||
<url>https://jitpack.io</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
<build>
|
||||
<defaultGoal>install</defaultGoal>
|
||||
<directory>${basedir}/target</directory>
|
||||
<finalName>${project.artifactId}-${project.version}</finalName>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.10.1</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<version>3.0.0-M7</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-checkstyle-plugin</artifactId>
|
||||
<version>3.2.0</version>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.puppycrawl.tools</groupId>
|
||||
<artifactId>checkstyle</artifactId>
|
||||
<version>10.4</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<configuration>
|
||||
<configLocation>checkstyle.xml</configLocation>
|
||||
<consoleOutput>true</consoleOutput>
|
||||
<failsOnError>true</failsOnError>
|
||||
<linkXRef>false</linkXRef>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>validate</id>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>check</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
<version>3.19.0</version>
|
||||
<configuration>
|
||||
<rulesets>
|
||||
<ruleset>./pmd.xml</ruleset>
|
||||
</rulesets>
|
||||
<failOnViolation>true</failOnViolation>
|
||||
<printFailingErrors>true</printFailingErrors>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>check</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<dependencies>
|
||||
<!--
|
||||
<dependency>
|
||||
<groupId>de.smits_net.games</groupId>
|
||||
<artifactId>game-framework</artifactId>
|
||||
<version>1.0</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
-->
|
||||
<dependency>
|
||||
<groupId>com.github.thomsmits</groupId>
|
||||
<artifactId> game-framework</artifactId>
|
||||
<version>v1.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-engine</artifactId>
|
||||
<version>${junit.jupiter.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-api</artifactId>
|
||||
<version>${junit.jupiter.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.jupiter</groupId>
|
||||
<artifactId>junit-jupiter-params</artifactId>
|
||||
<version>${junit.jupiter.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.platform</groupId>
|
||||
<artifactId>junit-platform-suite</artifactId>
|
||||
<version>${junit.platform.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.junit.vintage</groupId>
|
||||
<artifactId>junit-vintage-engine</artifactId>
|
||||
<version>4.12.0-M4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jfree</groupId>
|
||||
<artifactId>jfreechart</artifactId>
|
||||
<version>1.5.3</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
|
@ -0,0 +1,6 @@
|
|||
package pr2.auffrischung.grossmacher;
|
||||
|
||||
public class Grossmacher {
|
||||
|
||||
// TODO: main-Methode implementieren
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
package pr2.auffrischung.labeled_break;
|
||||
|
||||
public class ArraySucher {
|
||||
|
||||
/**
|
||||
* Sucht das erste Element, dass nicht 0 ist.
|
||||
*
|
||||
* @param array das Array in dem gesucht werden soll
|
||||
* @return {@code true}, wenn ein Element gefunden wird,
|
||||
* andernfalls {@code false}.
|
||||
*/
|
||||
public boolean suche(int[][] array) {
|
||||
boolean found = false;
|
||||
|
||||
// TODO: Methodenrumpf schreiben
|
||||
|
||||
return found;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
package pr2.auffrischung.password;
|
||||
|
||||
public class PasswortChecker {
|
||||
|
||||
|
||||
public static int checkPassword(String password) {
|
||||
int points = 0;
|
||||
|
||||
// TODO: Methode implementieren
|
||||
|
||||
return points;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println(checkPassword("mutti"));
|
||||
System.out.println(checkPassword("Mutti"));
|
||||
System.out.println(checkPassword("mutti123"));
|
||||
System.out.println(checkPassword("Mutti123"));
|
||||
System.out.println(checkPassword("Mutti123!%"));
|
||||
System.out.println(checkPassword("1234"));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package pr2.auffrischung.printf;
|
||||
|
||||
public class DoubleFormatter {
|
||||
|
||||
public static void printDouble(double d) {
|
||||
// TODO: Wert ausgeben
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
printDouble(1.0);
|
||||
printDouble(10.1);
|
||||
printDouble(2.01);
|
||||
printDouble(2.001);
|
||||
printDouble(2.0001);
|
||||
printDouble(2.0004);
|
||||
printDouble(2.0005);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
package pr2.auffrischung.suchemax;
|
||||
|
||||
public class GroessteZahl {
|
||||
|
||||
public int sucheMax(int[] zahlen) {
|
||||
int max = 0;
|
||||
|
||||
// TODO: Methode implementieren
|
||||
|
||||
return max;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
GroessteZahl g = new GroessteZahl();
|
||||
System.out.println(g.sucheMax(new int[] {1, 5, 8, 2, 0}));
|
||||
System.out.println(g.sucheMax(new int[] {-1, -5, -8, -2, -20}));
|
||||
System.out.println(g.sucheMax(new int[] {10000, -10000, 1, 2, 33}));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package pr2.auffrischung.taschenrechner;
|
||||
|
||||
public class Taschenrechner {
|
||||
|
||||
public double rechne(double o1, char op, double o2) {
|
||||
// TODO: Implementieren
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
Taschenrechner t = new Taschenrechner();
|
||||
System.out.println(t.rechne(1, '+', 2));
|
||||
System.out.println(t.rechne(1, '-', 2));
|
||||
System.out.println(t.rechne(2, '*', 2));
|
||||
System.out.println(t.rechne(4, '/', 2));
|
||||
System.out.println(t.rechne(2, '^', 32));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
package pr2.collections.iterator;
|
||||
|
||||
import java.util.Iterator;
|
||||
|
||||
/**
|
||||
* Eine einfache, naive Stack Implementierung.
|
||||
*
|
||||
* @param <T> Typ, der gespeichert werden soll.
|
||||
*/
|
||||
public class SimpleStack<T> {
|
||||
// TODO: implements Iterable<T> hinzufügen
|
||||
|
||||
// Variablen sind nicht private wegen Zugriff durch den Iterator
|
||||
T[] stack;
|
||||
|
||||
int pos;
|
||||
|
||||
/**
|
||||
* Legt einen neuen Stack mit der gegebenen Größe an.
|
||||
*
|
||||
* @param size Größe des Stacks.
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public SimpleStack(int size) {
|
||||
stack = (T[]) new Object[size];
|
||||
pos = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Fügt dem Stack ein neues Element hinzu.
|
||||
*
|
||||
* @param o Element, das hinzugefügt werden soll.
|
||||
*/
|
||||
public void push(T o) {
|
||||
stack[pos++] = o;
|
||||
}
|
||||
|
||||
/**
|
||||
* Holt das oberste Element und entfernt es.
|
||||
*
|
||||
* @return das oberste Element
|
||||
*/
|
||||
public T pop() {
|
||||
return stack[--pos];
|
||||
}
|
||||
|
||||
/**
|
||||
* Gibt das oberste Element zurück, ohne es zu entfernen.
|
||||
*
|
||||
* @return das oberste Element
|
||||
*/
|
||||
public T peek() {
|
||||
return stack[pos - 1];
|
||||
}
|
||||
|
||||
// TODO: Interface Iterable<T> implementieren
|
||||
}
|
|
@ -0,0 +1,87 @@
|
|||
package pr2.collections.iterator.test;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.collections.iterator.SimpleStack;
|
||||
|
||||
import java.util.Iterator;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertFalse;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
|
||||
/**
|
||||
* Test für den Stack.
|
||||
*/
|
||||
public class SimpleStackTest {
|
||||
|
||||
/**
|
||||
* Testet den Stack an sich.
|
||||
*/
|
||||
@Test
|
||||
void testStack() {
|
||||
SimpleStack<String> s = new SimpleStack<>(10);
|
||||
s.push("A");
|
||||
s.push("B");
|
||||
s.push("C");
|
||||
s.push("D");
|
||||
assertEquals("D", s.peek());
|
||||
assertEquals("D", s.pop());
|
||||
assertEquals("C", s.pop());
|
||||
assertEquals("B", s.pop());
|
||||
s.push("A2");
|
||||
s.push("A3");
|
||||
assertEquals("A3", s.peek());
|
||||
assertEquals("A3", s.pop());
|
||||
assertEquals("A2", s.pop());
|
||||
assertEquals("A", s.pop());
|
||||
}
|
||||
|
||||
// TODO: Einkommentieren
|
||||
//
|
||||
// /**
|
||||
// * Testet den Iterator.
|
||||
// */
|
||||
// @Test
|
||||
// void testIterator() {
|
||||
// SimpleStack<String> s = new SimpleStack<>(10);
|
||||
// s.push("A");
|
||||
// s.push("B");
|
||||
// s.push("C");
|
||||
// s.push("D");
|
||||
//
|
||||
// String[] result = new String[5];
|
||||
// int count = 0;
|
||||
//
|
||||
// for (String string : s) {
|
||||
// result[count++] = string;
|
||||
// }
|
||||
//
|
||||
// assertEquals("D", s.peek());
|
||||
//
|
||||
// assertEquals("D", result[0]);
|
||||
// assertEquals("C", result[1]);
|
||||
// assertEquals("B", result[2]);
|
||||
// assertEquals("A", result[3]);
|
||||
//
|
||||
// s.push("E");
|
||||
//
|
||||
// Iterator<String> it = s.iterator();
|
||||
//
|
||||
// count = 0;
|
||||
// while (it.hasNext()) {
|
||||
// result[count++] = it.next();
|
||||
// }
|
||||
//
|
||||
// assertEquals("E", result[0]);
|
||||
// assertEquals("D", result[1]);
|
||||
// assertEquals("C", result[2]);
|
||||
// assertEquals("B", result[3]);
|
||||
// assertEquals("A", result[4]);
|
||||
//
|
||||
// assertFalse(it.hasNext());
|
||||
//
|
||||
// it = s.iterator();
|
||||
//
|
||||
// assertTrue(it.hasNext());
|
||||
// }
|
||||
}
|
|
@ -0,0 +1,159 @@
|
|||
package pr2.collections.list;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.FileReader;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Klassen, um die in einem Text vorkommenden Wörter zu sammeln.
|
||||
*/
|
||||
public class WordCollector {
|
||||
|
||||
/**
|
||||
* Listet alle Worte in der Datei alphabetisch auf. Duplikate werden
|
||||
* entfernt. Die Wörter werden in Kleinbuchstaben umgewandelt.
|
||||
*
|
||||
* @param filename Dateiname
|
||||
* @return die Liste der vorhandenen Wort
|
||||
* @throws IOException Fehler beim Dateizugriff.
|
||||
*/
|
||||
public static String[] listWords(String filename) throws IOException {
|
||||
String[] allWords = readFileAndSplitIntoWords(filename);
|
||||
String[] result = removeDuplicates(allWords);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Listet alle Worte in der Datei auf.
|
||||
*
|
||||
* @param filename Dateiname
|
||||
* @return die Liste der vorhandenen Wort
|
||||
* @throws IOException Fehler beim Dateizugriff.
|
||||
*/
|
||||
private static String[] readFileAndSplitIntoWords(String filename)
|
||||
throws IOException {
|
||||
|
||||
// Datei zum Lesen öffnen
|
||||
BufferedReader reader = new BufferedReader(
|
||||
new FileReader(filename));
|
||||
|
||||
String line; // aktuelle Zeile
|
||||
String[] wordBuffer = new String[100]; // Puffer für die Worte
|
||||
int pos = 0; // Position im Word-Puffer
|
||||
|
||||
// Über die Zeilen der Datei iterieren
|
||||
while ((line = reader.readLine()) != null) {
|
||||
|
||||
// Sonderzeichen entfernen und die Zeilen in Worte splitten
|
||||
line = line.toLowerCase();
|
||||
line = line.replaceAll("[\",.:'\\-\\!?]", "");
|
||||
|
||||
String[] words = line.toLowerCase().split("[,. ]");
|
||||
|
||||
// Worte in den Puffer übertragen
|
||||
for (String word : words) {
|
||||
|
||||
if (pos >= wordBuffer.length) {
|
||||
// Puffer ist voll, vergrößern
|
||||
String[] newBuffer =
|
||||
new String[wordBuffer.length * 2];
|
||||
System.arraycopy(wordBuffer, 0, newBuffer,
|
||||
0, wordBuffer.length);
|
||||
wordBuffer = newBuffer;
|
||||
}
|
||||
|
||||
wordBuffer[pos++] = word;
|
||||
}
|
||||
}
|
||||
|
||||
reader.close();
|
||||
|
||||
// Ergebnis-Array mit der richtigen Größe anlegen
|
||||
String[] result = new String[pos];
|
||||
System.arraycopy(wordBuffer, 0, result, 0, pos);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sortiert das übergebene Array alphabetisch und entfernt Duplikate.
|
||||
*
|
||||
* @param input Eingabe Array
|
||||
* @return sortiertes und bereinigtes Array
|
||||
*/
|
||||
private static String[] removeDuplicates(String[] input) {
|
||||
|
||||
// Eingabe Array clonen, da es verändert wird (Seiteneffekt)
|
||||
String[] strings = input.clone();
|
||||
|
||||
// Array sortieren
|
||||
Arrays.sort(strings);
|
||||
|
||||
// Über die Einträge laufen
|
||||
for (int i = 0; i < strings.length; i++) {
|
||||
String word = strings[i];
|
||||
|
||||
if (word == null) {
|
||||
// Bereits entfernter Eintrag
|
||||
continue;
|
||||
}
|
||||
|
||||
// Über die Einträge laufen
|
||||
for (int k = i + 1; k < strings.length; k++) {
|
||||
String otherWord = strings[k];
|
||||
|
||||
if (otherWord == null) {
|
||||
// Bereits entfernter Eintrag
|
||||
continue;
|
||||
}
|
||||
else if (otherWord.compareTo(word) > 0) {
|
||||
// Sind schon hinter der möglichen Position
|
||||
break;
|
||||
}
|
||||
else if (otherWord.equals(word)) {
|
||||
// Duplikat, ausnullen
|
||||
strings[k] = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Ausgenullte Einträge entfernen
|
||||
int pos = 0;
|
||||
String[] temp = new String[strings.length];
|
||||
|
||||
for (int i = 0; i < strings.length; i++) {
|
||||
if (strings[i] != null) {
|
||||
temp[pos++] = strings[i];
|
||||
}
|
||||
}
|
||||
|
||||
// Ergebnis auf die richtige Länge bringen
|
||||
String[] result = new String[pos];
|
||||
System.arraycopy(temp, 0, result, 0, pos);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hauptmethode.
|
||||
*
|
||||
* @param args Kommandozeilen-Argumente.
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
|
||||
try {
|
||||
String[] words = listWords(
|
||||
"kafka.txt");
|
||||
System.out.println(Arrays.toString(words));
|
||||
}
|
||||
catch (IOException e) {
|
||||
System.err.println("Probleme beim Dateizugriff: " + e);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
package pr2.collections.list_iterator;
|
||||
|
||||
import java.util.Iterator;
|
||||
public class Liste<T> implements Iterable<T> {
|
||||
|
||||
static class Item<T> {
|
||||
T element;
|
||||
Item<T> next;
|
||||
|
||||
public Item(T element) {
|
||||
this.element = element;
|
||||
}
|
||||
}
|
||||
|
||||
Item<T> first;
|
||||
Item<T> last;
|
||||
|
||||
// TODO: Klasse ListenIterator implementieren
|
||||
|
||||
public void add(T element) {
|
||||
Item<T> item = new Item<T>(element);
|
||||
|
||||
first = (first != null) ? first : item;
|
||||
|
||||
if (last == null) {
|
||||
last = item;
|
||||
} else {
|
||||
last.next = item;
|
||||
last = item;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Iterator<T> iterator() {
|
||||
return null;
|
||||
// TODO: neuen ListenIterator zurück geben
|
||||
}
|
||||
}
|
|
@ -0,0 +1,76 @@
|
|||
package pr2.collections.map;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.FileReader;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Zählen von Worthäufigkeiten.
|
||||
*/
|
||||
public class WordCount {
|
||||
|
||||
/**
|
||||
* Listet alle Worte in der Datei und deren Häufigkeit auf.
|
||||
* Die zurückgegebene Liste ist bereits nach der Häufigkeit
|
||||
* sortiert.
|
||||
*
|
||||
* @param filename Dateiname
|
||||
* @return die Liste der vorhandenen Wörter
|
||||
* @throws IOException Fehler beim Dateizugriff.
|
||||
*/
|
||||
private static List<WordFrequency> countWords(String filename)
|
||||
throws IOException {
|
||||
|
||||
// TODO: Map deklarieren
|
||||
|
||||
// Datei zum Lesen öffnen
|
||||
BufferedReader reader = new BufferedReader(new FileReader(filename));
|
||||
|
||||
String line; // aktuelle Zeile
|
||||
|
||||
// Über die Zeilen der Datei iterieren
|
||||
while ((line = reader.readLine()) != null) {
|
||||
|
||||
// Sonderzeichen entfernen und die Zeilen in Worte splitten
|
||||
line = line.toLowerCase();
|
||||
line = line.replaceAll("[\",.:;)'\\-!?]", "");
|
||||
|
||||
String[] words = line.toLowerCase().split("[,. ]");
|
||||
|
||||
for (String word : words) {
|
||||
// TODO: Worthäufigkeiten in Map speichern
|
||||
}
|
||||
}
|
||||
|
||||
reader.close();
|
||||
|
||||
// TODO: Worthäufigkeiten aus der Map extrahieren und sortieren
|
||||
|
||||
// TODO: Ergebnis zurückgeben
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hauptmethode.
|
||||
*
|
||||
* @param args Kommandozeilen-Argumente.
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
|
||||
try {
|
||||
List<WordFrequency> words = countWords(
|
||||
"kafka.txt");
|
||||
|
||||
for (WordFrequency word : words) {
|
||||
System.out.println(word);
|
||||
}
|
||||
} catch (IOException e) {
|
||||
System.err.println("Probleme beim Dateizugriff: " + e);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
package pr2.collections.map;
|
||||
|
||||
/**
|
||||
* Klasse für die Verwaltung der Worthäufigkeiten.
|
||||
*/
|
||||
public class WordFrequency {
|
||||
// TODO: Sortierbar machen [Comparable]
|
||||
|
||||
/**
|
||||
* Das Wort.
|
||||
*/
|
||||
String word;
|
||||
|
||||
/**
|
||||
* Seine Häufigkeit.
|
||||
*/
|
||||
int frequency;
|
||||
|
||||
/**
|
||||
* Legt ein neues Objekt an.
|
||||
*
|
||||
* @param word das gespeicherte Wort
|
||||
* @param frequency die Häfigkeit
|
||||
*/
|
||||
WordFrequency(String word, int frequency) {
|
||||
this.word = word;
|
||||
this.frequency = frequency;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Erhöht die Häufigkeit des Wortes.
|
||||
*/
|
||||
public void incrementFrequency() {
|
||||
frequency++;
|
||||
}
|
||||
|
||||
/**
|
||||
* @see java.lang.Object#toString()
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.format("%s: %d", word, frequency);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package pr2.collections.reverser;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
|
||||
public class Reverser {
|
||||
public void reverse(List<String> liste) {
|
||||
|
||||
// TODO: Liste umgekehrt sortieren
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package pr2.collections.reverser.test;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.collections.reverser.Reverser;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
public class ReverserTest {
|
||||
|
||||
@Test
|
||||
void testReverser() {
|
||||
// TODO: Reverser testen
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
package pr2.collections.reverser_generic;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
|
||||
public class Reverser {
|
||||
|
||||
public void reverse(List<String> liste) {
|
||||
|
||||
// TODO: Liste umgekehrt sortieren
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package pr2.collections.reverser_generic.test;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.collections.reverser_generic.Reverser;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
public class ReverserTest {
|
||||
|
||||
@Test
|
||||
void testReverser() {
|
||||
// TODO: Reverser testen
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,158 @@
|
|||
package pr2.collections.set;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.FileReader;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* Klassen, um die in einem Text vorkommenen Wörter zu sammeln.
|
||||
*/
|
||||
public class WordCollector {
|
||||
|
||||
/**
|
||||
* Listet alle Worte in der Datei alphabetisch auf. Duplikate werden
|
||||
* entfernt. Die Wörter werden in Kleinbuchstaben umgewandelt.
|
||||
*
|
||||
* @param filename Dateiname
|
||||
* @return die Liste der vorhandenen Wort
|
||||
* @throws IOException Fehler beim Dateizugriff.
|
||||
*/
|
||||
public static String[] listWords(String filename) throws IOException {
|
||||
String[] allWords = readFileAndSplitIntoWords(filename);
|
||||
String[] result = removeDuplicates(allWords);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Listet alle Worte in der Datei auf.
|
||||
*
|
||||
* @param filename Dateiname
|
||||
* @return die Liste der vorhandenen Wort
|
||||
* @throws IOException Fehler beim Dateizugriff.
|
||||
*/
|
||||
private static String[] readFileAndSplitIntoWords(String filename)
|
||||
throws IOException {
|
||||
|
||||
// Datei zum Lesen öffnen
|
||||
BufferedReader reader = new BufferedReader(
|
||||
new FileReader(filename));
|
||||
|
||||
String line; // aktuelle Zeile
|
||||
String[] wordBuffer = new String[100]; // Puffer für die Worte
|
||||
int pos = 0; // Position im Word-Puffer
|
||||
|
||||
// Über die Zeilen der Datei iterieren
|
||||
while ((line = reader.readLine()) != null) {
|
||||
|
||||
// Sonderzeichen entfernen und die Zeilen in Worte splitten
|
||||
line = line.replaceAll("[\",.:'\\-!?]", "");
|
||||
|
||||
String[] words = line.toLowerCase().split("[,. ]");
|
||||
|
||||
// Worte in den Puffer übertragen
|
||||
for (String word : words) {
|
||||
|
||||
if (pos >= wordBuffer.length) {
|
||||
// Puffer ist voll, vergrößern
|
||||
String[] newBuffer =
|
||||
new String[wordBuffer.length * 2];
|
||||
System.arraycopy(wordBuffer, 0, newBuffer,
|
||||
0, wordBuffer.length);
|
||||
wordBuffer = newBuffer;
|
||||
}
|
||||
|
||||
wordBuffer[pos++] = word;
|
||||
}
|
||||
}
|
||||
|
||||
reader.close();
|
||||
|
||||
// Ergebnis-Array mit der richtigen Größe anlegen
|
||||
String[] result = new String[pos];
|
||||
System.arraycopy(wordBuffer, 0, result, 0, pos);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sortiert das übergebene Array alphabetisch und entfernt Duplikate.
|
||||
*
|
||||
* @param input Eingabe Array
|
||||
* @return sortiertes und bereinigtes Array
|
||||
*/
|
||||
private static String[] removeDuplicates(String[] input) {
|
||||
|
||||
// Eingabe Array clonen, da es verändert wird (Seiteneffekt)
|
||||
String[] strings = input.clone();
|
||||
|
||||
// Array sortieren
|
||||
Arrays.sort(strings);
|
||||
|
||||
// Über die Einträge laufen
|
||||
for (int i = 0; i < strings.length; i++) {
|
||||
String word = strings[i];
|
||||
|
||||
if (word == null) {
|
||||
// Bereits entfernter Eintrag
|
||||
continue;
|
||||
}
|
||||
|
||||
// Über die Einträge laufen
|
||||
for (int k = i + 1; k < strings.length; k++) {
|
||||
String otherWord = strings[k];
|
||||
|
||||
if (otherWord == null) {
|
||||
// Bereits entfernter Eintrag
|
||||
continue;
|
||||
}
|
||||
else if (otherWord.compareTo(word) > 0) {
|
||||
// Sind schon hinter der möglichen Position
|
||||
break;
|
||||
}
|
||||
else if (otherWord.equals(word)) {
|
||||
// Duplikat, ausnullen
|
||||
strings[k] = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Ausgenullte Einträge entfernen
|
||||
int pos = 0;
|
||||
String[] temp = new String[strings.length];
|
||||
|
||||
for (int i = 0; i < strings.length; i++) {
|
||||
if (strings[i] != null) {
|
||||
temp[pos++] = strings[i];
|
||||
}
|
||||
}
|
||||
|
||||
// Ergebnis auf die richtige Länge bringen
|
||||
String[] result = new String[pos];
|
||||
System.arraycopy(temp, 0, result, 0, pos);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hauptmethode.
|
||||
*
|
||||
* @param args Kommandozeilen-Argumente.
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
|
||||
try {
|
||||
String[] words = listWords("kafka.txt");
|
||||
System.out.println(Arrays.toString(words));
|
||||
}
|
||||
catch (IOException e) {
|
||||
System.err.println("Probleme beim Dateizugriff: " + e);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package pr2.collections.sorter_1;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
public class CommandLineSorter {
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO: Sortierung der Argumente durchführen
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package pr2.collections.sorter_2;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
public class CommandLineSorter {
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO: Sortierung der Argumente durchführen
|
||||
}
|
||||
}
|
|
@ -0,0 +1,58 @@
|
|||
package pr2.collections.sortieren;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
|
||||
/**
|
||||
* Klasse zum Sortieren von Strings.
|
||||
*/
|
||||
public class Sorter {
|
||||
|
||||
/**
|
||||
* Liefert einen Comparator für Strings.
|
||||
*
|
||||
* @param order Sortierreihenfolge.
|
||||
* @return Comparator, entsprechend der gewünschten Sortierreihenfolge.
|
||||
*/
|
||||
private static Comparator<String> stringComparator(final SortOrder order) {
|
||||
// TODO: Methode implementieren
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sortiert das übergebene Array entsprechend der gewünschten Reihenfolge.
|
||||
*
|
||||
* @param array das zu sortierende Array.
|
||||
* @param order die Sortierreihenfolge.
|
||||
*/
|
||||
public static void sort(String[] array, SortOrder order) {
|
||||
Arrays.sort(array, stringComparator(order));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sortierreihenfolge für die Strings.
|
||||
*/
|
||||
public enum SortOrder {
|
||||
|
||||
/**
|
||||
* Aufsteigend.
|
||||
*/
|
||||
ASCENDING,
|
||||
|
||||
/**
|
||||
* Absteigend.
|
||||
*/
|
||||
DESCENDING,
|
||||
|
||||
/**
|
||||
* Aufsteigend, ohne Beachtung der Groß-/Kleinschreibung.
|
||||
*/
|
||||
ASCENDING_CASE_INSENSITIVE,
|
||||
|
||||
/**
|
||||
* Absteigend, ohne Beachtung der Groß-/Kleinschreibung.
|
||||
*/
|
||||
DESCENDING_CASE_INSENSITIVE
|
||||
}
|
||||
}
|
|
@ -0,0 +1,75 @@
|
|||
package pr2.collections.sortieren.test;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.collections.sortieren.Sorter;
|
||||
import pr2.collections.sortieren.Sorter.SortOrder;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
|
||||
|
||||
|
||||
/**
|
||||
* Test für die Sortierung.
|
||||
*/
|
||||
public class SorterTest {
|
||||
|
||||
private static final String[] DATA =
|
||||
{"aaron", "ALFONS", "bond", "BerND", "henry", "Hugo"};
|
||||
|
||||
/**
|
||||
* Testet die Sortierung: aufsteigend.
|
||||
*/
|
||||
@Test
|
||||
void testAscendingSorting() {
|
||||
|
||||
String[] asc = DATA.clone();
|
||||
|
||||
Sorter.sort(asc, SortOrder.ASCENDING);
|
||||
|
||||
assertArrayEquals(
|
||||
new String[] {"ALFONS", "BerND", "Hugo", "aaron", "bond",
|
||||
"henry"}, asc);
|
||||
}
|
||||
|
||||
/**
|
||||
* Testet die Sortierung: Absteigend.
|
||||
*/
|
||||
@Test
|
||||
void testDescendingSorting() {
|
||||
|
||||
String[] desc = DATA.clone();
|
||||
Sorter.sort(desc, SortOrder.DESCENDING);
|
||||
|
||||
assertArrayEquals(
|
||||
new String[] {"henry", "bond", "aaron", "Hugo", "BerND",
|
||||
"ALFONS"}, desc);
|
||||
}
|
||||
|
||||
/**
|
||||
* Testet die Sortierung: Aufsteigend, CI.
|
||||
*/
|
||||
@Test
|
||||
void testAscendingCISorting() {
|
||||
|
||||
String[] ascCI = DATA.clone();
|
||||
Sorter.sort(ascCI, SortOrder.ASCENDING_CASE_INSENSITIVE);
|
||||
|
||||
assertArrayEquals(
|
||||
new String[] {"aaron", "ALFONS", "BerND", "bond", "henry",
|
||||
"Hugo"}, ascCI);
|
||||
}
|
||||
|
||||
/**
|
||||
* Testet die Sortierung: Absteigend, CI.
|
||||
*/
|
||||
@Test
|
||||
void testDescendingCISorting() {
|
||||
|
||||
String[] descCI = DATA.clone();
|
||||
|
||||
Sorter.sort(descCI, SortOrder.DESCENDING_CASE_INSENSITIVE);
|
||||
|
||||
assertArrayEquals(
|
||||
new String[] {"Hugo", "henry", "bond", "BerND", "ALFONS",
|
||||
"aaron"}, descCI);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package pr2.collections.woerterbuch;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class Woerterbuch {
|
||||
|
||||
|
||||
public static void main(String[] args) {
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
package pr2.enums.eigene;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
/**
|
||||
* Ein einfacher Würfel.
|
||||
*/
|
||||
public class Wuerfel {
|
||||
|
||||
/** 4-seitiger Würfel. */
|
||||
public static final int D4 = 4;
|
||||
|
||||
/** 6-seitiger Würfel. */
|
||||
public static final int D6 = 6;
|
||||
|
||||
/** 8-seitiger Würfel. */
|
||||
public static final int D8 = 8;
|
||||
|
||||
/** 10-seitiger Würfel. */
|
||||
public static final int D10 = 10;
|
||||
|
||||
/** 12-seitiger Würfel. */
|
||||
public static final int D12 = 13;
|
||||
|
||||
/**
|
||||
* Zufallszahlengenerator.
|
||||
*/
|
||||
private final Random rnd = new Random();
|
||||
|
||||
/**
|
||||
* Anzahl der Seiten des Würfels.
|
||||
*/
|
||||
private final int numSides;
|
||||
|
||||
/**
|
||||
* Einen neuen Würfel anlegen.
|
||||
*
|
||||
* @param typ Anzahl der Seiten des Würfels.
|
||||
*/
|
||||
public Wuerfel(int numSides) {
|
||||
this.numSides = numSides;
|
||||
}
|
||||
|
||||
/**
|
||||
* Den Würfel werfen.
|
||||
*
|
||||
* @return Ergebnis des Wurfes.
|
||||
*/
|
||||
public int roll() {
|
||||
return rnd.nextInt(numSides) + 1;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
package pr2.enums.eigene.test;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.enums.eigene.Wuerfel;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
/**
|
||||
* Test für die Würfel.
|
||||
*/
|
||||
public class WuerfelTest {
|
||||
|
||||
/**
|
||||
* Anzahl der Durchläufe (Gesetz der großen Zahl!).
|
||||
*/
|
||||
private static final int RUNS = 10000000;
|
||||
|
||||
|
||||
@Test
|
||||
void testFairnessD4() {
|
||||
internalTestFairness(new Wuerfel(Wuerfel.D4), 2.5);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testFairnessD6() {
|
||||
internalTestFairness(new Wuerfel(Wuerfel.D6), 3.5);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testFairnessD8() {
|
||||
internalTestFairness(new Wuerfel(Wuerfel.D8), 4.5);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testFairnessD10() {
|
||||
internalTestFairness(new Wuerfel(Wuerfel.D10), 5.5);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testFairnessD12() {
|
||||
internalTestFairness(new Wuerfel(Wuerfel.D12), 6.5);
|
||||
}
|
||||
|
||||
/**
|
||||
* Interne Hilfsmethode, um die Fairness zu testen.
|
||||
*
|
||||
* @param w der zu testende Wuerfel.
|
||||
* @param expected Erwartungswert.
|
||||
*/
|
||||
private void internalTestFairness(Wuerfel w, double expected) {
|
||||
long sum = 0;
|
||||
|
||||
for (int i = 0; i < RUNS; i++) {
|
||||
sum += w.roll();
|
||||
}
|
||||
double average = (double) sum / (double) RUNS;
|
||||
assertEquals(expected, average, 0.1);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
package pr2.enums.filme;
|
||||
|
||||
public enum LieblingsFilme {
|
||||
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
package pr2.enums.filme;
|
||||
|
||||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
// TODO: Alle Filme ausgeben
|
||||
}
|
||||
}
|
|
@ -0,0 +1,4 @@
|
|||
package pr2.enums.schnick;
|
||||
|
||||
public enum Move {
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
package pr2.enums.schnick;
|
||||
|
||||
import java.util.Random;
|
||||
import java.util.Scanner;
|
||||
|
||||
/**
|
||||
* Schick - Schnack - Schnuck (Rock - Paper - Scissors).
|
||||
*/
|
||||
public class SchnickSchnackSchnuck {
|
||||
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
package pr2.enums.singleton;
|
||||
|
||||
enum MyEnum {
|
||||
A,
|
||||
B,
|
||||
C;
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
package pr2.enums.singleton;
|
||||
|
||||
public class SingletonBeweis {
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO: Singleton-Eigenschaft zeigen
|
||||
}
|
||||
}
|
|
@ -0,0 +1,164 @@
|
|||
package pr2.exceptions.ausnahmen_testen;
|
||||
|
||||
/**
|
||||
* Implementierung einer Caesar-Verschlüsselung.
|
||||
* <p>
|
||||
* Der Eingabetext ({@literal message}) darf nur aus den Groß-Buchstaben A-Z
|
||||
* bestehen. Alle anderen Zeichen (einschließlich der Leerzeichen) führen zu
|
||||
* einer entsprechenden Ausnahme.
|
||||
* <p>
|
||||
* Dasselbe gilt für die Entschlüsselung. Auch hier dürfen nur gültige
|
||||
* Zeichen auftauchen. Andernfalls kommt es zu einer Ausnahme.
|
||||
* <p>
|
||||
* Der Schlüssel darf nur aus einem einzelnen Zeichen bestehen und muss
|
||||
* ebenfalls aus dem Bereich A-Z stammen. Kleinbuchstaben oder andere
|
||||
* Zeichen führen zu einer Ausnahme.
|
||||
* <p>
|
||||
* Zwischen den beiden Methoden muss bei gleichem Schlüssel {@code key}
|
||||
* folgendes gelten:
|
||||
* <p>
|
||||
* {@code text.equals(decrypt(key, encrypt(key, text)) == true}.
|
||||
*/
|
||||
public class CrypterCaesar {
|
||||
|
||||
/**
|
||||
* Gültige Zeichen für Schlüssel und Text.
|
||||
*/
|
||||
protected static final String ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||
|
||||
/**
|
||||
* Verschlüsselt den gegebenen Text mit dem angegebenen Schlüssel.
|
||||
*
|
||||
* @param key Schlüssel, der verwendet werden soll.
|
||||
* @param message Nachricht, die Verschlüsselt werden soll.
|
||||
* @return verschlüsselter Text.
|
||||
* @throws IllegalMessageException Wird geworfen, wenn die
|
||||
* Nachricht ungültig ist.
|
||||
* @throws IllegalKeyException Wird geworfen, wenn der Schlüssel
|
||||
* ungültig ist.
|
||||
*/
|
||||
public String encrypt(String key, String message)
|
||||
throws IllegalMessageException, IllegalKeyException {
|
||||
|
||||
checkKeyAndMessage(key, message);
|
||||
|
||||
int shift = key.charAt(0) - 'A' + 1;
|
||||
return shift(message, shift);
|
||||
}
|
||||
|
||||
/**
|
||||
* Entschlüsselt den gegebenen Text mit dem angegebenen Schlüssel.
|
||||
*
|
||||
* @param key Schlüssel, der verwendet werden soll.
|
||||
* @param cypherText Nachricht, die entschlüsselt werden soll.
|
||||
* @return entschlüsselter Text.
|
||||
* @throws IllegalMessageException Wird geworfen, wenn die
|
||||
* Nachricht ungültig ist.
|
||||
* @throws IllegalKeyException Wird geworfen, wenn der Schlüssel
|
||||
* ungültig ist.
|
||||
*/
|
||||
public String decrypt(String key, String cypherText)
|
||||
throws IllegalKeyException, IllegalMessageException {
|
||||
|
||||
checkKeyAndMessage(key, cypherText);
|
||||
|
||||
int shift = key.charAt(0) - 'A' + 1;
|
||||
return shift(cypherText, -shift);
|
||||
}
|
||||
|
||||
/**
|
||||
* Verschiebt die Zeichen im Text um den gegebenen Faktor.
|
||||
*
|
||||
* @param text Nachricht
|
||||
* @param shift Verschiebefaktor
|
||||
* @return das Ergebnis als String
|
||||
*/
|
||||
private String shift(String text, int shift) {
|
||||
|
||||
StringBuilder result = new StringBuilder();
|
||||
|
||||
for (char c : text.toCharArray()) {
|
||||
char newChar = (char) (c + shift);
|
||||
|
||||
if (newChar > 'Z') {
|
||||
// Überlauf nach hinten
|
||||
newChar = (char) (newChar - ('Z' - 'A' + 1));
|
||||
}
|
||||
else if (newChar < 'A') {
|
||||
// Überlauf nach vorne
|
||||
newChar = (char) (newChar + ('Z' - 'A' + 1));
|
||||
}
|
||||
|
||||
result.append(newChar);
|
||||
}
|
||||
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Prüft Schlüssel und Nachricht.
|
||||
*
|
||||
* @param key der Schlüssel
|
||||
* @param message die Nachricht
|
||||
* @throws IllegalKeyException Schlüssel nicht OK
|
||||
* @throws IllegalMessageException Nachricht nicht OK
|
||||
*/
|
||||
private void checkKeyAndMessage(String key, String message)
|
||||
throws IllegalKeyException, IllegalMessageException {
|
||||
|
||||
if (!checkKey(key)) {
|
||||
throw new IllegalKeyException(key);
|
||||
}
|
||||
|
||||
if (!checkCharacters(message, ALPHABET)) {
|
||||
throw new IllegalMessageException(key);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Testet den Schlüssel auf Korrektheit: Er muss mindestens die Länge 1
|
||||
* haben und darf nur Zeichen von A-Z enthalten.
|
||||
*
|
||||
* @param key zu testender Schlüssel
|
||||
* @return {@code true} if characters are ok, otherwise {@code false}
|
||||
*/
|
||||
protected boolean checkKey(String key) {
|
||||
|
||||
if (key.length() != 1) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return checkCharacters(key, ALPHABET);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks the given input to ensure that it only contains the given
|
||||
* character set and no other characters.
|
||||
*
|
||||
* @param inputChars the string to be checked
|
||||
* @param charSet a string containing all allowed characters
|
||||
* @return {@code true} if characters are ok, otherwise {@code false}
|
||||
*/
|
||||
protected boolean checkCharacters(char[] inputChars, String charSet) {
|
||||
|
||||
for (char c : inputChars) {
|
||||
if (charSet.indexOf(c) == -1) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks the given input to ensure that it only contains the given
|
||||
* character set and no other characters.
|
||||
*
|
||||
* @param input the string to be checked
|
||||
* @param charSet a string containing all allowed characters
|
||||
* @return {@code true} if characters are ok, otherwise {@code false}
|
||||
*/
|
||||
protected boolean checkCharacters(String input, String charSet) {
|
||||
return checkCharacters(input.toCharArray(), charSet);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
package pr2.exceptions.ausnahmen_testen;
|
||||
|
||||
/**
|
||||
* Ungültiger Schlüssel.
|
||||
*/
|
||||
public class IllegalKeyException extends Exception {
|
||||
|
||||
/**
|
||||
* Legt eine neue Ausnahme an.
|
||||
*/
|
||||
public IllegalKeyException() {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* Legt eine neue Ausnahme an.
|
||||
*
|
||||
* @param message die Nachricht.
|
||||
*/
|
||||
public IllegalKeyException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see java.lang.Throwable#toString()
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return getMessage();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
package pr2.exceptions.ausnahmen_testen;
|
||||
|
||||
/**
|
||||
* Ungültige Nachricht.
|
||||
*/
|
||||
public class IllegalMessageException extends Exception {
|
||||
|
||||
/**
|
||||
* Legt eine neue Ausnahme an.
|
||||
*/
|
||||
public IllegalMessageException() {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* Legt eine neue Ausnahme an.
|
||||
*
|
||||
* @param message die Nachricht.
|
||||
*/
|
||||
public IllegalMessageException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see java.lang.Throwable#toString()
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return getMessage();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
package pr2.exceptions.ausnahmen_testen.test;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.exceptions.ausnahmen_testen.CrypterCaesar;
|
||||
import pr2.exceptions.ausnahmen_testen.IllegalKeyException;
|
||||
import pr2.exceptions.ausnahmen_testen.IllegalMessageException;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
|
||||
/**
|
||||
* Testklasse für die Verschlüsselung.
|
||||
*/
|
||||
public class CaesarTest {
|
||||
|
||||
// TODO: Tests für die Ausnahmen hinzufügen
|
||||
|
||||
/**
|
||||
* Testet die Verschlüsselung an sich.
|
||||
*
|
||||
* @throws IllegalMessageException Wird geworfen, wenn die
|
||||
* Nachricht ungültig ist.
|
||||
* @throws IllegalKeyException Wird geworfen, wenn der Schlüssel
|
||||
* ungültig ist.
|
||||
*/
|
||||
@Test
|
||||
void testCaesar()
|
||||
throws IllegalKeyException, IllegalMessageException {
|
||||
String klarText = "KATHARGOMUSSFALLEN";
|
||||
CrypterCaesar c = new CrypterCaesar();
|
||||
assertEquals(klarText, c.decrypt("C", c.encrypt("C", klarText)));
|
||||
assertEquals("FDHVDU", c.encrypt("C", "CAESAR"));
|
||||
assertEquals(klarText, c.encrypt("Z", klarText));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,49 @@
|
|||
package pr2.exceptions.eigene_ausnahme;
|
||||
|
||||
/**
|
||||
* Eine Sicherung im Stromkreis.
|
||||
*/
|
||||
public class Fuse {
|
||||
|
||||
/**
|
||||
* 16 Ampere-Sicherung.
|
||||
*/
|
||||
public static final int A16 = 16;
|
||||
|
||||
/**
|
||||
* 25 Ampere-Sicherung.
|
||||
*/
|
||||
public static final int A25 = 25;
|
||||
|
||||
/**
|
||||
* 32 Ampere-Sicherung.
|
||||
*/
|
||||
public static final int A32 = 32;
|
||||
|
||||
/**
|
||||
* Strom, bei dem die Sicherung auslöst.
|
||||
*/
|
||||
private final int tripCurrent;
|
||||
|
||||
/**
|
||||
* Legt eine neue Sicherung an.
|
||||
*
|
||||
* @param tripCurrent Strom, bei dem die Sicherung auslösen soll.
|
||||
* @throws IllegalCurrentException Ausnahme bei einem
|
||||
* ungültigen Spannungswert.
|
||||
*/
|
||||
public Fuse(int tripCurrent) {
|
||||
// TODO: IllegalCurrentException werfen, wenn der Strom ungültig ist
|
||||
this.tripCurrent = tripCurrent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Die Sicherung benutzen.
|
||||
*
|
||||
* @param current Strom, der durch die Sicherung fließt.
|
||||
* @throws FuseTrippedException wird geworfen, wenn der Srom zu groß wird.
|
||||
*/
|
||||
public void use(int current) {
|
||||
// TODO: FuseTrippedException werfen, wenn der Strom zu groß ist
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
package pr2.exceptions.eigene_ausnahme;
|
||||
|
||||
/**
|
||||
* Ausnahme, wenn die Sicherung auslöst.
|
||||
*/
|
||||
public class FuseTrippedException {
|
||||
// TODO: zu einer Ausnahme machen
|
||||
// TODO: Nennstrom und Auslösestrom speichern und in toString wieder ausgeben
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
package pr2.exceptions.eigene_ausnahme;
|
||||
|
||||
/**
|
||||
* Ausnahme, wenn eine Sicherung angelegt werden soll, die es nicht gibt.
|
||||
*/
|
||||
public class IllegalCurrentException {
|
||||
// TODO: zu einer Ausnahme machen
|
||||
// TODO: Nennstrom speichern, mit dem die Sicherung angelegt werden sollte.
|
||||
}
|
|
@ -0,0 +1,159 @@
|
|||
package pr2.exceptions.eigene_ausnahme.test;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.exceptions.eigene_ausnahme.Fuse;
|
||||
import pr2.exceptions.eigene_ausnahme.FuseTrippedException;
|
||||
import pr2.exceptions.eigene_ausnahme.IllegalCurrentException;
|
||||
|
||||
/**
|
||||
* Testet die Sicherung.
|
||||
*/
|
||||
public class FuseTest {
|
||||
|
||||
// TODO: Quellcode wieder einkommentieren
|
||||
//
|
||||
// /**
|
||||
// * Testet die Erzeugung von Sicherungen mit gültigen Werten.
|
||||
// *
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testCreationValid() throws IllegalCurrentException {
|
||||
// new Fuse(Fuse.A16);
|
||||
// new Fuse(Fuse.A25);
|
||||
// new Fuse(Fuse.A32);
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet die Erzeugung von Sicherungen mit ungültigen Werten.
|
||||
// *
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testCreationValid1() throws IllegalCurrentException {
|
||||
// Assertions.assertThrows(IllegalCurrentException.class, () -> {
|
||||
// new Fuse(15);
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet die Erzeugung von Sicherungen mit ungültigen Werten.
|
||||
// *
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testCreationValid2() throws IllegalCurrentException {
|
||||
// Assertions.assertThrows(IllegalCurrentException.class, () -> {
|
||||
// new Fuse(-1);
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet die Erzeugung von Sicherungen mit ungültigen Werten.
|
||||
// *
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testCreationValid3() throws IllegalCurrentException {
|
||||
// Assertions.assertThrows(IllegalCurrentException.class, () -> {
|
||||
// new Fuse(0);
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet die Erzeugung von Sicherungen mit ungültigen Werten.
|
||||
// *
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testCreationValid4() throws IllegalCurrentException {
|
||||
// Assertions.assertThrows(IllegalCurrentException.class, () -> {
|
||||
// new Fuse(Integer.MAX_VALUE);
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet die Erzeugung von Sicherungen mit ungültigen Werten.
|
||||
// *
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testCreationValid5() throws IllegalCurrentException {
|
||||
// Assertions.assertThrows(IllegalCurrentException.class, () -> {
|
||||
// new Fuse(Integer.MIN_VALUE);
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet das Auslösen der Sicherung.
|
||||
// *
|
||||
// * @throws FuseTrippedException Sicherung hat ausgelöst.
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testTripping1()
|
||||
// throws FuseTrippedException, IllegalCurrentException {
|
||||
//
|
||||
// Fuse f = new Fuse(Fuse.A16);
|
||||
// f.use(5);
|
||||
// f.use(16);
|
||||
// f.use(0);
|
||||
//
|
||||
// f = new Fuse(Fuse.A25);
|
||||
// f.use(5);
|
||||
// f.use(16);
|
||||
// f.use(25);
|
||||
//
|
||||
//
|
||||
// Assertions.assertThrows(FuseTrippedException.class, () -> {
|
||||
// Fuse f2 = new Fuse(Fuse.A16);
|
||||
// f2.use(0);
|
||||
// f2.use(16);
|
||||
// f2.use(25);
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet das Auslösen der Sicherung.
|
||||
// *
|
||||
// * @throws FuseTrippedException Sicherung hat ausgelöst.
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testTripping2()
|
||||
// throws FuseTrippedException, IllegalCurrentException {
|
||||
// Assertions.assertThrows(FuseTrippedException.class, () -> {
|
||||
// new Fuse(Fuse.A16).use(17);
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet das Auslösen der Sicherung.
|
||||
// *
|
||||
// * @throws FuseTrippedException Sicherung hat ausgelöst.
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testTripping3()
|
||||
// throws FuseTrippedException, IllegalCurrentException {
|
||||
//
|
||||
// Assertions.assertThrows(FuseTrippedException.class, () -> {
|
||||
// new Fuse(Fuse.A16).use(Integer.MAX_VALUE);
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * Testet das Auslösen der Sicherung.
|
||||
// *
|
||||
// * @throws FuseTrippedException Sicherung hat ausgelöst.
|
||||
// * @throws IllegalCurrentException ungültiger Wert für die Sicherung.
|
||||
// */
|
||||
// @Test
|
||||
// void testTripping4()
|
||||
// throws FuseTrippedException, IllegalCurrentException {
|
||||
// Assertions.assertThrows(FuseTrippedException.class, () -> {
|
||||
// new Fuse(Fuse.A32).use(40);
|
||||
// });
|
||||
// }
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package pr2.exceptions.fakultaet;
|
||||
|
||||
public class Fakultaet {
|
||||
|
||||
public int fact(int n) {
|
||||
return factIntern(n);
|
||||
}
|
||||
|
||||
private int factIntern(int n) {
|
||||
return 0;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
package pr2.exceptions.fakultaet;
|
||||
|
||||
public class FakultaetException {
|
||||
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
package pr2.exceptions.fakultaet.test;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.exceptions.fakultaet.Fakultaet;
|
||||
import pr2.exceptions.fakultaet.FakultaetException;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
public class FakultaetTest {
|
||||
|
||||
@Test
|
||||
void testFact() {
|
||||
Fakultaet f = new Fakultaet();
|
||||
assertEquals(1, f.fact(0));
|
||||
assertEquals(1, f.fact(1));
|
||||
assertEquals(2, f.fact(2));
|
||||
assertEquals(6, f.fact(3));
|
||||
assertEquals(24, f.fact(4));
|
||||
assertEquals(3628800, f.fact(10));
|
||||
}
|
||||
|
||||
@Test
|
||||
void testFactEx1() {
|
||||
// TODO: Auf Ausnahme testen
|
||||
}
|
||||
|
||||
@Test
|
||||
void testFactEx2() {
|
||||
// TODO: Auf Ausnahme testen
|
||||
}
|
||||
}
|
|
@ -0,0 +1,104 @@
|
|||
package pr2.exceptions.handle_or_declare;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileReader;
|
||||
import java.io.IOException;
|
||||
import java.util.Scanner;
|
||||
|
||||
/**
|
||||
* Anwendung, die die Buchstabenhäufigkeit in einem Text analysiert.
|
||||
*/
|
||||
public class Buchstabenzaehler {
|
||||
|
||||
/**
|
||||
* Einstiegspunkt in das Programm.
|
||||
*
|
||||
* @param args Kommandozeilenargumente
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
Buchstabenzaehler bs = new Buchstabenzaehler();
|
||||
// bs.run();
|
||||
}
|
||||
|
||||
/**
|
||||
* Startet den Buchstabenzaehler.
|
||||
*
|
||||
* @throws StatistikException Fehler bei der Berechnung der
|
||||
* Buchstabenhäufigkeit.
|
||||
*/
|
||||
private void run() {
|
||||
System.out.print("Bitte geben Sie den Dateinamen an: ");
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
String dateiname = scanner.nextLine();
|
||||
|
||||
int[] statistik;
|
||||
|
||||
// statistik = parseFile("assets/" + dateiname);
|
||||
// printStatistik(statistik);
|
||||
// scanner.close();
|
||||
}
|
||||
|
||||
/**
|
||||
* Druckt die Statistik aus.
|
||||
*
|
||||
* @param statistik Statistik
|
||||
* @throws StatistikException Fehler bei den Eingabedaten
|
||||
*/
|
||||
private void printStatistik(int[] statistik) {
|
||||
|
||||
// int summe = 0;
|
||||
//
|
||||
// for (int haeufigkeit : statistik) {
|
||||
// summe += haeufigkeit;
|
||||
// }
|
||||
//
|
||||
// double prozentSumme = 0.0;
|
||||
//
|
||||
// for (char c = 'a'; c <= 'z'; c++) {
|
||||
// int anzahl = statistik[c - 'a'];
|
||||
// double prozent = (double) anzahl / (double) summe * 100;
|
||||
// System.out.printf("%s: %.2f%% %n", "" + c, prozent);
|
||||
//
|
||||
// prozentSumme += prozent;
|
||||
// }
|
||||
//
|
||||
// if ((prozentSumme < 99.0) || (prozentSumme > 101.0)) {
|
||||
// throw new StatistikException(Double.toString(prozentSumme));
|
||||
// }
|
||||
//
|
||||
// System.out.printf("Summe: %.2f%% %n", prozentSumme);
|
||||
}
|
||||
|
||||
/**
|
||||
* Analysiert die übergebene Datei und berechnet die Buchstabenhäufigkeit.
|
||||
*
|
||||
* @param filename Dateiname
|
||||
* @return die Buchstabenhäufigkeit. Das 'a' ist das erste Element,
|
||||
* das 'b' das zweite etc.
|
||||
* @throws IOException generelles IO-Problem
|
||||
* @throws FileNotFoundException Datei gibt es nicht
|
||||
*/
|
||||
private int[] parseFile(String filename) {
|
||||
|
||||
int[] statistik = new int['z' - 'a' + 1];
|
||||
|
||||
// BufferedReader br = new BufferedReader(new FileReader(filename));
|
||||
//
|
||||
// String line;
|
||||
//
|
||||
// while ((line = br.readLine()) != null) {
|
||||
// char[] chars = line.toLowerCase().toCharArray();
|
||||
//
|
||||
// for (char c : chars) {
|
||||
// if (('a' <= c) && (c <= 'z')) {
|
||||
// statistik[c - 'a']++;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// br.close();
|
||||
|
||||
return statistik;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
package pr2.exceptions.handle_or_declare;
|
||||
|
||||
/**
|
||||
* Ausnahme, wenn die Statisitk nicht konsistent ist.
|
||||
*/
|
||||
public class StatistikException extends Exception {
|
||||
|
||||
/**
|
||||
* Legt eine neue Ausnahme an.
|
||||
*/
|
||||
public StatistikException() {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* Legt eine neue Ausnahme an.
|
||||
*
|
||||
* @param message die Nachricht.
|
||||
*/
|
||||
public StatistikException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see java.lang.Throwable#toString()
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return getMessage();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,55 @@
|
|||
package pr2.exceptions.try_catch;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
import java.util.Random;
|
||||
|
||||
/**
|
||||
* Ein simples Zahlenraten-Spiel.
|
||||
*/
|
||||
public final class Zahlenraten {
|
||||
|
||||
/**
|
||||
* Liest einen String von der Tastatur.
|
||||
*
|
||||
* @return der gelesene String
|
||||
* @throws IOException Probleme mit der Console
|
||||
*/
|
||||
private static String readNumber() throws IOException {
|
||||
BufferedReader br =
|
||||
new BufferedReader(new InputStreamReader(System.in));
|
||||
return br.readLine();
|
||||
}
|
||||
|
||||
/**
|
||||
* Hauptmethode.
|
||||
*
|
||||
* @param args Kommandozeilenargumente
|
||||
*/
|
||||
public static void main(String[] args)
|
||||
throws NumberFormatException, IOException {
|
||||
|
||||
// zu ratende Zahl bestimmen
|
||||
int zahl = new Random().nextInt(100) + 1;
|
||||
|
||||
int versuche = 0;
|
||||
|
||||
while (true) {
|
||||
System.out.print("Bitte geben Sie eine Zahl ein: ");
|
||||
int geraten = Integer.parseInt(readNumber());
|
||||
versuche++;
|
||||
|
||||
if (geraten < zahl) {
|
||||
System.out.println("Zu niedrig");
|
||||
}
|
||||
else if (geraten > zahl) {
|
||||
System.out.println("Zu hoch.");
|
||||
}
|
||||
else {
|
||||
System.out.printf("Richtig in %d Versuchen", versuche);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,87 @@
|
|||
package pr2.generics.einfach;
|
||||
|
||||
/**
|
||||
* Eine einfache, verkettete Liste.
|
||||
*
|
||||
* @param <T> Typ der gespeicherten Objekte
|
||||
*/
|
||||
/**
|
||||
* Eine einfache, verkettete Liste.
|
||||
*/
|
||||
public class Liste {
|
||||
|
||||
/** Referenz auf den ersten Knoten. */
|
||||
private ListeNode first;
|
||||
|
||||
/** Referenz auf den aktuellen Knoten. */
|
||||
private ListeNode current;
|
||||
|
||||
/**
|
||||
* Fügt ein neues Element an das Ende der Liste an.
|
||||
*
|
||||
* @param data das Element
|
||||
*/
|
||||
public void add(Object data) {
|
||||
|
||||
ListeNode nextNode = new ListeNode(data);
|
||||
|
||||
if (current == null) {
|
||||
// Liste komplett leer
|
||||
first = nextNode;
|
||||
current = nextNode;
|
||||
}
|
||||
else {
|
||||
current.next = nextNode;
|
||||
current = nextNode;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Liest das Element an der gegebenen Position.
|
||||
*
|
||||
* @param index Index, beginnend bei 0.
|
||||
* @return Das Element oder {@code null}, wenn es nicht gefunden wurde.
|
||||
*/
|
||||
public Object get(int index) {
|
||||
int count = 0;
|
||||
ListeNode node = first;
|
||||
|
||||
while ((node != null) && (count < index)) {
|
||||
node = node.next;
|
||||
count++;
|
||||
}
|
||||
|
||||
if ((count == index) && (node != null)) {
|
||||
return node.data;
|
||||
}
|
||||
else {
|
||||
// index does not exist
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Löscht die Liste und entfernt alle Elemente.
|
||||
*/
|
||||
public void clear() {
|
||||
first = null;
|
||||
current = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Liefert die Anzahl der Elemente der Liste zurück.
|
||||
*
|
||||
* @return die Anzahl der Elemente.
|
||||
*/
|
||||
public int size() {
|
||||
int count = 0;
|
||||
ListeNode node = first;
|
||||
|
||||
while (node != null) {
|
||||
node = node.next;
|
||||
count++;
|
||||
}
|
||||
|
||||
return count;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
package pr2.generics.einfach;
|
||||
|
||||
/**
|
||||
* Interne Repräsentation der Knoten in der Liste.
|
||||
*/
|
||||
class ListeNode {
|
||||
|
||||
/** Daten. */
|
||||
Object data;
|
||||
|
||||
/** Referenz auf den nächsten Knoten. */
|
||||
ListeNode next;
|
||||
|
||||
/**
|
||||
* Legt einen neuen Knoten an.
|
||||
*
|
||||
* @param data daten, die gespeichert werden
|
||||
*/
|
||||
ListeNode(Object data) {
|
||||
this.data = data;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,61 @@
|
|||
package pr2.generics.einfach.test;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pr2.generics.einfach.Liste;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
|
||||
/**
|
||||
* Test für die Liste.
|
||||
*/
|
||||
public class ListeTest {
|
||||
|
||||
/**
|
||||
* Testet das Hinzufügen und Löschen der Liste.
|
||||
*/
|
||||
@Test
|
||||
void testAddAndClear() {
|
||||
Liste l = new Liste();
|
||||
|
||||
assertEquals(0, l.size());
|
||||
|
||||
l.add("Hallo");
|
||||
assertEquals(1, l.size());
|
||||
l.add("Hugo");
|
||||
assertEquals(2, l.size());
|
||||
l.add("Peter");
|
||||
l.add("Alfons");
|
||||
assertEquals(4, l.size());
|
||||
|
||||
l.clear();
|
||||
assertEquals(0, l.size());
|
||||
}
|
||||
|
||||
/**
|
||||
* Testet das Lesen von Elementen.
|
||||
*/
|
||||
@Test
|
||||
void testGet() {
|
||||
Liste l = new Liste();
|
||||
l.add("Hallo");
|
||||
l.add("Hugo");
|
||||
l.add("Peter");
|
||||
l.add("Alfons");
|
||||
|
||||
assertNull(l.get(-1));
|
||||
assertNull(l.get(4));
|
||||
assertEquals("Hallo", l.get(0));
|
||||
assertEquals("Hugo", l.get(1));
|
||||
assertEquals("Peter", l.get(2));
|
||||
assertEquals("Alfons", l.get(3));
|
||||
|
||||
assertEquals(4, l.size());
|
||||
l.clear();
|
||||
assertEquals(0, l.size());
|
||||
assertNull(l.get(0));
|
||||
assertNull(l.get(1));
|
||||
assertNull(l.get(2));
|
||||
assertNull(l.get(3));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
package pr2.generics.number_pair;
|
||||
|
||||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
// TODO: Einkommentieren
|
||||
// var note = new Pair<String, Integer>("Peter", 1);
|
||||
// var name = new Pair<String, String>("Peter", "Meier");
|
||||
// var tel = new NumberPair<Integer>(621, 292122);
|
||||
//
|
||||
// System.out.printf("%s:%d\n", note.getFirst(), note.getSecond());
|
||||
//
|
||||
// System.out.printf("%s %s\n", name.getFirst(), name.getSecond());
|
||||
//
|
||||
// System.out.printf("%d %d\n", tel.getFirst(), tel.getSecond());
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
package pr2.generics.number_pair;
|
||||
|
||||
public class NumberPair {
|
||||
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
package pr2.generics.number_pair;
|
||||
|
||||
public class Pair<T, V> {
|
||||
|
||||
private final T first;
|
||||
private final V second;
|
||||
|
||||
public Pair(T first, V second) {
|
||||
this.first = first;
|
||||
this.second = second;
|
||||
}
|
||||
|
||||
public T getFirst() {
|
||||
return first;
|
||||
}
|
||||
|
||||
public V getSecond() {
|
||||
return second;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package pr2.generics.pair;
|
||||
|
||||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
// TODO: Einkommentieren
|
||||
// var note1 = new Pair<String, Integer>("Peter", 1);
|
||||
// var note2 = new Pair<String, Integer>("Frank", 3);
|
||||
// var note3 = new Pair<String, Integer>("Sabine", 1);
|
||||
//
|
||||
// var name = new Pair<String, String>("Peter", "Meier");
|
||||
//
|
||||
// System.out.printf("%s:%d\n", note1.getFirst(), note1.getSecond());
|
||||
// System.out.printf("%s:%d\n", note2.getFirst(), note1.getSecond());
|
||||
// System.out.printf("%s:%d\n", note3.getFirst(), note1.getSecond());
|
||||
//
|
||||
// System.out.printf("%s %s\n", name.getFirst(), name.getSecond());
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
package pr2.generics.pair;
|
||||
|
||||
public class Pair {
|
||||
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
package pr2.generics.pairlist;
|
||||
|
||||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
// TODO: Einkommentieren
|
||||
// var note1 = new Pair<String, Integer>("Peter", 1);
|
||||
// var note2 = new Pair<String, Integer>("Frank", 3);
|
||||
// var note3 = new Pair<String, Integer>("Sabine", 1);
|
||||
//
|
||||
// var pl = new PairList<String, Integer>(3);
|
||||
// pl.add(note1);
|
||||
// pl.add(note2);
|
||||
// pl.add(note3);
|
||||
//
|
||||
// for (int i = 0; i < 3; i++) {
|
||||
// System.out.printf("%s:%d\n", pl.get(i).getFirst(),
|
||||
// pl.get(i).getSecond());
|
||||
// }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
package pr2.generics.pairlist;
|
||||
|
||||
public class Pair<T, V> {
|
||||
|
||||
private final T first;
|
||||
private final V second;
|
||||
|
||||
public Pair(T first, V second) {
|
||||
this.first = first;
|
||||
this.second = second;
|
||||
}
|
||||
|
||||
public T getFirst() {
|
||||
return first;
|
||||
}
|
||||
|
||||
public V getSecond() {
|
||||
return second;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
package pr2.generics.pairlist;
|
||||
|
||||
public class PairList {
|
||||
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
package pr2.generics.printer;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
public class CollectionPrinter {
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
package pr2.generics.printer;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
// TODO: Einkommentieren
|
||||
// List<String> ls = new ArrayList<>();
|
||||
// List<Integer> li = new ArrayList<>();
|
||||
// ls.add("PR2");
|
||||
// ls.add("ist");
|
||||
// ls.add("cool");
|
||||
// Set<String> s = new HashSet<>(ls);
|
||||
// li.add(23);
|
||||
// li.add(42);
|
||||
//
|
||||
// CollectionPrinter.print(ls);
|
||||
// CollectionPrinter.print(li);
|
||||
// CollectionPrinter.print(s);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
package pr2.generics.queue;
|
||||
|
||||
public class Queue {
|
||||
|
||||
// TODO: Klasse gemäß der Aufgabenstellung implementieren
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
package pr2.generics.same_pair;
|
||||
|
||||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
// TODO: Einkommentieren
|
||||
// var note = new Pair<String, Integer>("Peter", 1);
|
||||
// var name = new SamePair<String>("Peter", "Meier");
|
||||
// var tel = new SamePair<Integer>(621, 2009992);
|
||||
//
|
||||
// System.out.printf("%s:%d\n", note.getFirst(), note.getSecond());
|
||||
//
|
||||
// System.out.printf("%s %s\n", name.getFirst(), name.getSecond());
|
||||
//
|
||||
// System.out.printf("%d %d\n", tel.getFirst(), tel.getSecond());
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
package pr2.generics.same_pair;
|
||||
|
||||
public class Pair<T, V> {
|
||||
|
||||
private final T first;
|
||||
private final V second;
|
||||
|
||||
public Pair(T first, V second) {
|
||||
this.first = first;
|
||||
this.second = second;
|
||||
}
|
||||
|
||||
public T getFirst() {
|
||||
return first;
|
||||
}
|
||||
|
||||
public V getSecond() {
|
||||
return second;
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue