Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Exm FINAL PROGRAMACIÓ 22-23 RESOLT 2.pdf, Exámenes de Informática

Exm FINAL PROGRAMACIÓ 22-23 RESOLT 2 resolt

Tipo: Exámenes

2021/2022

Subido el 16/05/2025

Alexperezzz
Alexperezzz 🇪🇸

9 documentos

1 / 4

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Escola Politècnica Superior - UdG
Graus en Enginyeria
Informàtica
Examen de Programació
Observacions:
Dissenyeu i implementeu en Python el programa que resolgui el problema de l'enunciat
El fitxer del programa amb el format de nom NomCognom_Examen.py, s’ha de lliurar a la tasca
“Examen de Programació” del Moodle del vostre grup.
SÈRIE A
Es genera una sèrie a partir del llançament d'un dau de forma aleatòria amb la
següent regla:
Donat un nombre num que surt en una tirada (1..6), l’element de la sèrie Ei es
calcula com la suma de tots els elements anteriors més el num.
Per exemple, per a la tirada [6, 2, 3] la seria resultant serà [6, 8, 11]. Donat un
límit màxim de valor de la sèrie Max, es demana:
Generar la sèrie de nombres que siguin menors que Max i guardar-la en
una llista
Verificar si la suma dels dígits d'algun element multiplicada per 3 és més
gran que l'últim element de la sèrie. En tal cas indicar el primer element
trobat
Exemples d’execució:
1.
Introdueix el maxim:28
Tirada del dau: [5, 4, 4, 5, 6, 5]
Serie: [5, 9, 13, 18, 24]
Si, la condicio es verifica per l element 2 (9*3>24)
2.
Introdueix el maxim:25
Tirada del dau: [2, 1, 4, 5, 3, 5, 2, 4]
Serie: [2, 3, 7, 12, 15, 20, 22]
No hi ha cap element que verifiqui la condició
Nota1: Es valora l’ús de funcions
Nota2: Per simular el llançament d'un dau podeu fer servir les instruccions
import random
num = random.randint(1,6)
pf3
pf4

Vista previa parcial del texto

¡Descarga Exm FINAL PROGRAMACIÓ 22-23 RESOLT 2.pdf y más Exámenes en PDF de Informática solo en Docsity!

Escola Politècnica Superior - UdG

Graus en Enginyeria

Informàtica

Examen de Programació

Observacions:

● Dissenyeu i implementeu en Python el programa que resolgui el problema de l'enunciat ● El fitxer del programa amb el format de nom NomCognom_Examen.py , s’ha de lliurar a la tasca “Examen de Programació” del Moodle del vostre grup.

SÈRIE A

Es genera una sèrie a partir del llançament d'un dau de forma aleatòria amb la

següent regla:

Donat un nombre num que surt en una tirada (1..6), l’element de la sèrie Ei es

calcula com la suma de tots els elements anteriors més el num.

Per exemple, per a la tirada [6, 2, 3] la seria resultant serà [6, 8, 11]. Donat un

límit màxim de valor de la sèrie Max , es demana:

● Generar la sèrie de nombres que siguin menors que Max i guardar-la en

una llista

● Verificar si la suma dels dígits d'algun element multiplicada per 3 és més

gran que l'últim element de la sèrie. En tal cas indicar el primer element

trobat

Exemples d’execució:

Introdueix el maxim: Tirada del dau: [5, 4, 4, 5, 6, 5] Serie: [5, 9, 13, 18, 24] Si, la condicio es verifica per l element 2 (9*3>24)

Introdueix el maxim: Tirada del dau: [2, 1, 4, 5, 3, 5, 2, 4] Serie: [2, 3, 7, 12, 15, 20, 22] No hi ha cap element que verifiqui la condició

Nota1: Es valora l’ús de funcions

Nota2: Per simular el llançament d'un dau podeu fer servir les instruccions

import random num = random.randint(1,6)

Solució Serie A

import random

funcio per calcular suma de digits

def sumaDigits (num): suma = 0 while num > 0 : suma = suma + num % 10 num = num // 10 return suma

Donat un nombre maxim generar la serie

max = int(input("Introdueix el maxim:")) lldau = [] # Serie demanada llnum = [] # Llista de num sortits al dau (per verificar) num = random.randint( 1 , 6 ); llnum.append(num) suma = num while suma < max: lldau.append(suma) num = random.randint( 1 , 6 ); llnum.append(num) suma = suma + num print("Nombres que han sortit", llnum) print("Serie generada:", lldau)

Cerca: dir si la suma dels digits X 3 d algun element de la llist

a es mes gran que el ultim nombre i = 0 ; trobat = False N = len(lldau) while i lldau[N- 1 ]: i = i+ 1 if i == N: print("No n'hi ha") else: print("Si n'hi ha: element", i+ 1 , sumaDigits(lldau[i]))

Solucio serie B

import random

funcio per calcular suma de digits

def sumaDigits (num): suma = 0 while num > 0 : suma = suma + num % 10 num = num // 10 return suma

Donat un nombre d elements genera la serie

N = int(input("Introdueix el nombre d elements:")) lldau = [] # Serie demanada llnum = [] # Llista de num sortits al dau (per verificar) ant = 0 for i in range(N): num = random.randint( 1 , 6 ); llnum.append(num) actual = ant* 2 + num lldau.append(actual) ant = actual print("Nombres que han sortit", llnum) print("Serie generada:", lldau)

Cerca: dir si la suma dels digits d algun element de la llista co

incideix amb la ultima xifra del darrer element i = 0 ; while i