Bash Pagina 119: Diferență între versiuni

De la Wiki Linux Advanced
Sari la navigare Sari la căutare
Fără descriere a modificării
Linia 1: Linia 1:
== Exerciții recapitulative ==
== Exercitii Recapitulare Bash ==


Această pagină wiki conține o serie de exerciții pentru a recapitula sintaxa și conceptele esențiale în Bash. Fiecare exercițiu se concentrează pe utilizarea diferitelor structuri de control, cum ar fi ''if'', ''while'', ''for'', și altele. Exercițiile variază de la afișarea numerelor până la identificarea numerelor prime.
1. Afișarea numerelor pare
#!/bin/bash
for ((i=1; i<=20; i++)); do
    if ((i % 2 == 0)); then
        echo "$i"
    fi
done
2. Afișarea numerelor impare
#!/bin/bash
for ((i=1; i<=20; i++)); do
    if ((i % 2 != 0)); then
        echo "$i"
    fi
done
3. Afișarea numerelor prime
#!/bin/bash
for ((num=2; num<=100; num++)); do
    is_prime=1
    for ((i=2; i*i<=num; i++)); do
        if ((num % i == 0)); then
            is_prime=0
            break
        fi
    done
    if ((is_prime)); then
        echo "$num"
    fi
done
4. Afișarea factorialului unui număr
#!/bin/bash
read -p "Introduceți un număr: " n
factorial=1
for ((i=1; i<=n; i++)); do
    factorial=$((factorial * i))
done
echo "Factorialul lui $n este $factorial"
5. Afișarea tabloului de înmulțire
#!/bin/bash
for ((i=1; i<=10; i++)); do
    for ((j=1; j<=10; j++)); do
        echo -n "$((i * j)) "
    done
    echo
done
6. Afișarea numerelor Fibonacci
#!/bin/bash
a=0
b=1
echo "Numerele Fibonacci:"
for ((i=0; i<10; i++)); do
    echo "$a"
    fn=$((a + b))
    a=$b
    b=$fn
done
7. Verificarea dacă un număr este par sau impar
#!/bin/bash
read -p "Introduceți un număr: " num
if ((num % 2 == 0)); then
    echo "$num este par."
else
    echo "$num este impar."
fi
8. Afișarea numerelor de la 1 la 50 folosind while
#!/bin/bash
i=1
while ((i <= 50)); do
    echo "$i"
    ((i++))
