Skip to content

Instantly share code, notes, and snippets.

@TApicella
TApicella / beergolf.py
Last active May 23, 2018 15:46
beergolf created by tapicella - https://repl.it/@tapicella/beergolf
p=print
r=str
m=',\n'
b=' bottles of beer'
w=' on the wall'
f='Take one down, pass it around'+m
n='.\n'
q=w+n
y=w+m
k=n+f
from PIL import Image
import random as r
import math
def distance(point1, point2, manhattan_dist=False):
if manhattan_dist:
return abs(point2[0]-point1[0]) + abs(point2[1]-point1[1])
else:
return math.sqrt( (point2[0] - point1[0])**2 + (point2[1] - point1[1])**2 )
@TApicella
TApicella / RosettaCode- Middle three digits.py
Created May 16, 2017 17:50
RosettaCode- Middle three digits created by tapicella - https://repl.it/IBVw/5
'''
Write a function/procedure/subroutine that is called with an integer value and returns the middle three digits of the integer if possible or a clear indication of an error if this is not possible.
Note: The order of the middle digits should be preserved.
Your function should be tested with the following values; the first line should return valid answers, those of the second line should return clear indications of an error:
123, 12345, 1234567, 987654321, 10001, -10001, -123, -100, 100, -12345
1, 2, -1, -10, 2002, -2002, 0
@TApicella
TApicella / RosettaCode- Multisplit.py
Created May 16, 2017 17:31
RosettaCode- Multisplit created by tapicella - https://repl.it/IBTP/3
'''
Task
Multisplit
You are encouraged to solve this task according to the task description, using any language you may know.
It is often necessary to split a string into pieces based on several different (potentially multi-character) separator strings, while still retaining the information about which separators were present in the input.
This is particularly useful when doing small parsing tasks.
The task is to write code to demonstrate this.
@TApicella
TApicella / RosettaCode- pangram checker.py
Created May 16, 2017 17:20
RosettaCode- pangram checker created by tapicella - https://repl.it/IBRL/3
'''
A pangram is a sentence that contains all the letters of the English alphabet at least once.
For example: The quick brown fox jumps over the lazy dog.
Task
Write a function or method to check a sentence to see if it is a pangram (or not) and show its use.
'''
@TApicella
TApicella / DailyProgrammer 5-16-2017 Txt acronyms.py
Created May 16, 2017 16:57
DailyProgrammer 5-16-2017 Txt acronyms created by tapicella - https://repl.it/IBGV/10
'''
On console input you will be given a string that represents the abbreviated chat message.
Output. Output should consist of the expanded sentence.Wordlist
lol - laugh out loud
dw - don't worry
hf - have fun
gg - good game
brb - be right back
g2g - got to go
@TApicella
TApicella / RosettaCode- Sudoku.py
Created May 16, 2017 15:53
RosettaCode- Sudoku created by tapicella - https://repl.it/HzMK/82
'''
http://rosettacode.org/wiki/Sudoku
'''
import copy
square_ranges = {
0: [0, 1, 2],
1: [0, 1, 2],
@TApicella
TApicella / Daily Programmer 5-15-2017- matrix transpose.py
Created May 15, 2017 15:10
Daily Programmer 5-15-2017- matrix transpose created by tapicella - https://repl.it/Hy9H/37
'''
Write a program that takes input text from standard input and outputs the text -- transposed.
Roughly explained, the transpose of a matrix
A B C
D E F
is given by
@TApicella
TApicella / RosettaCode- Count in factors.py
Created May 11, 2017 20:20
RosettaCode- Count in factors created by tapicella - https://repl.it/Hthb/12
'''
http://rosettacode.org/wiki/Count_in_factors
Write a program which counts up from 1, displaying each number as the multiplication of its prime factors.
For the purpose of this task, 1 (unity) may be shown as itself.
Example
@TApicella
TApicella / RosettaCode- Ethiopian multiplaction.py
Created May 11, 2017 19:18
RosettaCode- Ethiopian multiplaction created by tapicella - https://repl.it/Ht6L/6
'''
http://rosettacode.org/wiki/Ethiopian_multiplication
Take two numbers to be multiplied and write them down at the top of two columns.
In the left-hand column repeatedly halve the last number, discarding any remainders, and write the result below the last in the same column, until you write a value of 1.
In the right-hand column repeatedly double the last number and write the result below. stop when you add a result in the same row as where the left hand column shows 1.
Examine the table produced and discard any row where the value in the left column is even.
Sum the values in the right-hand column that remain to produce the result of multiplying the original two numbers together
'''