Si je n'écris pas le code régulièrement, je suis tombé sur une situation où je ne peux même pas écrire de code logique simple, alors je prendrai note de ce que j'ai appris lorsque j'ai réétudié, y compris la signification de la rééducation. Je l'ai résumé comme.
J'essaierai de mettre en œuvre l'histoire la plus représentative de M. Nabeats (M. Katsura Mitsudo) dans le monde, "Seulement quand le nombre est un multiple de 3 et le nombre avec 3 est stupide" dans diverses langues.
** Wikipédia --Katsura 3e # Histoire principale et gag ** https://ja.wikipedia.org/wiki/桂三度#主な持ちネタ&ギャグ
Je produis simplement des nombres de 1 à 100 avec des sauts de ligne, mais seulement quand le nombre est un multiple de 3 et le nombre a 3, la lettre faciale "٩ (ᐛ) و" est combinée avec ": (deux-points)". Sortie après le nombre.
Image de sortie
1
2
3 : ٩( ᐛ )و
4
5
6 : ٩( ᐛ )و
7
8
9 : ٩( ᐛ )و
10
11
12 : ٩( ᐛ )و
13 : ٩( ᐛ )و
14
15 : ٩( ᐛ )و
16
17
18 : ٩( ᐛ )و
19
20
21 : ٩( ᐛ )و
22
23 : ٩( ᐛ )و
24 : ٩( ᐛ )و
25
26
27 : ٩( ᐛ )و
28
29
30 : ٩( ᐛ )و
31 : ٩( ᐛ )و
32 : ٩( ᐛ )و
33 : ٩( ᐛ )و
34 : ٩( ᐛ )و
35 : ٩( ᐛ )و
36 : ٩( ᐛ )و
37 : ٩( ᐛ )و
38 : ٩( ᐛ )و
39 : ٩( ᐛ )و
40
41
42 : ٩( ᐛ )و
43 : ٩( ᐛ )و
44
45 : ٩( ᐛ )و
46
47
48 : ٩( ᐛ )و
49
50
51 : ٩( ᐛ )و
52
53 : ٩( ᐛ )و
54 : ٩( ᐛ )و
55
56
57 : ٩( ᐛ )و
58
59
60 : ٩( ᐛ )و
61
62
63 : ٩( ᐛ )و
64
65
66 : ٩( ᐛ )و
67
68
69 : ٩( ᐛ )و
70
71
72 : ٩( ᐛ )و
73 : ٩( ᐛ )و
74
75 : ٩( ᐛ )و
76
77
78 : ٩( ᐛ )و
79
80
81 : ٩( ᐛ )و
82
83 : ٩( ᐛ )و
84 : ٩( ᐛ )و
85
86
87 : ٩( ᐛ )و
88
89
90 : ٩( ᐛ )و
91
92
93 : ٩( ᐛ )و
94
95
96 : ٩( ᐛ )و
97
98
99 : ٩( ᐛ )و
100
Vous pouvez utiliser grep
pour juger des" nombres avec 3 ", c'est donc étonnamment simple à écrire.
Pour Bash
for i in $(seq 1 100) #Boucle à travers les nombres de 1 à 100
do
if [ $(($i % 3)) == 0 ] || [ $(echo "$i" | grep "3") ] #Soyez stupide seulement quand c'est un multiple de 3 et un nombre avec 3
then
echo "${i} : ٩( ᐛ )و"
else
echo "$i" #Autre que cela, seule sortie numérique
fi
done
Le jugement du "nombre avec 3" est "String.valueOf (i) .indexOf (" 3 ")! = -1`
Pour Java
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
//Boucle à travers les nombres de 1 à 100
for(int i=1; i<=100; i++){
//Soyez stupide seulement quand c'est un multiple de 3 et un nombre avec 3
if(i%3 == 0 || String.valueOf(i).indexOf("3") != -1 ){
System.out.println(i + " : ٩( ᐛ )و");
} else {
System.out.println(i);
}
}
}
}
Je pense que vous pouvez écrire de différentes manières, mais j'ai personnellement essayé de l'écrire comme Scala.
Pour Scala
object Main extends App{
println(1 to 100 map ((n) => { //Générer une carte en utilisant un nombre de 1 à 100 comme clé
var s = n.toString() //Remplacez la clé convertie en chaîne de caractères comme par la valeur de la carte
if(n % 3 == 0 || s.contains('3')) {s += " : ٩( ᐛ )و"} //Soyez stupide seulement quand c'est un multiple de 3 et un nombre avec 3
s
}) reduceLeft ((s,e) => { s + "\n" + e }) ) //Sortie dans l'ordre tout en cassant la valeur de la carte
}
Je pense que vous pouvez écrire de différentes manières dans le cas de PowerShell, mais j'ai essayé de l'écrire comme une fonction suivant Scala
Pour PowerShell
1..100 |
%{
if (($_ % 3 -eq 0) -or ($_ -match "3")) { echo("$_" + " : ٩( ᐛ )و") }
else { echo("$_") }
}
Je pense que Python est un langage très simple pour écrire ce genre de traitement
Pour Python 3
# coding: utf-8
for num in range(1, 100+1):
if num % 3 == 0 or "3" in str(num):
print("{0} : ٩( ᐛ )و".format(num))
else:
print(num)
Comme Python, Ruby est un langage très facile à écrire.
Pour Ruby
#!/bin/env ruby
for i in 1..100
if i % 3 == 0 || i.to_s =~ /3/
printf( "%d : ٩( ᐛ )و\n", i )
else
printf( "%d\n", i )
end
end
Je pensais que Golang aurait du mal avec la conversion de type, mais j'ai pu l'écrire simplement de manière inattendue.
Pour aller
package main
import (
"fmt"
"strconv"
"strings"
)
func main() {
//Boucle à travers les nombres de 1 à 100
for i := 1; i <= 100; i++ {
//Convertir un entier en chaîne
var s string = strconv.Itoa(i)
//Soyez stupide seulement quand c'est un multiple de 3 et un nombre avec 3
if i%3 == 0 || strings.Contains(s, "3") {
fmt.Println(s + " : ٩( ᐛ )و")
} else {
fmt.Println(s)
}
}
}
c'est tout.
Si vous en avez envie, j'essaierai d'autres langues.