| Programs Assigments | Program links |
|---|---|
| Final!! | Final |
| Assignment 4 | Program 4 |
| Assignment 5 | Program 5 |
| Assignment 6 | Program 6 |
| Assignment 7 | Program 7 |
| Assignment 8 | Program 8 |
| Assignment 9 | Program 9 |
| Assignment 10 | Program 10 |
| Assignment 11 | Program 11 |
| Assignment 12 | Program 12 |
| Assignment 13 | Program 13 |
| Assignment 14 | Program 14 |
| Assignment 15 | Program 15 |
| Assignment 16 | Program 16 |
| Assignment 17 | Program 17 |
| Assignment 18 | Program 18 |
| Assignment 19 | Program 19 |
| Assignment 20 | Program 20 |
| Assignment 21 | Program 21 |
| Assignment 22 | Program 22 |
| Assignment 23 | Program 23 |
| Assignment 24 | Program 23 |
| Assignment 25 | Program 25 |
| Assignment 26 | Program 26 |
| Assignment 27 | Program 27 |
| Assignment 28 | Program 28 |
| Assignment 29 | Program 29 |
| Assignment 30 | Program 30 |
| Assignment 31 | Program 31 |
| Assignment 32 | Program 32 |
| Assignment 33 | Program 33 |
| Assignment 34 | Program 34 |
| Assignment 35 | Program 35 |
| Assignment 36 | Program 36 |
| Assignment 37 | Program 37 |
| Assignment 38 | Program 38 |
| Assignment 39 | Program 39 |
| Assignment 40 | Program 40 |
| Assignment 41 | Program 41 |
| Assignment 42 | Program 42 |
| Assignment 43 | Program 43 |
| Assignment 44 | Program 44 |
| Assignment 45 | Program 45 |
| Assignment 46 | Program 46 |
| Assignment 47 | Program 47 |
| Assignment 48 | Program 48 |
| Assignment 49 | Program 49 |
| Assignment 50 | Program 50 |
| Assignment 51 | Program 51 |
| Assignment 52 | Program 52 |
| Assignment 53 | Program 53 |
| Assignment 54 | Program 54 |
| Assignment 55 | Program 55 |
| Assignment 56 | Program 56 |
| Assignment 57 | Program 57 |
| Assignment 58 | Program 58 |
| Assignment 59 | Program 59 |
| Assignment 60 | Program 60 |
| Assignment 61 | Program 61 |
| Assignment 62 | Program 62 |
| Assignment 63 | Program 63 |
| Assignment 64 | Program 64 |
| Assignment 65 | Program 65 |
| Assignment 66 | Program 66 |
| Assignment 67 | Program 67 |
| Assignment 68 | Program 68 |
| Assignment 69 | Program 69 |
| Assignment 70 | Program 70 |
| Assignment 71 | Program 71 |
| Assignment 72 | Program 72 |
| Assignment 73 | Program 73 |
| Assignment 74 | Program 74 |
| Assignment 75 | Program 75 |
| Assignment 76 | Program 76 |
| Assignment 77 | Program 77 |
| Assignment 78 | Program 78 |
| Assignment 79 | Program 79 |
| Assignment 80 | Program 80 |
| Assignment 81 | Program 81 |
| Assignment 82 | Program 82 |
| Assignment 83 | Program 83 |
| Assignment 84 | Program 84 |
| Assignment 85 | Program 85 |
| Assignment 86 | Program 86 |
| Assignment 88 | Program 88 |
| Assignment 89 | Program 89 |
| Assignment 90 | Program 90 |
| Assignment 91 | Program 91 |
| Assignment 92 | Program 92 |
| Assignment 93 | Program 93 |
| Assignment 94 | Program 94 |
| Assignment 95 | Program 95 |
| Assignment 96 | Program 96 |
| Assignment 97 | Program 97 |
| Assignment 98 | Program 98 |
| Assignment 99 | Program 99 |
| Assignment 100 | Program 100 |
| Assignment 101 | Program 101 |
| Assignment 102 | Program 102 |
| Assignment 103 | Program 103 |
| Assignment 104 | Program 104 |
| Assignment 105 | Program 105 |
| Assignment 106 | Program 106 |
| Assignment 107 | Program 107 |
| Assignment 108 | Program 108 |
| Assignment 109 | Program 109 |
| Assignment 110 | Program 110 |
| Assignment 111 | Program 111 |
| Assignment 112 | Program 112 |
| Assignment 113 | Program 113 |
| Assignment 114 | Program 114 |
| Assignment 115 | Program 115 |
| Assignment 116 | Program 116 |
| Assignment 117 | Program 117 |
| Assignment 118 | Program 118 |
| Assignment 119 | Program 119 |
| Assignment 120 | Program 120 |
| Assignment 121 | Program 121 |
| Assignment 122 | Program 122 |
| Assignment 123 | Program 123 |
| Assignment 124 | Program 124 |
| Assignment 125 | Program 125 |
| Assignment 126 | Program 126 |
| Assignment 127 | Program 127 |
| Assignment 128 | Program 128 |
| Assignment 129 | Program 129 |
| Side Projects | Neural Network |
| Side Projects | Neural Network Base |
| Side Projects | Recurrent Neural Network |
| Side Projects | Pokemon |
import java.util.Scanner;
import java.util.Random;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Timer;
import java.util.TimerTask;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.Color;
public class SideScroller extends JPanel {
Player p;
Shape ground;
int timeInterval = 10;
int timePerSec = Math.round(1000 / timeInterval);
public static void main(String[] args){
SideScroller side = new SideScroller();
side.setLayout(new BorderLayout());
side.setBackground(Color.BLUE);
JFrame window = new JFrame("Window");
window.setContentPane(side);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setSize(640, 480);
window.setVisible(true);
side.setFocusable(true);
side.requestFocusInWindow();
if(side.hasFocus() == true){
System.out.println("Has focus");
}
else{
System.out.println("Didn't get focus");
}
}
public SideScroller(){
p = new Player(100, 300);
ground = new Rect(0, 400, 640, 10, Color.RED);
addKeyListener(new keyListener());
addMouseListener(new mouseListener());
Timer timer = new Timer();
timer.schedule(new Update(), 0, timeInterval);
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.fillRect(p.getX(), p.getY(), 10, 20);
g.fillRect(((Rect)ground).getX(), ((Rect)ground).getY(), ((Rect)ground).getWidth(), ((Rect)ground).getHeight());
}
class Update extends TimerTask{
int time;
public void run(){
if(p.isJumping() == true){
time++;
p.calculateNewPosY(time, 7.0, timePerSec);
repaint();
}
else{
time = 0;
}
p.getIsTouching(ground);
}
}
class keyListener implements KeyListener{
public void keyPressed(KeyEvent e){
System.out.println("Key Pressed");
int key = e.getKeyCode();
if(key == KeyEvent.VK_SPACE){
if(p.isJumping() == false){
p.jump();
System.out.println("Jumped");
}
}
}
public void keyReleased(KeyEvent e){
}
public void keyTyped(KeyEvent e){
}
}
class mouseListener implements MouseListener{
public void mouseClicked(MouseEvent e){
}
public void mouseEntered(MouseEvent e){
}
public void mouseExited(MouseEvent e){
}
public void mousePressed(MouseEvent e){
}
public void mouseReleased(MouseEvent e){
}
}
}
class Player extends Object{
double velocity;
boolean isJumping;
Shape shape;
int orgX;
int orgY;
double scale = 30;
public Player(int x, int y){
this.x = x;
this.y = y;
orgX = x;
orgY = y;
isJumping = false;
shape = (Rect) new Rect(x, y, 10, 20, Color.RED);
}
public void calculateNewPosY(double time, double initialVelocity, double tPS){
double g = -4.9 * scale;
double t = time / tPS;
double vI = initialVelocity * scale;
double newY = g * (t*t) + vI * (t);
if(t == 0){
orgY = this.y;
}
/*
int y1 = y;
int y2 = y - (int)Math.round(newY);
if(y2 - y1 > 100){
if(g * t + vI < 0){
y += 100;
}
else{
y -= 100;
}
}
else{
this.y = (int)(orgY - Math.round(newY));
}
*/
this.y = (int)(orgY - Math.floor(newY));
System.out.println(y + " " + t);
}
public void calculateNewPosX(double time, double initialVelocity, double tPS){
}
public void jump(){
setIsJumping(true);
}
public boolean isJumping(){
return isJumping;
}
public int getX(){
return x;
}
public int getY(){
return y;
}
public double getVelocity(){
return velocity;
}
public Shape getShape(){
return shape;
}
public double getIsTouching(Shape s){
if(s.getType().equals("Rect")){
for(int i = 0; i < 4; i++){
double oSlope;
double pSlope;
Rect o = (Rect)s;
Rect p = (Rect)getShape();
if(o.getPointX(i + 1) - o.getPointX(i) != 0){
oSlope = (o.getPointY(i + 1) - o.getPointY(i)) / (o.getPointX(i + 1) - o.getPointX(i));
}
else{
oSlope = .000000000000000000001;
}
if(p.getPointX(i + 1) - p.getPointX(i) != 0){
pSlope = (p.getPointY(i + 1) - p.getPointY(i)) / (p.getPointX(i + 1) - p.getPointX(i));
}
else{
pSlope = .000000000000000000001;
}
if(oSlope != pSlope){
int oY = o.getPointY(i);
int oX = o.getPointX(i);
int oB = (int)Math.round(oY / (oX * oSlope));
int pB = (int)Math.round(y / (x * pSlope));
int connectPoint = (int)Math.round((oB - pB) / (pSlope - oSlope));
System.out.println(connectPoint);
if(connectPoint > this.getX() && connectPoint < this.getX() + p.getWidth()){
}
}
}
}
return 1;
}
public void setX(int x){
this.x = x;
}
public void setY(int y){
this.y = y;
}
public void setVelocity(double velocity){
this.velocity = velocity;
}
public void setIsJumping(boolean isJumping){
this.isJumping = isJumping;
}
}
class Shape{
String type;
int x;
int y;
Color color;
public Shape(){
}
public int getX(){
return x;
}
public int getY(){
return y;
}
public Color getColor(){
return color;
}
public String getType(){
return type;
}
public void setX(int x){
this.x = x;
}
public void setY(int y){
this.y = y;
}
public void setColor(Color color){
this.color = color;
}
}
class Rect extends Shape{
int width;
int height;
int[] pointX;
int[] pointY;
public Rect(int x, int y, int width, int height, Color color){
this.x = x;
this.y = y;
this.color = color;
this.type = "Rect";
this.width = width;
this.height = height;
pointX = new int[4];
pointY = new int[4];
for(int i = 0; i < 2; i++){
pointX[i] = i * this.width + x;
pointY[i] = y;
}
for(int i = 0; i < 2; i++){
pointX[i] = Math.abs(i - 1) * this.width + x;
pointY[i] = this.height + y;
}
}
public int getWidth(){
return width;
}
public int getHeight(){
return height;
}
public int getPointX(int pointNum){
if(pointNum == 4){
return pointX[0];
}
else{
return pointX[pointNum];
}
}
public int getPointY(int pointNum){
if(pointNum == 4){
return pointY[0];
}
else{
return pointY[pointNum];
}
}
}
class Cirlce extends Shape{
int radius;
public Cirlce(int x, int y, int radius, Color color){
this.x = x;
this.y = y;
this.color = color;
this.type = "Circle";
}
}