Ich bin endlich ofiziell ein Linux-nerd
(Dieser Post ist eine Übersetzung vom letzen auf Englisch)
Hallo! Meine Seite war bis zum heutigen Tag (oder, ehrlicher, Monaten) sehr inaktiv. Ich habe mich in dieser Zeitpunkt auf die Schularbeit konzentriert, aber jetzt bin ich endlich ein NEET Absolvent, also kann ich wieder aktiver sein :D
Zum Thema dieses Postes, Ich habe nie meine eigene Bash-Skripte selbst gemacht, sondern nur die Bash-Skripte von anderen verwendet. Dann habe Ich ein Video von der tollen Linux-Youtuberin Bread on Penguins geschaut, das nützliche und ungemeine gnu coreutils präsentiert hat. Das "factor" coreutil hat mir die Idee gegeben, ein "Faktorisierungsspiel" zu machen.
Ich klautete den Primzahlcheck von Baeldung Ich habe NIEMALS im Leben geklaut un bin sehr kreativ ;)
Das Spiel!
#!/bin/bash
#Variables
declare -i x=$RANDOM
declare -i isfactorable=0
#make sure x is factorable
while [ $isfactorable == 0 ] ; do
x=$RANDOM
factor $x | grep -qE '^(.*): \1$' && isfactorable=0 || isfactorable=1
done
#first question
read -p " Your number is $x. Find a factor to divide it by! - " n
#game loop
while [ true ] ; do
#unique factor requirement
if (($n == $x)) || (($n == 1)) ; then
read -p " Too easy, no cheating! Your number is still $x. Find a factor to divide it by! - " n
#unique factor selected
elif (( $x%$n == 0 )) ; then
x=$x/$n
factor $x | grep -qE '^(.*): \1$' && isfactorable=0 || isfactorable=1
#nonprime result = continue game
if (( isfactorable == 1 )) ; then
read -p " Good job! Your number is now $x. Find a factor to divide it by! - " n
else
#prime result = win
echo "Congratulations! You have factored the number down to a prime, and have won the game!"
sleep 2
exit
fi
#l bozo rip lol
else
echo "Sorry, you have lost the game! $n was not a factor of $x."
sleep 2
exit
fi
done