OSZ-Banner


Informatik in-a2 2014


Zeilen des pascalschen Dreiecks als Liste ausgeben

Die Zeilen des pascalschen Dreiecks sollen als Liste ausgegeben weren. Dazu wird ein rekursiver Algorithmus verwendet.
Das Skript ist bei kleinen Zeilennummern gut zu gebrauchen, aber bei Zeilennummern größer als 11 braucht man Geduld.

Beispielcode:


#!/usr/bin/python
#Pascalsches Dreieck zeilenweise

def zeilen(n):
  zeile = [] # leere Liste initialisieren
  for i in range(0,n+1): # jedes Element der Zeile
      if i == 0: # Test auf 0. Element
	zeile.append(1) # Setze 0. Element auf 1
      elif i == 1: # Test auf 1. Element
	zeile.append(n) # Setze erstes auf n
      else:
	if i == n: # Test n-tes Element
	  zeile.append(1)# Setze n-tes Element auf 1
	elif i == n-1: #Test auf vorletztes Element
	  zeile.append(n) # Setze vorletztes Element auf n
	else:
	  zeile.append(zeilen(n-1)[i-1] + zeilen(n-1)[i]) #Rekursion
	  
  return zeile

 
#Hauptprogramm

n = input("Gib eine Zeilennummer an!: ")

print zeilen(n)



Fakultät einer natürlichen Zahl mit Rekursion


#!/usr/bin/python
# -*- coding: utf-8 -*-

def faku(n):
  if n == 1:
    return 1
  else:
    return n * faku(n-1)


#Hauptprogramm

n = input("Gib eine natürliche Zahl an!: ")

print faku(n)


Dieser Code wertet z.B. die Zahl 5 folgendermaßen aus:
↝ 5 * faku(4)
↝ 5 * 4 * faku(3)
↝ 5 * 4 * 3 * faku(2)
↝ 5 * 4 * 3 * 2 * faku(1)
↝ 5 * 4 * 3 * 2 * 1
↝ 120

Erstellt am 26.5.2014






Zurück zur Kursübersicht