From 6fff53bc0c204d2333a37768556f586a61e8f537 Mon Sep 17 00:00:00 2001 From: FraioVeio Date: Sat, 26 Mar 2022 15:11:48 +0100 Subject: [PATCH] Beautiful bash code :) --- Triangles.sh | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100755 Triangles.sh diff --git a/Triangles.sh b/Triangles.sh new file mode 100755 index 0000000..3a8980b --- /dev/null +++ b/Triangles.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +# Dato un numero intero n, produrre in output un triangolo rettangolo in cui i +# cateti sono lunghi n e il perimetro sia delineato con il carattere * in ogni punto. +# I cateti devono essere in alto e a sinistra. Esempio, dato n=5: + +echo -n "Lato triangolo: " +read lato +printf "\n" + +if [ $lato == 1 ] +then + echo "*" +elif [ $lato == 2 ] +then + echo "**" + echo "*" +elif [ $lato -lt 1 ] +then + echo "Lato non valido" +else + printf "%0.s*" $(seq 1 $lato) + printf "\n" + + for i in $(seq 1 $(( $lato - 1 ))) + do + printf "*" + spazi=$(( $lato - $i - 2 )) + if [ $spazi -gt 0 ] + then + printf "%0.s " $(seq 1 $spazi) + fi + if [ $spazi -gt -1 ] + then + printf "*\n" + fi + done + printf "\n" +fi