Bu Konuyu Okuyanlar: 1 ZiyaretÇi
Cevapla 
 
DeÄŸerlendir:
  • 0 Oy - 0 Yüzde
  • 1
  • 2
  • 3
  • 4
  • 5
Asal Sayılar
04-14-2010, 11:43 AM
Mesaj: #1
Asal Sayılar
asalsayi.sh

a=5
b=3
c=`echo "$a / $b"|bc -l`
echo $c

Çıktı: ./asalsayi.sh

1.66666666666666666666


Bölünme kuralları 2,3,5,7 sayılarının her biri ile bölündüğünde 1.4 gibi ondalıklı sayı veriyorsa asal sayıdır.

Algoritma

Kontrol et 2 ile bolunuyormu direkt noktasiz bir sonuc cikarsa donguden cik eger noktali cikarsa 3'e bolunmeyi devam ederek if dongulerini
for loop'u icinde 7'de dahil olmak üzere test et.En sonuncu 7 islemindede ondali bir sonuc cikarsa asal sayidir.


Aşağıda tam olarak çalışan kod yer almaktadır.

asalsayilar.sh

#!/bin/bash
#Bu program 100'e kadar olan asal sayilari ekrana bastirir.
echo
echo "Bu program verdiginiz degere kadar olan asal sayilari hesaplar."
echo
echo "10 sayisindan buyuk olmak uzere lutfen hesaplanmasini istediginiz sayiya kadar deger giriniz (örnek:1000 girerseniz 1000'e kadar olan asal sayilar hesaplanacaktir."
echo
echo "Lutfen Sayiyi Giriniz:"
echo
read line
echo "Girdiginiz sayi $line 'dir. $line 'e kadar olan asal sayilar:"

echo "2 Bir asal sayidir."
echo "3 Bir asal sayidir."
echo "5 Bir asal sayidir."
echo "7 Bir asal sayidir."



for (( i=1 ; i <= $line; i++))
do
kontrol1=`echo "$i / 2"|bc -l`
kontrol2=`echo "$i / 3"|bc -l`
kontrol3=`echo "$i / 5"|bc -l`
kontrol4=`echo "$i / 7"|bc -l`

kontrol_sonuc1=`echo $kontrol1 |grep .00000000000000000000|grep -v grep|wc -l`
kontrol_sonuc2=`echo $kontrol2 |grep .00000000000000000000|grep -v grep|wc -l`
kontrol_sonuc3=`echo $kontrol3 |grep .00000000000000000000|grep -v grep|wc -l`
kontrol_sonuc4=`echo $kontrol4 |grep .00000000000000000000|grep -v grep|wc -l`

if test $kontrol_sonuc1 -eq 1
then
echo > /dev/null
elif [ $kontrol_sonuc2 -eq 1 ]
then
echo > /dev/null
elif [ $kontrol_sonuc3 -eq 1 ]
then
echo > /dev/null
elif [ $kontrol_sonuc4 -eq 1 ]
then
echo > /dev/null
else
echo "$i Bir asal sayidir."
fi

done

Özdemir Şarman
aka (Charmant-zavanetratan)
Web Sayfasını Ziyeret Edin Tüm Mesajlarını Bul
Alıntı Yaparak Cevapla
Cevapla 


'Asal Sayılar' Konusunu Paylaş
  • RSS
  • del.icio.us
  • StumbleUpon
  • Digg
  • TwitThis
  • Facebook
  • Reddit
  • Google
  • YahooMyWeb
  • E-mail

Forum Atla:


İletişim | SistemOdasi.net | Yukarıya dön | İçeriğe Dön | RSS
site ekle
Zirve100
Toplist