Kurzusok
/
Scheme
Scheme
/
Feladatok
/
Pascal-háromszög
Pascal-háromszög

Pascal-háromszög

Közepes

Bevezetés

Remek az idő, és egyáltalán nem vágysz arra, hogy egy egész órát az osztályteremben tölts. Bosszúsan lépsz be a terembe, ahol furcsán kielégítő háromszögformát veszel észre a táblán. Amíg a matektanárodra vársz, nem tudod nem észrevenni a háromszög néhány mintázatát: a szélső értékek mind egyesek, minden következő sorban eggyel több érték van, mint az előzőben, és a háromszög szimmetrikus. Furcsa!

Nem sokkal azután, hogy leülsz, belép a terembe a tanárod, és elmagyarázza, hogy ez a háromszög a híres Pascal-háromszög.

A következő órában a tanárod lenyűgöző dolgokat tár fel, amelyek ebben a háromszögben rejtőznek:

  • Arra használható, hogy kiszámítsd, hányféleképpen választhatsz ki K elemet N érték közül.
  • Tartalmazza a Fibonacci-sorozatot.
  • Ha a páratlan és a páros számokat eltérően színezed, egy gyönyörű mintázatot kapsz, amelyet Sierpiński-háromszögnek neveznek.

A tanár arra kér téged és az osztálytársaidat, hogy keressetek más felhasználási módokat is, és biztosít róla, hogy még rengeteg van! Ebben a pillanatban megszólal az iskolacsengő. Rádöbbensz, hogy az elmúlt egy órában teljesen elmerültél a Pascal-háromszög megismerésében. Gyorsan kikapod a laptopod a táskából, és kimész a szabadba, készen arra, hogy élvezd a napsütést és a Pascal-háromszög csodáit.

Utasítások

A feladatod, hogy kiírd a Pascal-háromszög első N sorát.

A Pascal-háromszög pozitív egész számok háromszög alakban elrendezett tömbje.

A Pascal-háromszögben egy sorban annyi érték van, amennyi a sor száma (amely egytől indul). Ezért az első sorban egy érték van, a másodikban kettő, és így tovább.

A legelső (legfelső) sorban egyetlen érték van: 1. A további sorok értékeit úgy számítjuk ki, hogy összeadjuk az előző sorban az aktuális pozíció közvetlenül jobbra és balra lévő számait.

Ha az előző sorban az aktuális pozíciótól balra vagy jobbra nincs érték (ez csak a legszélső baloldali és jobboldali pozícióknál fordul elő), akkor az adott pozíció értékét nullának tekintjük (az összegzésben gyakorlatilag „figyelmen kívül hagyjuk”).

Példa

Nézzük meg a Pascal-háromszög első 5 sorát:

    1
   1 1
  1 2 1
 1 3 3 1
1 4 6 4 1

A legfelső sorban egyetlen érték van, ami 1.

A legszélső bal- és jobboldali értékeknél csak egyetlen előző pozíciót vehetünk figyelembe, mégpedig a tőlük jobbra, illetve balra esőt. Mivel a legfelső érték 1, ebből az következik, hogy minden legszélső bal- és jobboldali érték szintén 1.

A többi értéknél két pozíciót kell figyelembe venni. Például az ötödik sor (1 4 6 4 1) középső értéke 6, mivel az előző sorban tőle balra és jobbra a 3 és a 3 áll:

Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Scheme Exercism

Készen állsz elkezdeni a(z) Pascal-háromszög feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Scheme nyelvet 39 feladat segítségével, valódi emberi mentorálással, mindez ingyen.