Creazione gruppi di lavoro

botolo

Nuovo Utente
30 Nov 2013
3
0
0
Buongiorno a tutti,
devo realizzare uno script possibilmente in php che, dati n iscritti a un corso, crea 4 gruppi di lavoro scegliendo "a caso" dagli n iscritti.
L'ottimizzazione sarebbe avere la possibilità che ogni iscritto dia una preferenza sul "compagno di corso", in modo da metterli nello stesso gruppo di lavoro.

Sapete se in giro c'è già qualcosa pronto? In alternativa mi dareste qualche "dritta"?

grazie!!!
 

flameseeker

Utente Attivo
27 Nov 2013
699
0
0
Ti scrivo al volo un codice di esempio per la divisione casuale degli iscritti nei gruppi:

PHP:
<?php

#> Definisco un array bidimensionale con un elemento per ogni gruppo presente (al momento: 4)
$gruppi = array(array(), array(), array(), array());

#> La lista degli iscritti totali
$iscritti = array('tizio', 'caio', 'sempronio', 'Clark Kent', 'Bruce Wayne', 'Peter Parker', 'Hollis T. Mason');


#> Mischio l'ordine della lista in modo casuale
shuffle($iscritti);


#> Infilo ogni iscritto in un gruppo dopo l'altro in ordine sparso
$num_gruppi = count($gruppi);

foreach ($iscritti as $i => $nominativo) {
	$gruppi[$i%$num_gruppi][] = $nominativo;
}


#> Faccio un print veloce per vedere la divisione dei nominativi nei gruppi
echo '<pre>';
print_r($gruppi);


Non l'ho testato, ma come concetto dovrebbe andare.
Considera che il numero dei gruppi e la lista degli iscritti puoi riempirla come credi nel contesto della tua applicazione ( probabilmente con un paio di query al database ).

