Antworten:
Monogamie ist nicht jedermanns Sache.
Basierend auf meiner Antwort auf " Drucke rückwärts ausführen" .
#define def main(){0?
#define print printf(
#define return 0)));}
def main():
print "Python",
print ", I love you much more than ",
print "C",
return
main();
Ausgabe, wenn als C ausgeführt:
C, I love you much more than Python
Ausgabe, wenn als Python ausgeführt:
Python , I love you much more than C
Hübsche Version:
r=/c/g ,n='\n'
,m=/.\d+/g,[, ,'ca','8b',5,
'a10b',6,'ca3b', 13,'a4b',1,3,'c'
,'a1b',16,'a2b1',5,'cb35cb',35,'ca',
,'1b7 JS b',22,'ca2b',31,'ca3b',29,
,'ca',5,'b',25,'ca7b',2,1,'ca',9,
,'b','17ca',11,'b13ca',14,'b',
'7c','a1',7,'b1c'].join('').
replace(m, c=>(c[0]!='a'?
'\u2665':' ').repeat
(+c.substr(1))).
replace(r,
n);
Konsolenausgabe:
♥♥♥♥♥ ♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥ ♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥ ♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥ JS ♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥
♥
Kommentierte Version:
[
// Contains the instruction to draw the heart.
// * `a` is a space
// * `b` is a heart
// * `c` is a line break
//
// `a` and `b` instructions are followed by an integer
// telling how many times the character should be printed.
//
// Abuse JS arrays to split the string in smaller parts.
,,'ca','8b',5,'a10b',6,'ca3b',13,'4b13ca1b16a2b1cb35cb35ca1b7'
// This is the text we want to display.
,' JS '
// Other instructions to draw the heart.
// This part isn't splitted for readability purpose.
,'bca2bca3b29ca5b25ca7b21ca9b17ca11b13ca14b7ca17b1c'
]
// Join every substring.
.join('')
// Process instructions.
.replace(
// Match all `a` and `b` instructions.
/.\d+/g,
c => (
// Fetch the right character.
c[0] != 'a'
? '\u2665' // `b` Heart
: ' ' // `a` Space
)
// Repeat the character.
.repeat(
// Extract the number from the instruction.
+c.substr(1)
)
)
// Replace `c` by a line break.
.replace(/c/g,'\n');
public static final int px = 25;
public static final int rectRad = 3;
PFont font;
public boolean[][] used;
public int[] heart = {
65, 66, 67, 72, 73, 74,
84, 85, 86, 87, 88, 91, 92, 93, 94, 95,
103,104,105,106,107,108,109,110,111,112,113,114,115,116,
122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,
142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,
162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,
183,184,185,186,187,188,189,190,191,192,193,194,195,196,
204,205,206,207,208,209,210,211,212,213,214,215,
224,225,226,227,228,229,230,231,232,233,234,235,
245,246,247,248,249,250,251,252,253,254,
266,267,268,269,270,271,272,273,
287,288,289,290,291,292,
308,309,310,311,
329,330
};
void setup() {
size(500, 500);
background(255);
stroke(127+64);
strokeWeight(1.75);
//font=loadFont("Font1.vlw");
font=createFont("Purisa",28);
textFont(font,28);
frameRate(50);
used = new boolean[width/px][height/px]; // initialised to false by default
}
void draw() {
int i, j;
int drawingframes = width * height / px / px;
int textframesdelay = (int)(500 * frameRate / 1000);
do {
i=(int)random(0, width / px);
j=(int)random(0, height / px);
} while(used[i][j] && frameCount <= drawingframes);
used[i][j] = true;
if(frameCount > drawingframes + textframesdelay) {
noLoop();
return;
} else if(frameCount == drawingframes + textframesdelay) {
fill(63 + 32);
text("Dear Processing,", 10, 50);
text("Happy Valentine's Day!", 80, 200);
text("Love,\nAce", 10, 430);
return;
} else if(frameCount > drawingframes) {
return; // effectively creating a small delay after drawing the tiles
// and before writing the text
}
int R = (int)random(64, 255 - 64);
int G = (int)random(128, 255);
int B = (int)random(128, 255);
int alpha = (int)random(55, 85);
int hash = j * width / px + i;
if(java.util.Arrays.binarySearch(heart,hash)>=0) {
//if(heart.indexOf(hash) >= 0) {
R = (int)random(128 + 64, 255);
G = (int)random(0, 63);
B = (int)random(0, 63);
alpha = (int)random(70, 100);
}
fill(R, G, B, alpha);
rect(i * px, j * px, px, px, rectRad, rectRad, rectRad, rectRad);
}
Sehen Sie hier, wie es online läuft .
Screenshot einer möglichen Ausgabe:
Warum zu kompliziert, wenn Sie das einfachste tun können, was funktioniert?
Programm:
I ♥ PHP!
Ausgabe:
I ♥ PHP!
BASH
Was gibt es Schöneres, als Ihren Ehefrauen / Ehemännern einen SSH-Befehl zu erteilen und ihre Netzwerkkarte dann den unterhaltsamen Teil des Morseblitzcodes für "Happy Valentines Day" für Ihre Lieblingsskriptsprache ausführen zu lassen. Und wie wir Geeks alle wissen, solltest du immer ein Auge auf die Netzwerkkarte deines Computers haben;)
#!/bin/bash
#.... .- .--. .--. -.-- ...- .- .-.. . -. - .. -. . ... -.. .- -.--
#1111 12 1221 1221 2122 1112 12 1211 1 21 2 11 21 1 111 211 12 2122
while IFS= read -r -n1 char
do
ethtool eth0 p$char
done < morse
Natürlich enthält "morse" den Morsecode "übersetzt" in Zahlen:
111131231221312213212231112312312113132132311321313111321131232122
'1' ist kurz, '2' ist lang und '3' ist Leerzeichen. Natürlich sollte das obligatorische 'Ethtool' installiert sein. Wenn nicht, dann tun Sie Ihrem Ehepartner den Gefallen.
Nur weil wir alle eines davon einmal geschrieben haben und dies wirklich der einzige Stil ist, der das einfache ehrliche Herz dieser Sprache wirklich zum Ausdruck bringt.
10 PRINT "HAPPY VALENTINES DAY BASIC"
20 GOTO 10
Mathematica
ContourPlot3D[(2 x^2 + y^2 + z^2 - 1)^3 - (1/10) x^2 z^3 - y^2 z^3 ==
0, {x, -1.5, 1.5}, {y, -1.5, 1.5}, {z, -1.5, 1.5}, Mesh -> None,
ContourStyle -> Opacity[0.8, Red]]
Das ist Taubins Herzoberfläche . Ja, ich erkenne, dass die Herausforderung nach ASCII-Kunst verlangt. Wenn Sie es jedoch ablehnen möchten, tun Sie dies nicht, weil es übermäßig schön ist, sondern weil ich den Code von /math/12098/drawing-heart-in-mathematica gestohlen habe
Aus Gründen des Interesses beträgt die Zeichenanzahl 865 .
'=~~~~:''=<<'+~>,'+~~~>,':'''=<'+~>,<',<'+~>-~>:''''=<'+~>,<<',~~>+~>+~~:'''''=',',~~:''''''=',<<'+~>,<'+~~>+~>:'''''''=',~~+~~:
@''''':@''':@''':@''':@''':@''''':@''''':@''''':@''':@''':@''':@''':@''''''':
@'''':@''''':@''''':@''''':@''''':@'':@''''':@'''':@''''':@''''':@''''':@''''':@'':@''''''':
@'''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@'''''':@''''''':
@'':@''''':@|I|:@''''':@|<|:@|3|:@''''':@|~|:@|-|:@|~|:@|!|:@''''':@'''':@''''''':
@''''':@'':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@'''':@''''''':
@''''':@''''':@'':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@'''':@''''''':
@''''':@''''':@''''':@'':@''''':@''''':@''''':@''''':@''''':@'''':@''''''':
@''''':@''''':@''''':@''''':@'':@''''':@''''':@''''':@'''':@''''''':
@''''':@''''':@''''':@''''':@''''':@'':@''''':@'''':@''''''':
Ausgabe:
____ ____
/ \ / \
| |
\ I <3 ~-~! /
\ /
\ /
\ /
\ /
\ /
Erinnerst du dich, als die Leute keine Computer für Valentinstag hatten und ihr Liebesleben in Bäume ätzen mussten? Das ist was ich tue:
def valentine(person1,person2):
leading_whitespace = range(0,4)[::-1] +[0]+range(0,8)
inside = [3,5,14,14]+range(0,15)[::-1][::2]
layers = [" ___ ___",r" / \ / \ ",r'/ \/ \ ','| |']
for i in range(5,12):
layers.append(' ' * leading_whitespace[i] + '\\' + ' ' * inside[i] + '/')
#inserts person1 into layers[4]
temp = []
for char in layers[3]: temp.append(char)
temp[1:len(person1)+1] = person1
layers[3] = ''.join(temp)
temp = []
layers[4] = '| + |'
# do that again for person2
for char in layers[5]: temp.append(char)
temp[-len(person2)-1:-1] = person2
layers[5] = ''.join(temp)
print '\n'.join(layers)
valentine('Me','Python')
Hinweis: Die ersten Werte der inside
Variablen sind fest codiert. Ausgabe:
___ ___
/ \ / \
/ \/ \
|Me |
| + |
\ Python/
\ /
\ /
\ /
\ /
\/
#include<stdio.h>
#include<conio.h>
main();
{
int i, n;
printf(" enter n=");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf(" i love you honey ");
}
scanf("%d",&i);
getch();
}