started C stuff
This commit is contained in:
12
src/C/newcow.c
Normal file
12
src/C/newcow.c
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
const char *cow = " ^__^\n"
|
||||||
|
" (oo)\\_______\n"
|
||||||
|
" (__)\\ )\\/\\\n"
|
||||||
|
" ||----w |\n"
|
||||||
|
" || ||\n";
|
||||||
|
|
||||||
|
printf("%s", cow);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
@@ -1,12 +1,33 @@
|
|||||||
while :; do # on utilise ce code pour etre sur qu'il n'y a pas de biais sur la génération de nombres aléatoire car il y a plus de chance sinon de tomber
|
# Also support other operation as * / and - although / doesn't really work because it becames a float
|
||||||
# sur un nombre entre 0-17 que sur un nombre entre 0-49
|
# Also super weird with letters and doesn't seems to convert them to ascii ?? so weird...
|
||||||
ra=$RANDOM
|
# might be a bit dangerous cuz bc directly evaluate the expression passe in arg, so if there is any vulnerabilities like code injection in bc, then it will be a problem
|
||||||
((ra < 32750)) && r1=$((ra % 50)) && break # On peut avoir aussi une chance infiniment petite que la boucle ne finisse jamais donc a voir....
|
|
||||||
done
|
|
||||||
|
|
||||||
while :; do # Pareil mais les valeures favorisée aurait été entre 0-25
|
if [ $# -eq 0 ]; then
|
||||||
rb=$RANDOM
|
# Original random number generation if no argument
|
||||||
((rb < 32742)) && r2=$((rb % 51)) && break
|
while :; do # on utilise ce code pour etre sur qu'il n'y a pas de biais sur la génération de nombres aléatoire car il y a plus de chance sinon de tomber
|
||||||
done
|
# sur un nombre entre 0-17 que sur un nombre entre 0-49
|
||||||
# on génère entre 0 et 50/49 pour ne pas dépasser les 2 characters limites pour les yeux
|
ra=$RANDOM
|
||||||
cowsay -e "$(($r1 + $r2))" "$r1 + $r2"
|
((ra < 32750)) && r1=$((ra % 50)) && break # On peut avoir aussi une chance infiniment petite que la boucle ne finisse jamais donc a voir....
|
||||||
|
done
|
||||||
|
while :; do # Pareil mais les valeures favorisées aurait été entre 0-25
|
||||||
|
rb=$RANDOM
|
||||||
|
((rb < 32742)) && r2=$((rb % 51)) && break
|
||||||
|
done
|
||||||
|
result=$((r1 + r2))
|
||||||
|
message="$r1 + $r2 = $result"
|
||||||
|
else
|
||||||
|
expression="$1"
|
||||||
|
result=$(echo "scale=2; $expression" | bc -l)
|
||||||
|
|
||||||
|
message="$expression"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ${#result} -gt 2 ]]; then
|
||||||
|
echo "Note: Result has more than 2 digits - won't display in cow's eyes"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ${#result} -lt 2 ]]; then
|
||||||
|
echo "Note: Result has less than 2 digits - will render weirdly"
|
||||||
|
fi
|
||||||
|
# Max deux digit si plus -> truncate; si moins on a un rendu bizarre
|
||||||
|
cowsay -e "$result" "$message"
|
||||||
|
|||||||
Reference in New Issue
Block a user