Looking for ASX OA01 Programació en Python test answers and solutions? Browse our comprehensive collection of verified answers for ASX OA01 Programació en Python at ioc.xtec.cat.
Get instant access to accurate answers and detailed explanations for your course questions. Our community-driven platform helps students succeed!
Utilitzeu un bucle for in per a escriure un programa que mostri els n primers múltiples de 7, començant pel 0.
El codi del programa:
for num in range(3): print(num)
Proporciona la sortida: 0, 1, 2, 3 (un nombre en cada línia)
Utilitzar la instrucció break és una bona manera de sortir d'un bucle. Ajuda a estructurar el programa i a la seva llegibilitat.
Heu de programar un joc del tipus doble o res. El funcionament del joc és el següent:
Un exemple d'execució és el següent (sou capaços d'obtenir més diners que jo?)
Pistes:
Un exemple d'execució és el següent. Sou capaços de guanyar més que jo?
videoioc@debian-xtec:~/Documents/programacio$ python3 doble_o_res.py
actualment tens: 10 eurosvols continuar? (prem la tecla s si és que sí)sQuina sort!actualment tens: 20 eurosvols continuar? (prem la tecla s si és que sí)sQuina sort!actualment tens: 40 eurosvols continuar? (prem la tecla s si és que sí)sQuina sort!actualment tens: 80 eurosvols continuar? (prem la tecla s si és que sí)sQuina sort!actualment tens: 160 eurosvols continuar? (prem la tecla s si és que sí)nhas guanyat 160 eurosEl propòsit d'aquesta activitat és mostrar un exemple en què la sortida d'un programa esdevé l'entrada d'un altre, i perquè és interessant diferenciar si el programa serà interactiu o no en el moment de crear-lo.
Primer pas:
Feu un programa que llegeixi un nombre enter n i generi una llista amb n nombres enters aleatoris entre 0 i 100, un en cada fila. La sortida ha de ser el fitxer sense cap altra dada.
Segon pas:
Deseu la sortida de l'execució en un fitxer.
Tercer pas:
Utilitzeu aquest fitxer per a calcular el màxim de N nombres (amb N una constant definida prèviament menor o igual a la quantitat de nombres del fitxer).
Pista: utilitzeu la instrucció input() amb un argument en demanar cada nombre. Per exemple:
b = int(input("Entra un nombre: "))
Comproveu (fent servir una N petita) que realment troba el màxim.
Quart pas:
Modifiqueu el programa del primer pas, de manera que doni “instruccions” a l'usuari. Indiqueu que ha d'entrar un nombre enter positiu. Feu que abans de la sortida de cada nombre indiqui la seva posició. Per exemple:
Posició 1: 23
Posició 2: 45
Cinquè pas:
Quin és el resultat si ara intenteu utilitzar la sortida del primer programa per calcular el màxim?
Feu un programa en què l’ordinador jugui amb l’usuari: l’ordinador "pensarà" un nombre entre 0 i 100 i l’usuari l’haurà d’endevinar. Per cada nombre que proposi l’usuari, el programa li dirà si el que té pensat és major o menor. Quan l’endevini mostrarà un missatge de text que dirà "FELICITATS", i també dirà els intents que hem necessitat per a endevinar el nombre.
Un programa interactiu és el que necessita la retroacció continuada de l’usuari per poder executar-se. En canvi, es coneix com a processament per lots, (o batch processing), l'execució d'un programa sense el control o supervisió directa de l'usuari. Els administradors quasi sempre fareu programes interactius.
Per entrar dades en un programa, de moment coneixeu l'ordre input(). Per a fer programes de processament de lots, és important utilitzar l'input() amb arguments. Per exemple:
input('escriu un text')
Feu un programa que busqui el mínim de 100 nombres i digui la posició en la qual ha estat llegit. A més, també es necessita saber quin nombre s'ha llegit en la posició anterior a la que hi ha el mínim. Per exemple per si N és el número de nombres. Quan N = 5, si les entrades són 3, 77, -2, 4 i 100, el programa ha de mostrar:
Mínim: -2, posició: 2, anterior: 77
Busqueu el mínim, la posició en què ha estat llegit i el nombre anterior entre tots els nombres del fitxer nombres.txt (conté 100 nombres). El resultat de l'execució d'aquest programa amb els 100 nombres del fitxer nombres.txt és:
videoioc@debian-xtec:~/Documents/programacio$ python3 minim_posicio.py < nombres.txt nombre: -9793 posició: 72 anterior: -8773
Pista: desar el nombre anterior haureu de fer-ho en la volta prèvia, utilitzant una variable. Amb el mínim, haureu de desar la posició en què l'heu trobat i el nombre anterior que hi havia quan l'heu trobat.
Heu de fer un programa de control de despeses (amb creació de fitxers de joc de proves).
Primera part
Teniu 100 euros i voleu fer compres fins que s’acabin els diners. Cada vegada que intenteu fer una compra nova, introduïu la quantitat d’euros que val el producte i el programa diu "ok", fins quan arriba el moment que ja no podeu fer la compra perquè ja no queden suficients diners.
Exemple d’execució: (DINERS = 100)
python3 despeses.py
5
ok
20
ok
90
saldo: 75 euros. Articles comprats: 2
Segona part
Feu un conjunt de fitxers per a provar el programa.
Per a cada exemple del joc de proves, cal un fitxer d'entrada i un de sortida. Anomeneu per exemple, test_num_execucio.in als d'entrada i test_num_execucio.out de sortida. Els fitxers es poden dir com es vulgui. Aquesta és la notació utilitzada a la web jutge.org. Per a cada exemple d'execució, comprova que la sortida de:
python3 despeses.py < test_1.in
coincideix amb test_1.out