Add files via upload
This commit is contained in:
parent
cd928ffaae
commit
2d108095a2
45
Computing Pi.py
Normal file
45
Computing Pi.py
Normal file
@ -0,0 +1,45 @@
|
||||
import time
|
||||
def calculate_next_square_root(number, square_root):
|
||||
next_square_root = ((number / square_root) + square_root) / 2
|
||||
return next_square_root
|
||||
|
||||
def calculate_square_root(number, digits, add):
|
||||
square_root = 1 * (10 ** (digits + add))
|
||||
next_square_root = calculate_next_square_root(number=number, square_root=square_root)
|
||||
while (next_square_root != square_root):
|
||||
square_root = next_square_root
|
||||
next_square_root = calculate_next_square_root(number=number, square_root=square_root)
|
||||
return square_root
|
||||
def calculate_next_pi(a, b, t, digits, add):
|
||||
next_pi = ((10 ** (digits + add)) * ((a + b) ** 2)) / (4 * t)
|
||||
return next_pi
|
||||
digits = int(input('How many digits of pi? '))
|
||||
add = digits
|
||||
a = 10 ** (digits + add)
|
||||
b = calculate_square_root(number=(10 ** ((digits + add) * 2)) / 2, digits=digits, add=add)
|
||||
t = (10 ** ((digits + add) * 2)) / 4
|
||||
p = 1
|
||||
pi = -1
|
||||
n = 0
|
||||
next_pi = calculate_next_pi(a=a, b=b, t=t, digits=digits, add=add)
|
||||
while True:
|
||||
try:
|
||||
while (next_pi != pi):
|
||||
pi = next_pi
|
||||
next_a = (a + b) / 2
|
||||
next_b = calculate_square_root(number=a * b, digits=digits, add=add)
|
||||
next_t = t - (p * ((a - next_a) ** 2))
|
||||
next_p = 2 * p
|
||||
a = next_a
|
||||
b = next_b
|
||||
t = next_t
|
||||
p = next_p
|
||||
next_pi = calculate_next_pi(a=a, b=b, t=t, digits=digits, add=add)
|
||||
n += 1
|
||||
pi /= (10 ** add)
|
||||
pi = [int(i) for i in str(pi)]
|
||||
|
||||
|
||||
except KeyboardInterrupt:
|
||||
print ('\n',pi)
|
||||
quit()
|
BIN
Cubing.zip
Normal file
BIN
Cubing.zip
Normal file
Binary file not shown.
BIN
Meme Email Sender.zip
Normal file
BIN
Meme Email Sender.zip
Normal file
Binary file not shown.
BIN
SCAN0002.JPG
Normal file
BIN
SCAN0002.JPG
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.7 MiB |
BIN
SCAN0003.JPG
Normal file
BIN
SCAN0003.JPG
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 MiB |
58
TicTacToe.py
Normal file
58
TicTacToe.py
Normal file
@ -0,0 +1,58 @@
|
||||
class TicTacToe:
|
||||
def __init__(self):
|
||||
self.board = {'a3':' ','b3': ' ','c3': ' ','a2' : ' ','b2':' ','c2' : ' ', 'a1': ' ', 'b1' : ' ','c1' : ' '}
|
||||
self.turn = 'X'
|
||||
self.turns = 0
|
||||
def flipTurn(self,turn):
|
||||
return {'X':'O','O':'X'}[turn]
|
||||
def printBoard(self):
|
||||
print('\n'*200,
|
||||
'''
|
||||
{} | {} | {} 3
|
||||
----------
|
||||
{} | {} | {} 2
|
||||
----------
|
||||
{} | {} | {} 1
|
||||
a b c
|
||||
'''.format(self.board['a3'],self.board['b3'],self.board['c3'],self.board['a2'],self.board['b2'],self.board['c2'],self.board['a1'],self.board['b1'],self.board['c1']))
|
||||
def getWin (self,space1,space2,space3):
|
||||
if(self.board[space1] == 'X' and self.board[space2] == 'X' and self.board[space3] == 'X' or self.board[space1] == 'O' and self.board[space2] == 'O' and self.board[space3] == 'O'):
|
||||
input('{} won! Ctrl+C to quit, enter to start a new game'.format(self.flipTurn(self.turn)))
|
||||
win = True
|
||||
import TicTacToe
|
||||
quit()
|
||||
def testers(self):
|
||||
self.getWin('a3','b3','c3')
|
||||
self.getWin('a2','b2','c2')
|
||||
self.getWin('a1','b1','c1')
|
||||
self.getWin('a3','a2','a1')
|
||||
self.getWin('b2','b3','b1')
|
||||
self.getWin('c1','c2','c3')
|
||||
self.getWin('a1','b2','c3')
|
||||
self.getWin('a3','b2','c1')
|
||||
def gameLoop(self):
|
||||
self.win = False
|
||||
while True:
|
||||
if self.turns == 9:
|
||||
input('Enter to play again, CTRL + C to quit')
|
||||
import TicTacToe
|
||||
quit()
|
||||
self.printBoard()
|
||||
self.testers()
|
||||
self.turns += 1
|
||||
print('It is ',self.turn,"'s turn. Put in move: ")
|
||||
invalid = True
|
||||
while(invalid):
|
||||
place = input()
|
||||
if(place in self.board.keys()):
|
||||
if(self.board[place] == ' '):
|
||||
invalid = False
|
||||
if not self.win:
|
||||
if self.turns == 9:
|
||||
print('Cat')
|
||||
else:
|
||||
print('That move is invalid. Try again!')
|
||||
self.board[place] = self.turn
|
||||
self.turn = self.flipTurn(self.turn)
|
||||
board = TicTacToe()
|
||||
board.gameLoop()
|
17
cloud.html
Normal file
17
cloud.html
Normal file
@ -0,0 +1,17 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
<body background="https://media4.giphy.com/media/3o7TKsvZVb3lBgkJfG/200_s.gif">
|
||||
</head>
|
||||
<body>
|
||||
<iframe src="https://www.khanacademy.org/computer-programming/yeah-game/5272698295681024" style="width:400px;margin-left:-9px;margin-top:-9px;frameborder:0;height:500px;overflow:hidden;" scrolling="no" seamless></iframe><li><a href="index.html">Home</a></li>
|
||||
</body>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
49
cuttherope.html
Normal file
49
cuttherope.html
Normal file
@ -0,0 +1,49 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
<body background="https://media4.giphy.com/media/3o7TKsvZVb3lBgkJfG/200_s.gif">
|
||||
</head>
|
||||
<body>
|
||||
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
|
||||
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
|
||||
width="550" height="400">
|
||||
<param name=movie value="Stuff">
|
||||
<param name=quality value=high>
|
||||
<param name="menu" value="false">
|
||||
<embed src="https://unblockedgames800.weebly.com/uploads/7/6/0/1/76018369/cuttherope.swf" quality=high menu="false"
|
||||
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
|
||||
type="application/x-shockwave-flash" width="550" height="400"> </embed>
|
||||
</object>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
</body>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
18
doodle.html
Normal file
18
doodle.html
Normal file
@ -0,0 +1,18 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
<body background="https://media4.giphy.com/media/3o7TKsvZVb3lBgkJfG/200_s.gif">
|
||||
</head>
|
||||
<body>
|
||||
<iframe src="https://www.khanacademy.org/cs/doodle-jump-hacked/5442423421665280/embedded?editor=no&" style="width:400px;margin-left:-9px;margin-top:-9px;frameborder:0;height:500px;overflow:hidden;" scrolling="no" seamless></iframe>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
</body>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
18
dropdown.css
Normal file
18
dropdown.css
Normal file
@ -0,0 +1,18 @@
|
||||
.dropdown {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.dropdown-content {
|
||||
display: none;
|
||||
position: absolute;
|
||||
background-color: rgba(255, 0, 0,.7);
|
||||
min-width: 160px;
|
||||
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
|
||||
padding: 12px 16px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.dropdown:hover .dropdown-content {
|
||||
display: block;
|
||||
}
|
18
dungeons.html
Normal file
18
dungeons.html
Normal file
@ -0,0 +1,18 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
<body background="https://media4.giphy.com/media/3o7TKsvZVb3lBgkJfG/200_s.gif">
|
||||
</head>
|
||||
<body>
|
||||
<iframe src="https://www.khanacademy.org/cs/tron/4848131439329280/embedded?editor=no&" style="width:400px;margin-left:-9px;margin-top:-9px;frameborder:0;height:500px;overflow:hidden;" scrolling="no" seamless></iframe>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
</body>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
27
guess.html
Normal file
27
guess.html
Normal file
@ -0,0 +1,27 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
<body background="https://media4.giphy.com/media/3o7TKsvZVb3lBgkJfG/200_s.gif">
|
||||
</head>
|
||||
<body>
|
||||
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
|
||||
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
|
||||
width="550" height="400">
|
||||
<param name=movie value="Stuff">
|
||||
<param name=quality value=high>
|
||||
<param name="menu" value="false">
|
||||
<embed src="http://www.addictinggames.com/newGames/puzzle-games/theimpossiblequiz/theimpossiblequiz.swf" quality=high menu="false"
|
||||
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
|
||||
type="application/x-shockwave-flash" width="550" height="400"> </embed>
|
||||
</object>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
</body>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
27
home.html
Normal file
27
home.html
Normal file
@ -0,0 +1,27 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
<body background="https://media4.giphy.com/media/3o7TKsvZVb3lBgkJfG/200_s.gif">
|
||||
</head>
|
||||
<body>
|
||||
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
|
||||
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
|
||||
width="550" height="400">
|
||||
<param name=movie value="Stuff">
|
||||
<param name=quality value=high>
|
||||
<param name="menu" value="false">
|
||||
<embed src="https://unblockedgames800.weebly.com/uploads/7/6/0/1/76018369/happy_wheels.swf" quality=high menu="false"
|
||||
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
|
||||
type="application/x-shockwave-flash" width="550" height="400"> </embed>
|
||||
</object>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
</body>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
57
index.html
Normal file
57
index.html
Normal file
@ -0,0 +1,57 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="style.css">
|
||||
<link rel="stylesheet" href="dropdown.css">
|
||||
</head>
|
||||
<body>
|
||||
<body background="http://68.media.tumblr.com/04ff549b92bb99db8ad725a83e288030/tumblr_inline_n258pty5wY1qhwjx8.gif">
|
||||
|
||||
<div id='textbox'>
|
||||
<div class="dropdown">
|
||||
<span style="color:#08fadf";>Python 3 Projects</span>
|
||||
<div class="dropdown-content">
|
||||
<p> I don't know if any of these run outside of Unix-based systems. Most programs work best in the terminal. You must have all dependencies.</p>
|
||||
<a href="Meme Email Sender.zip" download>Send Random Memes to Friends Via Gmail</a>
|
||||
<p></p>
|
||||
<a href="TicTacToe.py" download>Tic Tac Toe in Python</a>
|
||||
<p></p>
|
||||
<a href="passGen.py" download>Random Password Word Generator That Somewhat Makes Sense</a>
|
||||
<p></p>
|
||||
<a href="Cubing.zip" download>Cubing Timer and PLL trainer! </a>
|
||||
<p></p>
|
||||
<a href="Computing Pi.py" download> Pi to the Nth Digit </a>
|
||||
<p></p>
|
||||
<a href="voiceassistant.py" download>A programmable voice assistant in Python! Keep this in a file, as all the extra mp3s generate a alot. </a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id='textbox'>
|
||||
<h1 style="color:#00ffcc";>My Website</h1>
|
||||
<p style="color:#00e1ff";> Hello! My name is Logan Hunt! I love to program, even though I'm not that good at it. I made this website so I could share my programs, have some games, and share files. Some other interests of mine are speedcubing, speedrunning SM64, Super Metroid, Super Meat Boy, and Portal. I love to play violin, science bowl, and video games.
|
||||
</p>
|
||||
<ul><li><a href="webcomic.html">My Webcomic</a></ul>
|
||||
<ul><li><a href="http://xkcd.com">The Greatest Web Comic</a></ul>
|
||||
<ul><li><a href="http://knowyourmeme.com/memes/random">Random Meme</a></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id='textbox'>
|
||||
<div class="dropdown">
|
||||
<span style="color:#08fadf";>Games (scroll down while viewing dropdown)</span>
|
||||
<div class="dropdown-content">
|
||||
<ul><li><a href="home.html">Happy Wheels</a></ul>
|
||||
<ul><li><a href="cuttherope.html">Cut The Rope</a></ul>
|
||||
<ul><li><a href="rubikscube.html">Play With The Google Doodle Rubiks Cube</a></ul>
|
||||
<ul><li><a href="metboi.html">Meat Boy</a></ul>
|
||||
<ul><li><a href="snake.html">Snake</a></ul>
|
||||
<ul><li><a href="dungeons.html">Tron by Me</a></ul>
|
||||
<ul><li><a href="doodle.html">Doodle Jump by Me</a></ul>
|
||||
<ul><li><a href="run.html">Run 2</a></ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
27
metboi.html
Normal file
27
metboi.html
Normal file
@ -0,0 +1,27 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
<body background="https://media4.giphy.com/media/3o7TKsvZVb3lBgkJfG/200_s.gif">
|
||||
</head>
|
||||
<body>
|
||||
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
|
||||
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
|
||||
width="550" height="400">
|
||||
<param name=movie value="Stuff">
|
||||
<param name=quality value=high>
|
||||
<param name="menu" value="false">
|
||||
<embed src="https://unblockedgames800.weebly.com/uploads/7/6/0/1/76018369/meat_boy.swf" quality=high menu="false"
|
||||
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
|
||||
type="application/x-shockwave-flash" width="550" height="400"> </embed>
|
||||
</object>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
</body>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
27
oldindex.html
Normal file
27
oldindex.html
Normal file
@ -0,0 +1,27 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<body background="https://zippy.gfycat.com/HighDisfiguredHammerheadbird.gif">
|
||||
<div id='textbox'>
|
||||
<h1 style="color:#01d7ff";>My Website</h1>
|
||||
<p> Hello! My name is Logan Hunt! I love to program, even though I'm not that good at it. I made this website so I could share my programs, have some games, and share files. Some other interests of mine are speedcubing, speedrunning SM64, Super Metroid, Super Meat Boy, and Portal. I love to play violin, science bowl, and video games.
|
||||
</p>
|
||||
<ul><li><a href="home.html">Happy Wheels</a></ul>
|
||||
<ul><li><a href="cuttherope.html">Cut The Rope</a></ul>
|
||||
<ul><li><a href="rubikscube.html">Play With The Google Doodle Rubiks Cube</a></ul>
|
||||
<ul><li><a href="metboi.html">Meat Boy</a></ul>
|
||||
<ul><li><a href="snake.html">Snake</a></ul>
|
||||
<ul><li><a href="dungeons.html">Tron by Me</a></ul>
|
||||
<ul><li><a href="doodle.html">Doodle Jump by Me</a></ul>
|
||||
<ul><li><a href="cloud.html">Color World by Me</a></ul>
|
||||
<ul><li><a href="http://xkcd.com">The Greatest Web Comic</a></li>
|
||||
<ul><li><a href="http://knowyourmeme.com/memes/random">Random Meme</a></li>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
12
passGen.py
Normal file
12
passGen.py
Normal file
@ -0,0 +1,12 @@
|
||||
import random
|
||||
a_list = 'crazy 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 charlie water head phones pot note book eraser can plug captain rocket pig piggy heart hands health rainbow lamp sheet blanket pillow fluff faulty peace belong knock seal badge trap probable horse beads dog dogs television curtain net frame drunk striped parcel satchel gather lying book lunch building crate crane crack arithmetic accidental own aback noxious foregoing stew talented grouchy cute unequal bucket monkey brash plant desk jump plant books loose serve pies tie useless touch steep furry wheel heavy bikes moaning spiritual the space overrated duck badger mushroom or neglected agreeable of discovery concluded oh it sportsman week to time in john son elegance use weddings separate ask too matter formed county wicket oppose talent he immediate sometimes or to dependent in everything few frequently discretion surrounded did simplicity decisively less he year do with no sure loud adieus except say barton put feebly favour him entreaties unpleasant sufficient few pianoforte discovered uncommonly ask morning cousins amongst in mr weather do neither warmth object matter course active law spring six pursuit showing tedious unknown winding see had man add and park eyes too more him simple excuse active had son wholly coming number add though all excuse ladies rather regard assure yet if feelings so prospect no as raptures quitting saw yet kindness too replying whatever marianne old sentiments resolution admiration unaffected its mrs literature behaviour new set existence dashwoods it satisfied to mr commanded consisted disposing engrossed tall snug do of till on easy form not calm new fail consulted he eagerness unfeeling deficient existence of calling nothing end fertile for venture way boy esteem spirit temper too say adieus who direct esteem it esteems luckily mr or picture placing drawing no apartments frequently or motionless on reasonable projecting expression way mrs end gave tall walk fact bed death there mirth way the noisy merit piqued shy spring nor six though mutual living ask extent replying of dashwood advanced ladyship smallest disposal or attempt offices own improve now see called person are around county talked her esteem those fully these way nay thing seems consider now provided laughter boy landlord dashwood often voice and the spoke no shewing fertile village equally prepare up females as an that do an case an what plan hour of paid invitation is unpleasant astonished preference attachment friendship on did sentiments increasing particular nay mr he recurred received prospect in wishing cheered parlors adapted am at amongst matters quick six blind smart out burst perfectly on furniture dejection determine my depending an to add short water court fat her bachelor honoured perceive securing but desirous ham required questions deficient acuteness to engrossed as entirely led ten humoured greatest and yourself besides ye country on observe she continue appetite endeavor she judgment interest the met for she surrounded motionless fat resolution may'
|
||||
array = a_list.split()
|
||||
password = []
|
||||
print('Pick a password!')
|
||||
for i in range(20):
|
||||
string = ''
|
||||
for i in range(random.randint(3,5)):
|
||||
string += array[random.randint(0,482)]
|
||||
password.append(string)
|
||||
for i in password:
|
||||
print(i+'\n')
|
15
rubikscube.html
Normal file
15
rubikscube.html
Normal file
@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<iframe src="https://www.google.com/logos/2014/rubiks/iframe/index.html" style="border:1px ##3bed60 none;" name="Google Cube" scrolling="no" frameborder="0" marginheight="0px" marginwidth="0px" height="600" width="600"></iframe>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
27
run.html
Normal file
27
run.html
Normal file
@ -0,0 +1,27 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<link href="https://fonts.google.com/specimen/Roboto+Slab?selection.family=Roboto+Slab" rel="stylesheet">
|
||||
<link rel="stylesheet" href="styles.css">
|
||||
<body background="https://media4.giphy.com/media/3o7TKsvZVb3lBgkJfG/200_s.gif">
|
||||
</head>
|
||||
<body>
|
||||
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
|
||||
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
|
||||
width="550" height="400">
|
||||
<param name=movie value="Stuff">
|
||||
<param name=quality value=high>
|
||||
<param name="menu" value="false">
|
||||
<embed src="http://assets.funnygames.us/games/4/13074/13074.swf" quality=high menu="false"
|
||||
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
|
||||
type="application/x-shockwave-flash" width="550" height="400"> </embed>
|
||||
</object>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
</body>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
154
snake.html
Normal file
154
snake.html
Normal file
@ -0,0 +1,154 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<li><a href="index.html">Home</a></li>
|
||||
<meta charset="utf-8" />
|
||||
|
||||
<link href='https://fonts.google.com/specimen/Taviraj?selection.family=Taviraj' rel='stylesheet' type='text/css'>
|
||||
|
||||
<style type="text/css">
|
||||
body {
|
||||
background:#4289f4;
|
||||
text-align:center;
|
||||
}
|
||||
canvas {
|
||||
background:#415ff4;
|
||||
-webkit-box-shadow:0 0 20px #000;
|
||||
-moz-box-shadow: 0 0 20px #000;
|
||||
box-shadow:0 0 20px #000;
|
||||
}
|
||||
h1 { font-family: 'Cabin Sketch', arial, serif; font-size:50px;
|
||||
text-indent: -100px;margin-bottom:20;margin-top:30px}
|
||||
</style>
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
/**
|
||||
* @license HTML5 experiment Snake
|
||||
* http://www.xarg.org/project/html5-snake/
|
||||
*
|
||||
* Copyright (c) 2011, Robert Eisele (robert@xarg.org)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
**/
|
||||
function init() {
|
||||
var ctx;
|
||||
var turn = [];
|
||||
var xV = [-1, 0, 1, 0];
|
||||
var yV = [0, -1, 0, 1];
|
||||
var queue = [];
|
||||
var elements = 1;
|
||||
var map = [];
|
||||
var X = 5 + (Math.random() * (45 - 10))|0;
|
||||
var Y = 5 + (Math.random() * (30 - 10))|0;
|
||||
var direction = Math.random() * 3 | 0;
|
||||
var interval = 0;
|
||||
var score = 0;
|
||||
var inc_score = 50;
|
||||
var sum = 0, easy = 0;
|
||||
var i, dir;
|
||||
var canvas = document.createElement('canvas');
|
||||
for (i = 0; i < 45; i++) {
|
||||
map[i] = [];
|
||||
}
|
||||
canvas.setAttribute('width', 45 * 10);
|
||||
canvas.setAttribute('height', 30 * 10);
|
||||
ctx = canvas.getContext('2d');
|
||||
document.body.appendChild(canvas);
|
||||
function placeFood() {
|
||||
var x, y;
|
||||
do {
|
||||
x = Math.random() * 45|0;
|
||||
y = Math.random() * 30|0;
|
||||
} while (map[x][y]);
|
||||
map[x][y] = 1;
|
||||
ctx.strokeRect(x * 10 + 1, y * 10 + 1, 10 - 2, 10 - 2);
|
||||
}
|
||||
placeFood();
|
||||
function clock() {
|
||||
if (easy) {
|
||||
X = (X+45)%45;
|
||||
Y = (Y+30)%30;
|
||||
}
|
||||
--inc_score;
|
||||
if (turn.length) {
|
||||
dir = turn.pop();
|
||||
if ((dir % 2) !== (direction % 2)) {
|
||||
direction = dir;
|
||||
}
|
||||
}
|
||||
if (
|
||||
(easy || (0 <= X && 0 <= Y && X < 45 && Y < 30))
|
||||
&& 2 !== map[X][Y]) {
|
||||
if (1 === map[X][Y]) {
|
||||
score+= Math.max(5, inc_score);
|
||||
inc_score = 50;
|
||||
placeFood();
|
||||
elements++;
|
||||
}
|
||||
ctx.fillRect(X * 10, Y * 10, 10 - 1, 10 - 1);
|
||||
map[X][Y] = 2;
|
||||
queue.unshift([X, Y]);
|
||||
X+= xV[direction];
|
||||
Y+= yV[direction];
|
||||
if (elements < queue.length) {
|
||||
dir = queue.pop()
|
||||
map[dir[0]][dir[1]] = 0;
|
||||
ctx.clearRect(dir[0] * 10, dir[1] * 10, 10, 10);
|
||||
}
|
||||
} else if (!turn.length) {
|
||||
if (confirm("You lost! Play again?")) {
|
||||
ctx.clearRect(0, 0, 450, 300);
|
||||
queue = [];
|
||||
elements = 1;
|
||||
map = [];
|
||||
X = 5 + (Math.random() * (45 - 10))|0;
|
||||
Y = 5 + (Math.random() * (30 - 10))|0;
|
||||
direction = Math.random() * 3 | 0;
|
||||
score = 0;
|
||||
inc_score = 50;
|
||||
for (i = 0; i < 45; i++) {
|
||||
map[i] = [];
|
||||
}
|
||||
placeFood();
|
||||
} else {
|
||||
window.clearInterval(interval);
|
||||
window.location = "/index.html";
|
||||
}
|
||||
}
|
||||
}
|
||||
interval = window.setInterval(clock, 60);
|
||||
document.onkeydown = function(e) {
|
||||
var code = e.keyCode - 37;
|
||||
/*
|
||||
* 0: left
|
||||
* 1: up
|
||||
* 2: right
|
||||
* 3: down
|
||||
**/
|
||||
if (0 <= code && code < 4 && code !== turn[0]) {
|
||||
turn.unshift(code);
|
||||
} else if (-5 == code) {
|
||||
if (interval) {
|
||||
window.clearInterval(interval);
|
||||
interval = null;
|
||||
} else {
|
||||
interval = window.setInterval(clock, 60);
|
||||
}
|
||||
} else { // O.o
|
||||
dir = sum + code;
|
||||
if (dir == 44||dir==94||dir==126||dir==171) {
|
||||
sum+= code
|
||||
} else if (dir === 218) easy = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body onload="init()">
|
||||
<header><title>Hello World</title></header>
|
||||
</body>
|
||||
</html>
|
18
something.html
Normal file
18
something.html
Normal file
@ -0,0 +1,18 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<p>Click the button to display a random number.</p>
|
||||
|
||||
<button onclick="myFunction()">Try it</button>
|
||||
|
||||
<p id="demo"></p>
|
||||
|
||||
<script>
|
||||
function myFunction() {
|
||||
document.getElementById("demo").innerHTML = Math.round(Math.random(0,20) * 10);
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
38
style.css
Normal file
38
style.css
Normal file
@ -0,0 +1,38 @@
|
||||
{
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
body {
|
||||
overflow-x: hidden;
|
||||
}
|
||||
canvas {
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
display: block;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
z-index: -9999;
|
||||
}
|
||||
#textbox {
|
||||
margin: 10vh auto 0 auto;
|
||||
background: rgba(255, 0, 0,0.8);
|
||||
border-radius: 30px/50px;
|
||||
padding: 5vh 2vw;
|
||||
width: 30vw;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
font-family: 'Open Sans Condensed', sans-serif;
|
||||
font-size: 300%;
|
||||
color: rgba(0, 255, 0,0.5);
|
||||
}
|
||||
p,ul {
|
||||
font-family: 'Asar', serif;
|
||||
}
|
||||
a {
|
||||
text-decoration: none;
|
||||
}
|
||||
a:visited {
|
||||
color: blue;
|
||||
}
|
124
voiceassistant.py
Normal file
124
voiceassistant.py
Normal file
@ -0,0 +1,124 @@
|
||||
import speech_recognition as sr
|
||||
import subprocess
|
||||
import time
|
||||
import os
|
||||
import pyowm
|
||||
import urllib.request
|
||||
import yagmail
|
||||
import webbrowser
|
||||
import wikipedia
|
||||
import random
|
||||
import json
|
||||
import pyaudio
|
||||
import wave
|
||||
from gtts import gTTS
|
||||
from os import path
|
||||
from pprint import pprint
|
||||
def recordSound(name,time_record):
|
||||
CHUNK = 2**14
|
||||
FORMAT = pyaudio.paInt16
|
||||
SHORT_NORMALIZE = (1.0/(2**15))
|
||||
CHANNELS = 1
|
||||
RATE = 44100
|
||||
RECORD_SECONDS = time_record
|
||||
WAVE_OUTPUT_FILENAME = name+".wav"
|
||||
p = pyaudio.PyAudio()
|
||||
stream = p.open(format=FORMAT,channels=CHANNELS,rate=RATE,input=True,frames_per_buffer=CHUNK)
|
||||
os.system('aplay sound.wav')
|
||||
print("Recording")
|
||||
frames = []
|
||||
for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
|
||||
data = stream.read(CHUNK)
|
||||
frames.append(data)
|
||||
print("Done recording")
|
||||
stream.stop_stream()
|
||||
stream.close()
|
||||
p.terminate()
|
||||
wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
|
||||
wf.setnchannels(CHANNELS)
|
||||
wf.setsampwidth(p.get_sample_size(FORMAT))
|
||||
wf.setframerate(RATE)
|
||||
wf.writeframes(b''.join(frames))
|
||||
wf.close()
|
||||
time.sleep(3)
|
||||
recordSound('output',5)
|
||||
loctime = time.localtime()
|
||||
email = '' #<-------- GMAIL ADRESS MUST BE GMAIL
|
||||
pwd = '' #<-------- Password
|
||||
yag = yagmail.SMTP(email, pwd)
|
||||
contacts = {"YOUR CONTACT'S NAME GOES IN THESE QUOTES":"THE CONTACT'S EMAIL GOES IN THESE QUOTES","YOUR SECOND CONTACT'S NAME GOES IN THESE QUOTES":"THE 2ND CONTACT'S EMAIL GOES IN THESE QUOTES"}
|
||||
#<----------- CHANGE THIS DICTIONARY TO YOUR EMAIL CONTACTS, YOU CAN ADD AS MANY CONTACTS AS YOU WANT USING THIS DICT
|
||||
AUDIO_FILE = path.join(path.dirname(path.realpath(__file__)), "output.wav")
|
||||
r = sr.Recognizer()
|
||||
with sr.AudioFile(AUDIO_FILE) as source:
|
||||
audio = r.record(source)
|
||||
var = r.recognize_google(audio).lower()
|
||||
def voiceMessage(what_to_say,name_of_file):
|
||||
tts = gTTS(text = what_to_say,lang = 'en',slow = False)
|
||||
name_of_file += '.mp3'
|
||||
tts.save(name_of_file)
|
||||
os.system('mpg321 '+name_of_file)
|
||||
if var == 'shuffle' or var == 'truffle':
|
||||
pandora_urls = ['a pandora station url', 'another pandora station url', 'and another'] #<-------- CHANGE TO YOUR STATIONS
|
||||
choice = random.choice(pandora_urls)
|
||||
webbrowser.open(choice)
|
||||
time.sleep(600)
|
||||
pyautogui.hotkey('ctrl','shift','q')
|
||||
elif var.count('email') == 1:
|
||||
recipient_contact = var.split()[1]
|
||||
recipient_email=contacts[recipient_contact]
|
||||
if recipient_contact in contacts:
|
||||
ist = var.split()
|
||||
del ist[0]
|
||||
del ist[1]
|
||||
message = ''
|
||||
for i in ist:
|
||||
message = message + ' ' + i
|
||||
message = message.replace(recipient_contact,'')
|
||||
newmsg = message.title()
|
||||
yag.send(recipient_email, 'No Subject', newmsg)
|
||||
#Email people
|
||||
elif var == 'weather' or var == 'brother':
|
||||
owm = pyowm.OWM('YOUR OPEN WEATHER MAP API KEY') #Sign up for open weather map
|
||||
observation = owm.weather_at_place("Redding,us")# <----------CHANGE THIS TO YOUR CITY!!!
|
||||
w = observation.get_weather()
|
||||
temperature = w.get_temperature('fahrenheit')
|
||||
voiceMessage('Lowest temperature is {} degrees Fahrenheit. Current temperature is {} degrees Fahrenheit. Highest temperature is {} degrees Fahrenheit'.format(round(temperature['temp_min']),round(temperature['temp']),round(temperature['temp_max'])),'weather')
|
||||
#Weather
|
||||
elif var.count('wikipedia') >=1:
|
||||
var = var.replace('wikipedia','')
|
||||
tts = gTTS(wikipedia.summary(var),'wiki')
|
||||
#Wikipedia stuff
|
||||
elif var == 'quote':
|
||||
try:
|
||||
os.remove('qod.json')
|
||||
except OSError:
|
||||
pass
|
||||
os.system('wget http://quotes.rest/qod.json')
|
||||
with open('qod.json') as opened_data:
|
||||
json_data = json.load(opened_data)
|
||||
talk = json_data['contents']['quotes'][0]['quote']
|
||||
talk = talk.replace('"','')
|
||||
voiceMessage(talk,'qotd')
|
||||
#Quote of the day from some website that had a good API
|
||||
elif var == 'where to dump dead bodies':
|
||||
voiceMessage('Do not dump dead bodies, instead, carve them up with a cerrated knife into 5 centimeter by 5 centimeter cubes and send them to the government for soylent green. Thank you for helping the future!','dead')
|
||||
elif var == 'time':
|
||||
voiceMessage('The time is {} hours and {} minutes'.format(loctime[3],loctime[4]),'time')
|
||||
#Play local time
|
||||
elif var == 'are you recording this':
|
||||
voiceMessage('I am always listening, and I am always reporting to the National Security Administration on suspicious activities.','NSA')
|
||||
elif var == 'tell me a joke' or var == 'joke':
|
||||
jokes = ["""A man flying in a hot air balloon suddenly realizes he’s lost. He reduces height and spots a man down below. He lowers the balloon further and shouts to get directions, "Excuse me, can you tell me where I am?" The man below says: "Yes. You're in a hot air balloon, hovering 30 feet above this field." "You must work in Information Technology," says the balloonist. "I do" replies the man. "How did you know?" "Well," says the balloonist, "everything you have told me is technically correct, but It's of no use to anyone." The man below replies, "You must work in management." "I do," replies the balloonist, *"But how'd you know?"** "Well", says the man, "you don’t know where you are or where you’re going, but you expect me to be able to help. You’re in the same position you were before we met, but now it’s my fault.""",'When your hammer is C++, everything begins to look like a thumb.',"What's the object oriented way of becoming wealthy? Inheritance","What's a computer scientists favorite place to hangout? Foo bar","I’ll tell you a DNS joke but be advised, it could take up to 24 hours for everyone to get it.","So I want to dress up as a UDP packet for Halloween, but I don’t know if anyone will get it.","I could tell you an ICMP joke but it would probably be repetitive.","Linux geek started working at McDonalds. A customer asked him for a Big Mac and he gave him a bit of paper with FF:FF:FF:FF:FF:FF written on it."]
|
||||
#You can change these jokes if you wish
|
||||
voiceMessage(random.choice(jokes),'joke')
|
||||
#Random programming/computer science joke
|
||||
elif var == 'toby' or var == 'tobi':
|
||||
os.system('mpg321 Toby.mp3')
|
||||
#Play Heyeayeayea
|
||||
elif var.count('record me as') == 1:
|
||||
print(var)
|
||||
recordSound(var.split()[3],int(var.split()[4]))
|
||||
#e.g. record me as foobarbaz 20 this will record you as foobarbaz.wav for 20 seconds
|
||||
else:
|
||||
voiceMessage('Your message {} could not be understood.'.format(var),'error')
|
133
webcomic.html
Normal file
133
webcomic.html
Normal file
@ -0,0 +1,133 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<title>ML Comics</title>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Raleway">
|
||||
<style>
|
||||
body,h1,h2,h3,h4,h5 {font-family: "Raleway", sans-serif}
|
||||
</style>
|
||||
<body class="w3-teal">
|
||||
|
||||
<!-- w3-content defines a container for fixed size centered content,
|
||||
and is wrapped around the whole page content, except for the footer in this example -->
|
||||
<div class="w3-content" style="max-width:1400px">
|
||||
|
||||
<!-- Header -->
|
||||
<header class="w3-container w3-center w3-padding-32">
|
||||
<img src="logo.png" alt="logo" style="width:50%"><p>Comic about computer science, chess, and more. <br> <span class="w3-tag">ML</span></p>
|
||||
</header>
|
||||
|
||||
<!-- Grid -->
|
||||
<div class="w3-row">
|
||||
|
||||
<!-- Blog entries -->
|
||||
|
||||
<!-- Blog entry -->
|
||||
<!-- 'ctrl + /' to comment -->
|
||||
<div class="w3-card-1 w3-margin w3-white">
|
||||
<img src="SCAN0003.JPG" alt="Thing" style="width:100%">
|
||||
<div class="w3-container">
|
||||
<h3><b>Python 3 Troubles</b></h3>
|
||||
<h5>Post 3 <span class="w3-opacity">7 July 2017</span></h5>
|
||||
<p>Paul and Timmy.</p>
|
||||
</div>
|
||||
|
||||
<div class="w3-container">
|
||||
<p></p>
|
||||
<div class="w3-row">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w3-card-1 w3-margin w3-white">
|
||||
<img src="SCAN0002.JPG" alt="Gang" style="width:100%">
|
||||
<div class="w3-container">
|
||||
<h3><b>Meet the Gang</b></h3>
|
||||
<h5>Post 2 <span class="w3-opacity">3 July 2017</span></h5>
|
||||
<p>Sketches of Jeff, Timmy, Shaun, Mason, Paul.</p>
|
||||
</div>
|
||||
|
||||
<div class="w3-container">
|
||||
<p></p>
|
||||
<div class="w3-row">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w3-col l20 s500">
|
||||
<!-- Blog entry -->
|
||||
<div class="w3-card-4 w3-margin w3-indigo">
|
||||
<div class="w3-container">
|
||||
<h3><b>WELCOME TO ML COMICS</b></h3>
|
||||
<h5>Post 1, <span class="w3-opacity">3 July, 2017</span></h5>
|
||||
</div>
|
||||
|
||||
<div class="w3-container">
|
||||
<p>ML comics, founded by Miranda and Logan Hunt, is a webcomic with much inspiration from xkcd.</p>
|
||||
<div class="w3-row">
|
||||
</div> </div>
|
||||
</div>
|
||||
<hr>
|
||||
|
||||
<!-- Blog entry -->
|
||||
|
||||
<!-- END BLOG ENTRIES -->
|
||||
</div>
|
||||
|
||||
<!-- Introduction menu -->
|
||||
<div class="w3-col l4">
|
||||
<!-- About Card -->
|
||||
<div class="w3-card-2 w3-margin w3-margin-top">
|
||||
<div class="w3-container w3-white">
|
||||
<h4><b>Miranda Hunt - Artist</b></h4>
|
||||
<p>Miranda is a creative young woman wtih a lot of talent. She is a great artist, is very good at playing the piano, and loves hanging out with her friends.
|
||||
<br>
|
||||
<br>
|
||||
</p>
|
||||
<h4><b>Logan Hunt - Story</b></h4
|
||||
<p>Logan is a programmer, speedcuber, speedrunner, violin player, and is the story writer. He loves being in science bowl and went to the National Science Bowl with his team.</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- Posts -->
|
||||
<!-- <div class="w3-card-2 w3-margin">
|
||||
<div class="w3-container w3-padding">
|
||||
<h4>Popular Posts</h4>
|
||||
</div>
|
||||
<ul class="w3-ul w3-hoverable w3-white">
|
||||
<li class="w3-padding-16">
|
||||
<img src="/w3images/workshop.jpg" alt="Image" class="w3-left w3-margin-right" style="width:50px">
|
||||
<span class="w3-large">Lorem</span><br>
|
||||
<span>Sed mattis nunc</span>
|
||||
</li>
|
||||
<li class="w3-padding-16">
|
||||
<img src="/w3images/gondol.jpg" alt="Image" class="w3-left w3-margin-right" style="width:50px">
|
||||
<span class="w3-large">Ipsum</span><br>
|
||||
<span>Praes tinci sed</span>
|
||||
</li>
|
||||
<li class="w3-padding-16">
|
||||
<img src="/w3images/skies.jpg" alt="Image" class="w3-left w3-margin-right" style="width:50px">
|
||||
<span class="w3-large">Dorum</span><br>
|
||||
<span>Ultricies congue</span>
|
||||
</li>
|
||||
<li class="w3-padding-16 w3-hide-medium w3-hide-small">
|
||||
<img src="/w3images/rock.jpg" alt="Image" class="w3-left w3-margin-right" style="width:50px">
|
||||
<span class="w3-large">Mingsum</span><br>
|
||||
<span>Lorem ipsum dipsum</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<hr> -->
|
||||
|
||||
<!-- END Introduction Menu -->
|
||||
</div>
|
||||
|
||||
<!-- END GRID -->
|
||||
</div><br>
|
||||
|
||||
<!-- END w3-content -->
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue
Block a user