Quanto alla questione "preferenze", io ti suggerirei di rispettarla solo se entrambi i compagni di corso si indicano vicendevolmente come preferenza (magari uno dei due non è d'accordo) e ti suggerirei di agire creando una nuova lista dove hai i nominativi con le loro preferenze che poi usi per spostare ulteriorimente gli iscritti fra le liste di gruppi già create.
 
Ultima modifica:

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Molto bravo flameseeker! , avevo preparato anchio un codice al volo ma niente a che vedere con il tuo.
Cambierei solo una cosa : la dichiarazione dell'array, di conseguenza il numero di gruppi
PHP:
$gruppi = array();
$num_gruppi = 4;
 

botolo

Nuovo Utente
30 Nov 2013
3
0
0
Ti scrivo al volo un codice di esempio per la divisione casuale degli iscritti nei gruppi:

PHP:
<?php

#> Definisco un array bidimensionale con un elemento per ogni gruppo presente (al momento: 4)
$gruppi = array(array(), array(), array(), array());

#> La lista degli iscritti totali
$iscritti = array('tizio', 'caio', 'sempronio', 'Clark Kent', 'Bruce Wayne', 'Peter Parker', 'Hollis T. Mason');


#> Mischio l'ordine della lista in modo casuale
shuffle($iscritti);


#> Infilo ogni iscritto in un gruppo dopo l'altro in ordine sparso
$num_gruppi = count($gruppi);

foreach ($iscritti as $i => $nominativo) {
	$gruppi[$i%$num_gruppi][] = $nominativo;
}


#> Faccio un print veloce per vedere la divisione dei nominativi nei gruppi
echo '<pre>';
print_r($gruppi);


Non l'ho testato, ma come concetto dovrebbe andare.
Considera che il numero dei gruppi e la lista degli iscritti puoi riempirla come credi nel contesto della tua applicazione ( probabilmente con un paio di query al database ).

Quanto alla questione "preferenze", io ti suggerirei di rispettarla solo se entrambi i compagni di corso si indicano vicendevolmente come preferenza (magari uno dei due non è d'accordo) e ti suggerirei di agire creando una nuova lista dove hai i nominativi con le loro preferenze che poi usi per spostare ulteriorimente gli iscritti fra le liste di gruppi già create.

GRAZIE MILLE!
Mi aspettavo solo dei link con suggerimenti e invece... super!
Adesso mi metto al lavoro e integro le varie query e l'integrazione con db.
Per la questione preferenze provo a metter giù due righe e se riesco nel mio intento le posterò!


Grazie ancora!!
 
Discussioni simili
Autore Titolo Forum Risposte Data
felino BuddyPress Gruppi: modificare gli step di creazione. WordPress 0
S Visualizza l'errore di creazione in MSSQL Database 4
M [Cerco][Gratuito] Artista/designer per creazione grafica gioco di società Offerte e Richieste di Lavoro e/o Collaborazione 0
N Creazione sito web senza Partita IVA (Era: mettersi in regola) Leggi, Normative e Fisco 1
F NetBeans problema creazione progetto Java Windows e Software 0
A Creazione cookie e gestione accessi PHP 0
D Creazione sito e-commerce WP CMS (Content Management System) 0
A Consiglio per creazione sito web CMS (Content Management System) 1
S CREAZIONE DI SITO PER CORSI DI FORMAZIONE WordPress 3
spider81man Creazione di un UNICA tabella da più file .CSV PHP 1
M Creazione menu a tendina Javascript 3
S Download di un file in automatico dopo la sua creazione PHP 2
G creazione menu a tendina e invio a pagina php PHP 1
M Problemi con creazione maschere Presentati al Forum 1
F Creazione script Tv Presentati al Forum 1
W Creazione Cartella Classic ASP 2
A recuperare data creazione di un file PHP 6
D Neofita. Creazione applicativo prenotazione automezzi Offerte e Richieste di Lavoro e/o Collaborazione 12
L Aiuto creazione menu mancante WordPress 0
E Creazione URL per chat whatsapp WordPress 0
L Creazione di 2 o più record PHP 6
W Creazione di una griglia HTML e CSS 1
E Creazione di un sito di news PHP 16
S Scelta software/cms per creazione sito Webdesign e Grafica 6
E Creazione gestionale timesheet partendo da foglio excel Offerte e Richieste di Lavoro e/o Collaborazione 0
M Creazione notifica sonora Javascript 1
R Creazione sito eccomerce privato. Offerte e Richieste di Lavoro e/o Collaborazione 2
I Creazione programmino JAVA Offerte e Richieste di Lavoro e/o Collaborazione 0
D Difficile creazione excel di dati di grandi dimensioni Classic ASP 2
I creazione stile css HTML e CSS 3
A [Offro][retribuito] Creazione siti web/ web app (Django) Offerte e Richieste di Lavoro e/o Collaborazione 2
Stefano Migotto Creazione di un div con php o js PHP 9
G [OFFRO][RETRIBUITO] Creazione siti web e loghi professionali Offerte e Richieste di Lavoro e/o Collaborazione 0
D Creazione sito Offerte e Richieste di Lavoro e/o Collaborazione 0
D CREAZIONE E GESTIONE SITO E-COMMERCE Offerte e Richieste di Lavoro e/o Collaborazione 2
C [WordPress] Retribuzione creazione Sito Web vetrina Discussioni Varie 3
I [Javascript] Creazione di una piccola libreria e integrazione in angular Javascript 2
S [OFFRO] Creazione di programmi per la modifica automatizzata di testi Offerte e Richieste di Lavoro e/o Collaborazione 0
T [php] problema creazione query select-where PHP 5
Daniele_Carrara [PHP] Creazione Carrello PHP 1
G Creazione Landing Page Offerte e Richieste di Lavoro e/o Collaborazione 2
P [HTML] Creazione pagina web da dove iniziare HTML e CSS 2
L Creazione form html HTML e CSS 3
Monital [PHP]Far riconoscere stringa o numerico epr creazione campo tabella PHP 6
W [PHP] Creazione classe PDO PHP 4
K [PHP] Creazione di Calendario con orario PHP 4
V [CREO] Creazione profilo INSTAGRAM ad hoc per SVILUPPO MARKETING aziendale Offerte e Richieste di Lavoro e/o Collaborazione 0
Store creazione campo search in php PHP 1
Store creazione barra search sito web Presentati al Forum 3
C Creazione di una funzione per il filtraggio dei campi di un db Presentati al Forum 0

Discussioni simili