Kodas: http://hastebin.com/ijuwulolay.vala
duom.txt failas:
9
15
3
18
81
Pagal viską ties skaičium 3 turėtu įšvesti į ekraną žodį Neturi ( nes skaičius yra pirminis ) tačiau nesuveikia, nerandu kame bėdos
Norėdamas rašyti pranešimą privalai prisijungti arba užsiregistruoti!
				
	
            
        1
      
          
    Bebras prieš 10 metų
bool pirminis(int n)
{
    int dalikliuKiekis = 0;
    for(int i=1; i < n; i++)
    {
        if (n % i == 0)
        {
            dalikliuKiekis++;
        }
    }
    if(dalikliuKiekis < 2)
    {
        return true;
    }
    else
    {
        return false;
    }
    dalikliuKiekis = 0;
}   
Bėda čia:
if(dalikliuKiekis < 2)
Visi skaičiai išskyrus vienetą, turi bent du daliklius, t.y. vienetą ir save patį. Tas pats 3 jis dalinasi iš 3 ir iš 1. Todėl tikrink ar dalikliu kiekis mažesnis ar lygus dviems.
            
        1
      
          
    GReddy prieš 10 metų
Problema radau. Bėda buvo ne tikrinime, o if;ą reikėjo i while cikla įmesti. Bet ačiū už bandymą padėti