Halløj udviklere.
Jeg er i gang med at lære python, og har garderet mig med bogen "Dive into python", og er ved at være nået et godt stykke igennem den.
Jeg fik lyst til at lave et program, som kunne lave grupper for min klasse, hurtigt og nemt. Så jeg gik i gang, men er kørt lidt tør der hvor programmet skal uddele numre til de forskellige grupper.
Her er koden:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import random
print "Hvor mange elever er der i klassen? "
antalElever = int(raw_input())
print "Hvor mange grupper skal eleverne deles op i? "
antalGrupper = int(raw_input())
nrliste = range(1, antalElever+1) #antalElever +1 fordi python altid starter med at tælle fra 0 - Her laves listen af tallene som bliver indtastet i starten
random.shuffle(nrliste) #Her bliver tallene i listen blandet sammen
grupper = antalElever/antalGrupper #Her findes det antal elever der skal være i hver gruppe
for i in range (1, antalGrupper+1): #+1 fordi python altid starter med nul, og for at undgå at output starter med gruppe 0
if i <= antalGrupper:
print "Gruppe nr.", i, nrliste[0:grupper]
Las os antage, at der er blevet tastet 30 elever ind, som skal opdeles i 5 grupper, og at hver elev har hver sit nummer, et sted mellem 1 og 30. Ideen er så, at den til sidst skal skrive:
"Gruppe nr. 1 [1, 25, 3, 4, 7, 10]"
"Gruppe nr. 2 [2, 15, 17, 22, 6, 8]"
osv.
Men som det ser ud nu, skriver den jo bare:
"Gruppe nr. 1 [1, 25, 3, 4, 7, 10]"
"Gruppe nr. 2 [1, 25, 3, 4, 7, 10]"
osv.
Så mit spørgsmål er, hvad gør jeg, for at få den til at lave 5 grupper, men uden at putte den samme elev i to forskellige grupper?
Håber i forstår hvad jeg mener

På forhånd tak.
Thomas
Indlæg senest redigeret d. 08.02.2011 20:45 af Bruger #11033