Side 1 av 1

Primtall-algoritme matlab

Lagt inn: 04/12-2008 14:25
av hanskr
Hei jeg har skrevet en algoritme for å finne primtall i matlab, den fungerer, men skulle gjerne hatt enda flere primtall å kose meg med :)
har kommet så langt som dette:

Kode: Velg alt

function primliste=primtall(a)
primliste=zeros(1,a);
i=2;
primliste(1)=2;
tall=3;
while i<=a
    k=2;
    busted=false;
    while busted==false
        sisteprim=primliste(k-1);
        if mod(tall,sisteprim)==0
            busted=true;
        end
        if sisteprim>(tall/sisteprim)
            primliste(i)=tall;
            i=i+1;
            busted=true;
         end
        k=k+1;
    end
    tall=tall+2;
end
end
her har jeg brukt primtallene jeg finner til å sjekke alle oddetall med, i tilleg til trikset at om

sisteprim>(tall/sisteprim) der sisteprim er det siste primtallet som tall ble sjekket opp mot

er sant, så er tallet et primtall. Så jeg håper det er noen som har flere triks å komme med.

Lagt inn: 04/12-2008 15:06
av FredrikM
Kan ikke MATLAB, men et hint når du skriver kode på forum er å skrive det mellom

Kode: Velg alt

 og [ /code] (uten mellomrom). Da blir det mye enklere å lese:
[code]
def somefunc(var1, var2):
    return var1*var2

Lagt inn: 08/12-2008 19:47
av hanskr
Kan dere ingenting om primtall? Skulle tro at det var minst en person her som ikke satt med fingeren opp i rompa.... :evil:

Lagt inn: 08/12-2008 20:01
av =)
hvis du vil ha primtall så bare bruk den innlagte primes(n) funksjonen i matlab, hvis du vil lage en algoritme som virker, så har du gjort det. =D

Lagt inn: 08/12-2008 23:13
av Magnus
Var ikke svarene du fikk på IRC gode nok?

Lagt inn: 09/12-2008 15:00
av h
hanskr skrev:Kan dere ingenting om primtall? Skulle tro at det var minst en person her som ikke satt med fingeren opp i rompa.... :evil:
Tror nok du kan finne folk her som kan masse om primtall, men du kan sikkert finne penere måter og spørre på også