sin-titulo

Pasted Oct 17, 2026, 12:48 PM1 file100 lines

Scan to open on your phone

Point a camera at the QR code - it opens this exact paste, no app needed.

https://codepastes.com/lab5
sin-titulo
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

/**
 * El procediment inicialitza el generador d'aleatoris amb la data/hora actuals.
 * No te parametres
 * NO MODIFIQUEU el contingut de l'acció
*/
void ini_llavor (void)
{  srand(time(NULL));
}

/**
 * El procediment genera un enter aleatori entre 'min' i 'max'.
 * @param min (Valor (E): enter). El valor minim.
 * @param max (Valor (E): enter). El valor maxim.
 * @return enter, el valor aleatori.
 * NO MODIFIQUEU el contingut de la funció
*/
int aleatori_entre (int min, int max)
{   int num;
    scanf("%d",&num); 
    /* Per tal de poder provar-ho, llegirem el num per teclat */
    return(num);
}

int main() {
    /* TODO definir i inicialitzar les variables i les constants que usarem en el codi*/
    int robot;
    const int MAX_INTE = 5;
    int usuari;
    int i;
    int guanyat;
    int perdut;
    int empatat;

    /* NO MODIFICAR Inicialitza la generació de números aleatoris */
    ini_llavor();
    
    /* farem la crida que ve a continuació quan necessitem l'elecció de l'ordinador, */
    /* s'ha de posar on convingui dins del codi */

    /* TODO Fer l'algorisme que solucionani el problema segons les especificacions donades. */
    /* Recordeu que només pot haver un únic punt de finalització, no es pot usar cap break, continue ni exit */
    
    i=0;
    guanyat=0;
    perdut=0;
    empatat=0;
    
    printf("Benvingut al joc de Pedra, Paper, Tisores!\n");
    printf("Escull: 1 per Pedra, 2 per Paper, 3 per Tisores, 0 per sortir\n");
    
    printf("\nIntrodueix la teva elecció: ");
    scanf("%i",&usuari);

    while((i<MAX_INTE)&&(usuari!=0))
    {
        robot = aleatori_entre(1,3);
        printf("L'ordinador ha escollit: %i\n", robot );
        
        if(usuari==robot)
        {
            printf("Empat!\n");
            empatat=empatat+1;
        }    
        else
        {
            if((usuari==3 && robot==2)||(usuari==2 && robot==1)||(usuari==1 && robot==3))
            {
                printf("Has guanyat!\n");
                guanyat=guanyat+1;
            }
            else
            {
                printf("Has perdut!\n");
                perdut=perdut+1;
            }
        } 
        
        i=i+1;

        if(i<MAX_INTE)
        {
            printf("\nIntrodueix la teva elecció: ");
            scanf("%i",&usuari);
        }
    }

    printf("\nJoc finalitzat després de %i jugades.\n",i);
    printf("Resultats finals:\n");
    printf("Guanyades: %d, Perdudes: %d, Empatades: %d\n",guanyat ,perdut ,empatat );

    /* TODO repartiu els printf on correspongui sense modificar res del que hi ha entre " ", l'unic que heu. */
    /* de fer es posar el nom de les varibles que s'han de mostrar, si no hi son                           */
   
    /* Unic return admisible. NO useu cap break, continue ni exit*/
    return 0;
}

2,865 chars · codepastes.com