editat perDarrera edicióDiferènciesRestaurar Revisió
daniel herrera04/05/2018 19:54
@@ -1,7 +1,7 @@
 
 Llenguatges SQL: DCL i extensió procedimental
 Bits en el ring. Contienda. Dado.
-El joc consiteix en el següent:
+El joc està basat en [Ignotum](http://bitsenelring.blogspot.com.es/2013/08/nueva-competencia-ignotum.html) consiteix en el següent:
 
 * Es juga per torns.
 * Es llença un dau.
Restaurar
daniel herrera04/05/2018 16:46
@@ -27,6 +27,49 @@
 * La funció té accés lectura a la taula `marcador`.
 * La funció s'ha descriure de manera neta i llegible. Ben indentada.
 * Agafarem totes les funcions i les farem compatir entre elles.
+
+Aquest és el codi que fa competir funcions:
+
+    :::sql
+    begin
+    declare @n int;
+    set @n = 10;
+    
+    drop table if exists Marcador;
+    create table Marcador (
+    tirada int not null identity,
+    nJugadorAnota int,
+    puntsAnotats int
+    )
+    
+    while @n > 0 BEGIN
+     declare @dau int;
+     declare @selqueda bit;
+        set @selqueda = 0;
+        while (@selqueda = 0 and @n > 0 ) begin
+         set @dau = (cast(rand()*10000 as int) % 6 ) + 1;
+            set @selqueda = dbo.f1( 1, @dau );
+            insert into Marcador (nJugadorAnota, puntsAnotats)
+                   values (1, @dau );
+            set @n = @n - 1;
+            print 'Jugador 1: ' + str(@dau) + ' s''el queda ' + str(@selqueda)
+        end
+        set @selqueda = 0;
+        while ( @selqueda = 0 and @n > 0 ) begin
+         set @dau = (cast(rand()*10000 as int) % 6 ) + 1;
+            set @selqueda = dbo.f2( 2, @dau );
+            insert into Marcador (nJugadorAnota, puntsAnotats)
+                   values (2, @dau );
+            set @n = @n - 1;
+            print 'Jugador 2: ' + str(@dau) + ' s''el queda ' + str(@selqueda)
+        end
+    END
+    
+    select nJugadorAnota, sum(puntsAnotats)
+    from marcador
+    group by nJugadorAnota
+    order by nJugadorAnota;
+    end
 Continguts: 
 
 Resultats d'aprenentatge: 
Restaurar
Consulteu nota legal i condicions