Skrypt w Bashu
-
- Użytkownik
- Posty: 114
- Rejestracja: 29 paź 2007, o 19:00
- Płeć: Mężczyzna
- Lokalizacja: Rybnik
- Podziękował: 50 razy
Skrypt w Bashu
Czy ktos pomogl by mi napisac program do sprawdzania liczb pierwszych w powloce bash?
-
- Użytkownik
- Posty: 41
- Rejestracja: 19 paź 2008, o 20:59
- Płeć: Mężczyzna
- Lokalizacja: Szczecin
- Pomógł: 5 razy
Skrypt w Bashu
Kod: Zaznacz cały
i=$1
p="0"
x="2"
while [ $x -lt $i ]
do
if [ $(expr $i % $x) -eq "0" ] ; then p="1"; fi
x=$(expr $x + 1)
done
if [ $p -eq "1" ] ; then echo "nie"; fi;
if [ $p -eq "0" ] ; then echo "tak"; fi;
Kod: Zaznacz cały
sh lpi.sh liczba
-
- Użytkownik
- Posty: 41
- Rejestracja: 19 paź 2008, o 20:59
- Płeć: Mężczyzna
- Lokalizacja: Szczecin
- Pomógł: 5 razy
Skrypt w Bashu
Kod: Zaznacz cały
i=$1
p="0"
x="2"
Kod: Zaznacz cały
while [ $x -lt $i ]
do
if [ $(expr $i % $x) -eq "0" ] ; then p="1"; fi
x=$(expr $x + 1)
done
if [ $p -eq "1" ] ; then echo "nie"; fi;
if [ $p -eq "0" ] ; then echo "tak"; fi;
jeśli $i jest podzielne przez $x, wtedy liczba jest niepierwsza
powiększ i o jeden i kontynuuj pętlę "dopóki"
}
Jeśli p=1 to wyświetl "nie"
Jeśli p=0 to wyświetl "tak"
-
- Użytkownik
- Posty: 114
- Rejestracja: 29 paź 2007, o 19:00
- Płeć: Mężczyzna
- Lokalizacja: Rybnik
- Podziękował: 50 razy
Skrypt w Bashu
program wyswietla mi taki blad:
lpi.sh: line 6: [:2+1: integer expression expected
O co chodzi? Dodam ze mimo tego program robi to co powinien.
lpi.sh: line 6: [:2+1: integer expression expected
O co chodzi? Dodam ze mimo tego program robi to co powinien.
-
- Użytkownik
- Posty: 41
- Rejestracja: 19 paź 2008, o 20:59
- Płeć: Mężczyzna
- Lokalizacja: Szczecin
- Pomógł: 5 razy
Skrypt w Bashu
Najwyraźniej twoje $i nie było liczbą.
Możliwe też, że u ciebie expr wyrzuca jakieś dzikie rytuały.
Możliwe też, że u ciebie expr wyrzuca jakieś dzikie rytuały.