done
9. Numărarea vocale în șir
#!/bin/bash
read -p "Introduceți un șir: " str
count=0
for ((i=0; i<${#str}; i++)); do
    char="${str:i:1}"
    if [[ $char =~ [aeiouAEIOU] ]]; then
        ((count++))
    fi
done
echo "Numărul de vocale în șirul dat este: $count"
10. Afișarea zilelor săptămânii
#!/bin/bash
days=("Luni" "Marți" "Miercuri" "Joi" "Vineri" "Sâmbătă" "Duminică")
for day in "${days[@]}"; do
    echo "$day"
done
11. Afișarea inversă a unui șir
#!/bin/bash
read -p "Introduceți un șir: " str
rev_str=""
for ((i=${#str}-1; i>=0; i--)); do
    rev_str+="${str:i:1}"
done
echo "Șirul inversat este: $rev_str"
12. Verificarea unui număr prim
#!/bin/bash
read -p "Introduceți un număr: " num
is_prime=1
if ((num < 2)); then
    is_prime=0
else
    for ((i=2; i*i<=num; i++)); do
        if ((num % i == 0)); then
            is_prime=0
            break
        fi
    done
fi
if ((is_prime)); then
    echo "$num este prim."
else
    echo "$num nu este prim."
fi
13. Afișarea pătratelor numerelor de la 1 la 10
#!/bin/bash
for ((i=1; i<=10; i++)); do
    echo "$i^2 = $((i * i))"
done
14. Afișarea tabelului de împărțire
#!/bin/bash
for ((i=1; i<=10; i++)); do
    for ((j=1; j<=10; j++)); do
        echo -n "$((j / i)) "
    done
    echo
done
15. Afișarea numerelor de la 1 la 100 care sunt divizibile cu 3
#!/bin/bash
for ((i=1; i<=100; i++)); do
    if ((i % 3 == 0)); then
        echo "$i"
    fi
done
16. Afișarea numerelor de la 1 la 100 care sunt divizibile cu 5
#!/bin/bash
for ((i=1; i<=100; i++)); do
    if ((i % 5 == 0)); then
        echo "$i"
    fi
done
17. Afișarea numerelor de la 1 la 100 care sunt atât pare, cât și divizibile cu 4
#!/bin/bash
for ((i=1; i<=100; i++)); do
    if ((i % 2 == 0 && i % 4 == 0)); then
        echo "$i"
    fi
done
18. Afișarea numerelor de la 1 la 100 care sunt atât impare, cât și divizibile cu 3
#!/bin/bash
for ((i=1; i<=100; i++)); do
    if ((i % 2 != 0 && i % 3 == 0)); then
        echo "$i"
    fi
done
19. Afișarea numărului de linii dintr-un fișier
#!/bin/bash
read -p "Introduceți calea către fișier: " file
if [[ -f $file ]]; then
    lines=$(wc -l < "$file")
    echo "Numărul de linii din fișier este: $lines"
else
    echo "Fișierul nu există."
fi
20. Afișarea numerelor de la 1 la 50 folosind until
#!/bin/bash
i=1
until ((i > 50)); do
    echo "$i"
    ((i++))
done
Aceste exerciții acoperă diferite structuri de control și concepte în Bash, oferind o bază solidă pentru aprofundarea cunoștințelor în scriptingul Bash.




[[Bash_Pagina_118|Pagina anterioară]] | [[Bash_Pagina_120|Pagina următoare]]
[[Bash_Pagina_118|Pagina anterioară]] | [[Bash_Pagina_120|Pagina următoare]]

Versiunea de la data 30 octombrie 2024 20:25

Exercitii Recapitulare Bash

Această pagină wiki conține o serie de exerciții pentru a recapitula sintaxa și conceptele esențiale în Bash. Fiecare exercițiu se concentrează pe utilizarea diferitelor structuri de control, cum ar fi if, while, for, și altele. Exercițiile variază de la afișarea numerelor până la identificarea numerelor prime.

1. Afișarea numerelor pare

#!/bin/bash
for ((i=1; i<=20; i++)); do
   if ((i % 2 == 0)); then
       echo "$i"
   fi
done

2. Afișarea numerelor impare

#!/bin/bash
for ((i=1; i<=20; i++)); do
   if ((i % 2 != 0)); then
       echo "$i"
   fi
done

3. Afișarea numerelor prime

#!/bin/bash
for ((num=2; num<=100; num++)); do
   is_prime=1
   for ((i=2; i*i<=num; i++)); do
       if ((num % i == 0)); then
           is_prime=0
           break
       fi
   done
   if ((is_prime)); then
       echo "$num"
   fi
done

4. Afișarea factorialului unui număr

#!/bin/bash
read -p "Introduceți un număr: " n
factorial=1
for ((i=1; i<=n; i++)); do
   factorial=$((factorial * i))
done
echo "Factorialul lui $n este $factorial"

5. Afișarea tabloului de înmulțire

#!/bin/bash
for ((i=1; i<=10; i++)); do
   for ((j=1; j<=10; j++)); do
       echo -n "$((i * j)) "
   done
   echo
done

6. Afișarea numerelor Fibonacci

#!/bin/bash
a=0
b=1
echo "Numerele Fibonacci:"
for ((i=0; i<10; i++)); do
   echo "$a"
   fn=$((a + b))
   a=$b
   b=$fn
done

7. Verificarea dacă un număr este par sau impar

#!/bin/bash
read -p "Introduceți un număr: " num
if ((num % 2 == 0)); then
   echo "$num este par."
else
   echo "$num este impar."
fi

8. Afișarea numerelor de la 1 la 50 folosind while

#!/bin/bash
i=1
while ((i <= 50)); do
   echo "$i"
   ((i++))
done

9. Numărarea vocale în șir

#!/bin/bash
read -p "Introduceți un șir: " str
count=0
for ((i=0; i<${#str}; i++)); do
   char="${str:i:1}"
   if [[ $char =~ [aeiouAEIOU] ]]; then
       ((count++))
   fi
done
echo "Numărul de vocale în șirul dat este: $count"

10. Afișarea zilelor săptămânii

#!/bin/bash
days=("Luni" "Marți" "Miercuri" "Joi" "Vineri" "Sâmbătă" "Duminică")
for day in "${days[@]}"; do
   echo "$day"
done

11. Afișarea inversă a unui șir

#!/bin/bash
read -p "Introduceți un șir: " str
rev_str=""
for ((i=${#str}-1; i>=0; i--)); do
   rev_str+="${str:i:1}"
done
echo "Șirul inversat este: $rev_str"

12. Verificarea unui număr prim

#!/bin/bash
read -p "Introduceți un număr: " num
is_prime=1
if ((num < 2)); then
   is_prime=0
else
   for ((i=2; i*i<=num; i++)); do
       if ((num % i == 0)); then
           is_prime=0
           break
       fi
   done
fi
if ((is_prime)); then
   echo "$num este prim."
else
   echo "$num nu este prim."
fi

13. Afișarea pătratelor numerelor de la 1 la 10

#!/bin/bash
for ((i=1; i<=10; i++)); do
   echo "$i^2 = $((i * i))"
done

14. Afișarea tabelului de împărțire

#!/bin/bash
for ((i=1; i<=10; i++)); do
   for ((j=1; j<=10; j++)); do
       echo -n "$((j / i)) "
   done
   echo
done

15. Afișarea numerelor de la 1 la 100 care sunt divizibile cu 3

#!/bin/bash
for ((i=1; i<=100; i++)); do
   if ((i % 3 == 0)); then
       echo "$i"
   fi
done

16. Afișarea numerelor de la 1 la 100 care sunt divizibile cu 5

#!/bin/bash
for ((i=1; i<=100; i++)); do
   if ((i % 5 == 0)); then
       echo "$i"
   fi
done

17. Afișarea numerelor de la 1 la 100 care sunt atât pare, cât și divizibile cu 4

#!/bin/bash
for ((i=1; i<=100; i++)); do
   if ((i % 2 == 0 && i % 4 == 0)); then
       echo "$i"
   fi
done

18. Afișarea numerelor de la 1 la 100 care sunt atât impare, cât și divizibile cu 3

#!/bin/bash
for ((i=1; i<=100; i++)); do
   if ((i % 2 != 0 && i % 3 == 0)); then
       echo "$i"
   fi
done

19. Afișarea numărului de linii dintr-un fișier

#!/bin/bash
read -p "Introduceți calea către fișier: " file
if -f $file ; then
   lines=$(wc -l < "$file")
   echo "Numărul de linii din fișier este: $lines"
else
   echo "Fișierul nu există."
fi

20. Afișarea numerelor de la 1 la 50 folosind until

#!/bin/bash
i=1
until ((i > 50)); do
   echo "$i"
   ((i++))
done

Aceste exerciții acoperă diferite structuri de control și concepte în Bash, oferind o bază solidă pentru aprofundarea cunoștințelor în scriptingul Bash.


Pagina anterioară | Pagina următoare