Fájlok írása Pytonban!
Elkészült a Python nyelv Szövegfájlok írása tananyagunk! Jó tanulást, jó gyakorlást!

<info9>

Mintaprojekt: Faktoriális

Webtárhely, 5% kedvezménnyel!

Most, hogy belevágtál a programozásba, jól jönne egy olcsó webtárhely? A SzerverPlex kedvező árú cPanel tárhelyeit most 5% kedvezménnyel igénybeveheted, és ezzel az info9 fennmaradását is támogatod.

Kattints a gombra, majd a csomag kiválasztása után aktiváld az INFO9 kuponkódot a fizetés előtt.

Szerzek webtárhelyet!

Feladat: Készítsünk egy programot, ami bekér egy számot a felhasználótól, majd meghatározza annak faktoriálisát!

Minta kimenet

Megfelelő működés esetén a program kimenetének (5-ös szám beírása esetén) így kell kinéznie:

Szám: 5
Faktoriálisa: 120

A projekt megoldása

A feladat megoldásának a forráskódját itt találod. A kód egyes részeihez magyarázó kommentek tartoznak az átláthatóság érdekében. Ha szeretnéd, akkor ezeket az alábbi checkbox használatával elrejtheted:

Tudtad?
A változó neve mögé írt két plusz jel, amit az itteni példában láthatsz, egy operátor, ami megnöveli a változó értékét 1-gyel. Tehát igazából az szorzo++ ugyanaz, mint ha ezt írnád: szorzo = szorzo + 1.
Console.Write("Szám: "); 
// Mivel szeretnénk, hogy a felhasználó által beírt szám egy sorban legyen a kiírással, így a Write-ot
// használjuk a WriteLine helyett

int szam = Convert.ToInt32(Console.ReadLine()); 
// Bekérjük a számot, aminek a szorzótábláját ki szeretnénk íratni. Mivel egész számként szeretnénk
// letárolni, ezért a ReadLine-nal beolvasott szöveget át kell konvertálnunk a Convert.ToInt32 
// utasítással.
int eredmeny = 1;
// Létrehozunk egy változót, amibe az eredmény aktuális állását tároljuk. Mivel a faktoriális
// kiszámításához szorozgatni fogunk, nem állíthatjuk 0-ra ezt a változót, mert akkor minden 
// későbbi érték is 0 maradna, így a megfelelő működés érdekében 1-ről indítjuk.

for(int i = 1; i <= szam ; i++)
{
    // A for ciklus inicializáló kifejezésében létehozunk egy i nevű változót, ezt fogjuk használni
    // arra, hogy kövessük, hogy hol tartunk a szorozgatásban, illetve kiszámoljuk a soron következő
    // faktoriálist.
	
    // A for ciklus feltétele: i <= szam, mert ha a szam változóban tárolt szám faktoriálisára vagyunk 
    // kíváncsiak, akkor az kell hogy legyen az utolsó szám amit beleszámolunk.
	
    // A léptető kifejezés: i++, ami ugyanaz, mint ha azt írnánk, hogy i=i+1, tehát megnöveli az i-t
    // 1-gyel, hogy a következő körben már a következő számmal szorozzunk.

    eredmeny = eredmeny * i;
    // Ahhoz, hogy a számokat sorban összeszorozhassuk, az eredmeny változót használjuk, ezt fogjuk
    // a ciklus minden iterációjában megszorozni azzal a számmal, ahol éppen tartunk, így tulajdonképpen 
    // a ciklus minden egyes lefutása után egy újabb szám faktoriálisát kapjuk meg. Hála a feltételnek, 
    // ezt pontosan addig fogjuk ismételni, ameddig el nem jutunk a begépelt szám faktoriálisáig.
}

Console.Write("Faktoriálisa: ");
// Mivel szeretnénk, hogy az eredmény a felirattal egy sorban legyen, a Write-ot használjuk.
Console.WriteLine(eredmeny);
// Kiírjuk az eredményt.