Réponses:
La monogamie n'est pas pour tout le monde.
Basé sur ma réponse à Execute Prints Backwards .
#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();
Sortie, lorsqu'elle est exécutée en C:
C, I love you much more than Python
Sortie, lorsqu'elle est exécutée en Python:
Python , I love you much more than C
Jolie 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);
Sortie console:
♥♥♥♥♥ ♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥ ♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥ ♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥ JS ♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥
♥
Version annotée:
[
// 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);
}
Découvrez-le en ligne ici .
Capture d'écran d'une sortie possible:
Pourquoi trop compliqué, quand vous pouvez faire la chose la plus simple qui fonctionne?
Programme:
I ♥ PHP!
Production:
I ♥ PHP!
FRAPPER
Quoi de mieux que d'envoyer SSH à la machine de votre femme / mari et de laisser ensuite son NIC faire la partie amusante du code morse clignotant pour "Happy Valentines Day" pour votre langage de script préféré Je suis sûr que vous avez presque tous commencé avec - BASH? Et comme nous le savons tous, les Geeks - vous devriez toujours avoir un œil sur la carte réseau de votre machine;)
#!/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
Bien sûr, "morse" contient le code morse "traduit" en chiffres:
111131231221312213212231112312312113132132311321313111321131232122
«1» est court, «2» est long et «3» est l'espace. Il est évident que l '«ethtool» obligatoire doit être installé. Sinon, faites la faveur de votre conjoint.
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]]
C'est la surface cardiaque de Taubin . Oui, je me rends compte que le défi demande de l'art ASCII. Cependant, si vous allez voter contre, ne le faites pas parce que c'est trop beau, faites-le parce que j'ai volé le code de /math/12098/drawing-heart-in-mathematica
Juste pour votre intérêt, le nombre de caractères est 865 .
'=~~~~:''=<<'+~>,'+~~~>,':'''=<'+~>,<',<'+~>-~>:''''=<'+~>,<<',~~>+~>+~~:'''''=',',~~:''''''=',<<'+~>,<'+~~>+~>:'''''''=',~~+~~:
@''''':@''':@''':@''':@''':@''''':@''''':@''''':@''':@''':@''':@''':@''''''':
@'''':@''''':@''''':@''''':@''''':@'':@''''':@'''':@''''':@''''':@''''':@''''':@'':@''''''':
@'''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@'''''':@''''''':
@'':@''''':@|I|:@''''':@|<|:@|3|:@''''':@|~|:@|-|:@|~|:@|!|:@''''':@'''':@''''''':
@''''':@'':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@'''':@''''''':
@''''':@''''':@'':@''''':@''''':@''''':@''''':@''''':@''''':@''''':@'''':@''''''':
@''''':@''''':@''''':@'':@''''':@''''':@''''':@''''':@''''':@'''':@''''''':
@''''':@''''':@''''':@''''':@'':@''''':@''''':@''''':@'''':@''''''':
@''''':@''''':@''''':@''''':@''''':@'':@''''':@'''':@''''''':
Production:
____ ____
/ \ / \
| |
\ I <3 ~-~! /
\ /
\ /
\ /
\ /
\ /
Rappelez-vous quand les gens n'avaient pas d'ordinateur pour la Saint-Valentin et devaient graver leur vie amoureuse sur les arbres? C'est ce que je suis en train de faire:
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')
Remarque: les premières valeurs de la inside
variable sont codées en dur. Production:
___ ___
/ \ / \
/ \/ \
|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();
}