Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: C: Etsi alkuluvut haluamaltasi väliltä

Baglair [28.11.2005 19:04:31]

#

Tämän ohjelman avulla voit tulostaa alkuluvut haluamaltasi väliltä. En mene ihan takuuseen ohjelman virheettömyydestä. Tuntuu kovasti sille, että tämmöinen ohjelma olisi jo postattu tänne vinkkeihin C:llä mutta enpä ainakaan itse löytänyt moista. Pahoittelen jos kuitenkin joku on jo postannut tänne samallaisen vinkin.

//Alkuluku generaattori
//Tämän ohjelman tarkoitus on etsiä alkuluvut, jotka löytyvät halutulta väliltä.

//Alkuluvuksi luokitellan luku, joka on jaollinen vain itsellään ja yhdellä ja kuuluu luonnolisten lukujen joukkoon.
#include <stdio.h>

#define	LUKU_MIN	0	//Minimi luku miltä väliltä alkulukuja etsitään
#define	LUKU_MAX	100	//Maksimi luku miltä väliltä alkulukuja etsitään
#define	RIVI_MAX	5	//Montako lukua per rivi.

main()
{
	unsigned int luku, rivi = 0;

	for(luku = LUKU_MIN; luku <= LUKU_MAX; ++luku)	{
//Huomioo ei voida ottaa lukuja 2, 3, 5, koska ne ovat jaollisia itsellään ja siksi alkulukuja.
		if(luku % 2 != 0 || luku == 2)	{
			if(luku % 3 != 0 || luku == 3)	{
				if(luku % 5 != 0 || luku == 5)	{
					if(rivi >= RIVI_MAX)	{
						printf("\n");
						rivi = 0;
					}
//Varataan luvuille 5-numeroinen paikka.
					printf("%5d", luku);
					++rivi;
				}
			}
		}
	}
}

Antti Laaksonen [04.12.2005 13:33:12]

#

Pelkkä kakkosella, kolmosella ja viitosella kokeilu ei riitä. Nyt ohjelman mukaan esim. 49 on alkuluku, vaikka 7 * 7 = 49.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta