GNU/Linux >> Tutoriales Linux >  >> Linux

Shell/Bash Script para encontrar números primos en Linux

Un número primo es un número entero que tiene exactamente 2 factores diferentes, 1 y él mismo. Un número que no es un número primo se llamará compuesto. Excepto el 1, todo número natural que es divisible solo por 1 y él mismo se llama número primo. Por ejemplo:2,3,5,7,11,13,17,19,23,29… etc.

  • Hay un total de 25 números primos hasta el 100 y 46 números primos hasta el 200.
  • 2 es el único número primo y el número primo más pequeño, el resto todos los números primos son impares.
  • 1 no es un número primo ni compuesto.

Bash Script para encontrar el número primo es un rango de números determinado

1. Configure el script como se muestra a continuación en el archivo /tmp/prime_num.sh:

#!/bin/bash

prime_1=0
echo "enter the range"
read n
echo " Prime number between 1 to $n is:"
echo "1"  
echo "2"
for((i=3;i<=n;))
do
  for((j=i-1;j>=2;))
  do
    if [  `expr $i % $j` -ne 0 ] ; then
      prime_1=1
    else
      prime_1=0
      break
    fi
    j=`expr $j - 1`
  done
  if [ $prime_1 -eq 1 ] ; then
    echo $i
  fi
  i=`expr $i + 1`
done

2. Asigne permisos ejecutables al archivo antes de ejecutarlo:

$ chmod +x /tmp/prime_num.sh

3. Ejecute el script como se muestra a continuación y proporcione un rango (por ejemplo, 50 para encontrar números primos entre 0 y 50).


Linux
  1. Cómo usar una contraseña cifrada en Linux Bash Shell Script

  2. find -exec una función de shell en Linux?

  3. Cómo buscar archivos usando expresiones regulares en el script de shell de Linux

  4. Script bash de Linux para extraer la dirección IP

  5. ¿Plantillas con Linux en un script de Shell?

Cómo almacenar un comando de Linux como una variable en el script de Shell

Cómo usar el comando Declare en Linux Bash Shell

Cómo instalar Linux Bash Shell en Windows 10

Cómo ejecutar Shell Script como servicio SystemD en Linux

Imprimir el tiempo de ejecución de la secuencia de comandos de Shell en Linux

¿Qué es Shebang en Linux Shell Scripting?