
Programació 1
Codi: 107888 Crèdits: 6| Titulació | Tipus | Curs |
|---|---|---|
| Enginyeria Informàtica | FB | 1 |
Professor/a de contacte
- Nom:
- Roberto Benavente Vidal
- Correu electrònic:
- robert.benavente@uab.cat
Equip docent
- Francesc Xavier Roca Marva
- Albert Gil Lopez
- Cristobal Pio Garcia
Idiomes dels grups
Podeu consultar aquesta informació al final del document.
Prerequisits
Atès que l’assignatura és d’introducció, s’assumirà que no es posseeix cap tipus de coneixement previ sobre la matèria.
Malgrat això, és recomanable tenir coneixements a nivell d’usuari d’algun tipus de plataforma (Windows, Mac o Linux).
En les activitats presencials a l'aula és imprescindible disposar d'un ordinador portàtil per a realitzar les tasques de l'assignatura.
Objectius
Aquesta assignatura té un caràcter general i introductori a la programació. S'aprofundirà en l'estudi dels aspectes metodològics de la programació i l'aprenentatge d'un llenguatge d'alt nivell. Per tant, els objectius generals que es proposen són els següents:
- Entendre el cicle de vida del software: anàlisi del problema (entendre el que se’ns demana), disseny (proposar una solució al problema), implementació (codificació en un llenguatge de programació de la solució escollida), prova (realització d’un test de manera sistemàtica per assegurar la correctesa de la solució implementada).
- Dotar l'estudiant de la capacitat de disseny d'algorismes per a la resolució de problemes, introduint de manera progressiva i sistemàtica una metodologia rigorosa i estructurada de programació, basada fonamentalment en la tècnica del disseny descendent d'algorismes.
- Introduir a l'estudiant en un llenguatge de programació real. Es pretén que l'estudiant percebi la diferència entre la flexibilitat de la notació pseudo-algorísmica que s'empra en els primers temes i l'estricta sintaxi d'un llenguatge de programació real, tant en els seus aspectes lèxics (paraules vàlides del llenguatge), sintàctics (regles per combinar-les) i semàntics (significat de les mateixes).
- Habituar l'estudiant a desenvolupar programes seguint unes normes d'estil tendents a aconseguir programes de qualitat. Dins d'aquestes normes d'estil s'engloben aquelles que faciliten la compressió del codi, com poden ser l'ús de comentaris, la indentació del codi, la utilització de noms adequats per als tipus de dades, etc.
Resultats d'aprenentatge
- CM04 (Competència) Validar les solucions proposades a problemes de l'àmbit de la informàtica en funció dels seus requisits i atenent les condicions establertes.
- KM06 (Coneixement) Identificar els conceptes bàsics de la programació estructurada, modular i orientada a objectes, així com les eines i els entorns de desenvolupament per a la creació de programari de qualitat.
- KM07 (Coneixement) Identificar els tipus de dades simples i les estructures de dades complexes dels llenguatges de programació d'alt nivell, així com el seu emmagatzematge en memòria.
- SM09 (Habilitat) Analitzar les necessitats de programació d'un sistema informàtic des del punt de vista de la necessitat del client.
- SM10 (Habilitat) Fer servir eines per a l'anàlisi, el disseny, la codificació i la depuració de programes.
- SM11 (Habilitat) Desenvolupar programari de complexitat petita o mitjana per resoldre problemes utilitzant programació estructurada i orientada a objectes.
- SM12 (Habilitat) Demostrar habilitats per treballar cooperativament en el desenvolupament d'aplicacions informàtiques.
Continguts
Tema 1: Introducció a la informàtica
Història. Estructura funcional de l'ordinador. Nivells conceptuals de l'ordinador.
Tema 2: Resolució de problemes: introducció a l'algorísmica i la programació.
Introducció a la resolució de problemes. Concepte d'algorisme. Fases en el desenvolupament d'algorismes. La programació com a disciplina d'enginyeria. Cicle de vida del software. Elements bàsics d'un algorisme. Eines per a la representació d'algorismes. Llenguatges de programació. Classificació. Traductors de llenguatges: Compiladors i intèrprets.
Tema 3: Conceptes bàsics i estructures de control
Tipus de dades simples. Definició de variables i constants. Estructura Seqüencial. Estructures condicionals. Estructures iteratives o repetitives.
Tema 4: Subprogrames. Procediments i funcions
El concepte de subprograma com a abstracció d'operacions. Localitat, niament, àmbit i visibilitat. Definició de funcions. Crides a funcions. Declaració o prototip de funcions. Tipus d'arguments: d'entrada, de sortida, d'entrada / sortida. Pas d'arguments a funcions: per valor i per referència.
Tema 5: Tipus de dades complexes
Tipus Array. Arrays unidimensionals. Arrays multidimensionals. Cadenes de caràcters. Registres. Arrays de registres.
Activitats formatives i Metodologia
| Títol | Hores | ECTS | Resultats d'aprenentatge |
|---|---|---|---|
| Tipus: Dirigides | |||
| Classes de pràctiques | 12 | 0,48 | CM04, SM09, SM10, SM11, SM12 |
| Classes de problemes | 12 | 0,48 | CM04, KM07, SM09, SM10, SM11 |
| Classes de teoria | 26 | 1,04 | KM06, KM07, SM10, SM11 |
| Tipus: Supervisades | |||
| Resolució de pràctiques | 25 | 1 | CM04, SM09, SM10, SM11, SM12 |
| Tipus: Autònomes | |||
| Estudi personal | 20 | 0,8 | CM04, KM06, KM07, SM09, SM10, SM11 |
| Preparació de classes | 20 | 0,8 | KM06, KM07 |
| Resolució de problemes | 25 | 1 | CM04, SM09, SM10, SM11 |
La gestió de la docència de l'assignatura es farà a través del gestor documental Caronte (http://caronte.uab.cat/), que servirà per poder veure els materials, gestionar els grups de pràctiques, fer els lliuraments corresponents, veure les notes, comunicar-vos amb el professorat, etc. Per poder-lo utilitzar cal fer els següents passos:
- Donar-se d'alta com usuari donant el nom, NIU, i una foto carnet en format JPG. Si ja us heu donat d'alta per alguna altra assignatura, no cal tornar-ho a fer, podeu anar al següent pas.
- Inscriure's al curs "Programació 1", donant com a codi d'assignatura el proporcionat el primer dia de classe.
En el desenvolupament de l'assignatura es seguirà la metodologia d'aula inversa. Això significa que l'alumnat haurà de treballar alguns coneixements abans de les sessions presencials on principalment es realitzaran activitats pràctiques amb l'objectiu de tractar el màxim de casos possibles per entendre la complexitat del que implica plantejar una solució a un problema de programació.
Abans de classe. Els conceptes bàsics es treballen abans de les sessions presencials a partir dels materials proporcionats amb una setmana d'antelació a la plataforma Caronte. El material a treballar serà documentació escrita, contingut multimèdia i activitats d'aprenentatge.
Cada estudiant ha de preparar-se les classes abans d’assistir-hi, revisant els materials tantes vegades com calgui per assimilar els conceptes. Com a orientació, es recomana dedicar setmanalment un nombre d’hores equivalent al temps de classe, aproximadament entre 2 i 3 hores setmanalment. Per a cada tema, es proposarà un qüestionari que permetrà avaluar el grau d’assoliment dels continguts treballats
A Classe. L'objectiu de les sessions presencials és passar de la informació al coneixement. Posarem l'èmfasi en crear coneixements aplicables a l'anàlisi i solució de problemes concrets. L'estructura de les classes serà:
- Revisió dels conceptes bàsics del tema a tractar (15 min). L'objectiu és resoldre els dubtes que pugui haver-hi sobre aspectes teòrics no entesos i fer seguiment de l'adquisició dels conceptes bàsics.
- Solució de problemes (resta del temps de classe). L'objectiu és experimentar fent una tasca pràctica que permeti aplicar els conceptes apresos per resoldre reptes i així compartir i crear coneixement.
Després de Classe. L'objectiu és consolidar el coneixement. A la plataforma Caronte es podran trobar un conjunt de problemes avaluables d'autocorrecció que han de permetre a l'alumnat aprofundir en la comprensió dels temes i personalitzar el coneixement. El fet que sigui auto-avaluable permet adequar el ritme de consolidació a cada estudiant i que es produeixi una reflexió sobre el propi aprenentatge.
Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, perquè els alumnes completin les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura.
Avaluació
Activitats d'avaluació continuada
| Títol | Pes | Hores | ECTS | Resultats d'aprenentatge |
|---|---|---|---|---|
| Activitats de classe avaluables | 10% | 0 | 0 | CM04, KM06, KM07, SM09, SM11 |
| Examen final | 45% | 2 | 0,08 | CM04, KM06, KM07, SM09, SM11 |
| Examen intrasemestral | 15% | 2 | 0,08 | CM04, KM06, KM07, SM09, SM11 |
| Pràctiques | 15% | 0 | 0 | CM04, SM09, SM10, SM11, SM12 |
| Qüestionaris d'autoavaluació | 5% | 6 | 0,24 | KM06, KM07 |
| Resolució de problemes | 10% | 0 | 0 | CM04, SM09, SM10, SM11 |
Activitats d'avaluació programades
L’assignatura consta de les activitats d’avaluació següents:
|
Activitat |
Tipus |
Pes |
Nota mínima |
Recuperable |
|
Examen intrasemestral |
individual |
15% |
No |
Si |
|
Examen final |
individual |
45% |
5 |
Si |
|
Pràctiques |
grupal |
15% |
5 |
Si |
|
Qüestionaris d'autoavaluació |
individual |
5% |
No |
No |
|
Resolució de problemes |
individual |
10% |
No |
Si |
|
Activitats de classe avaluables |
individual |
10% |
No |
No |
Per poder aprovar l’assignatura, caldrà tenir una nota mínima de 5 en l'examen final i les pràctiques.
Programació d’activitats d’avaluació
El calendari de les activitats d’avaluació es donarà el primer dia de l’assignatura i es farà públic a través de Caronte i a la web de l’Escola d’Enginyeria, a l’apartat d’exàmens.
Procés de recuperació
L’estudiant es pot presentar a la recuperació sempre que s’hagi presentat a un conjunt d’activitats que representi un mínim de dues terceres parts de la qualificació total de l’assignatura. En particular si l’estudiant no s’ha presentat a l’examen final no podrà fer l’examen de recuperació
L’examen final es podrà recuperar en la data fixada per la coordinació del Grau. En cas de realitzar l’examen de recuperació, la nota d’aquest examen també podràsubstituir la nota del’examen intrasemestral si la nota de la recuperació és superior a la nota de l’intrasemestral.
Les pràctiques es podran recuperar en un segon lliurament a la data fixada en el calendari de les activitats d’avaluació que es donarà el primer dia de l’assignatura i es farà públic a través de Caronte.
Els lliuraments de problemes es podran recuperar en qualsevol moment del curs, lliurant-los de nou i avaluant-los amb l'autocorrector.
D’acord amb la coordinació del Grau i la direcció de l’Escola d’Enginyeria les activitats següents no es podran recuperar:
- Qüestionaris d'autoavaluació
- Activitats de classe avaluables
Procediment de revisió de les qualificacions
Pels exàmens (intrasemestral, final i recuperació), s’indicarà un lloc, data i hora de revisió en la que l'alumnat podrà revisar l’activitat amb el professorat. En aquest context, es podran fer reclamacions sobre la nota de l’activitat, que seran avaluades pel professorat responsable de l’assignatura. Si l'estudiant no es presenta a aquesta revisió, no es revisarà posteriorment aquesta activitat.
Per la resta d'activitats, si es detecta alguna errada en la correcció, es podrà demanar que es revisi en qualsevol moment, fins la data de la revisió de l'examen de recuperació.
Qualificacions
No Avaluable (NA): Un estudiant es considerarà no avaluable (NA) si no s’ha presentat a cap de les següents activitats d'avaluació: exàmens de l'assignatura (intrasemestral, final i recuperació), pràctiquesiactivitats avaluablesa classe.
Nota final: Es calcula amb la suma ponderada de les activitats d'avaluació segons els criteris exposats en l'apartat d'activitats d'avaluació.
En cas de no superar l'assignatura degut a que alguna de les activitats d'avaluació no arriba a la nota mínima requerida, la nota numèrica de l'expedient serà el valor menor entre 4.5 i la mitjana ponderada de les notes. Amb les excepcions de que s'atorgarà la qualificació de "No Avaluable" a l’alumnat que no participi en cap de les activitats d'avaluació, i de que la nota numèrica de l'expedient serà el valor menor entre 3.0 i la mitjana ponderada de les notes en cas que el o la estudiant hagi comès irregularitats en un acte d'avaluació
Matrícules d'honor: Atorgar una qualificació de matrícula d'honor és decisió del professorat responsable de l'assignatura. La normativa de la UAB indica que les MH només es podran concedir a estudiants que hagin obtingut una qualificació final igual o superior a 9.00. Es pot atorgar fins a un 5% de MH del total d'estudiants matriculats. En el cas que el nombre d'estudiants amb nota superior o igual a 9 superi el 5% del total de matriculats, s'aplicaran els criteris de priorització següents en l'ordre enumerat a continuació:
- Estudiants que hagin fet menys activitats de recuperació.
- Estudiants amb nota final més alta.
- Estudiants amb nota més alta a l’examen final
- Estudiants amb nota més alta a l’examen intrasemestral
Irregularitats comeses per l'alumnat
Sense perjudici d'altres mesures disciplinàries que s'estimin oportunes, i d'acord amb la normativa acadèmica vigent, les irregularitats comeses per un/a estudiant que puguin conduir a una variació de la qualificació en una activitat avaluable es qualificaran amb un zero (0). Les activitats d'avaluació qualificades d'aquesta forma i per aquest procediment no seran recuperables. Si és necessari superar qualsevol d'aquestes activitats d'avaluació per aprovar l'assignatura, aquesta assignatura quedarà suspesa directament, sense oportunitat de recuperar-la en el mateix curs. Aquestes irregularitats inclouen, entre d'altres:
- la còpia total o parcial d'una pràctica, informe, o qualsevol altra activitat d'avaluació;
- deixar copiar;
- presentar un treball de grup no fet íntegrament pels membres del grup (aplicat a tots els membres, no solament als que no han treballat);
- ús no autoritzat de la IA (p. ex, Copilot, ChatGPT o equivalents) per a resoldre exercicis, pràctiques i/o qualsevol altra activitat avaluable;
- presentar com a propis materials elaborats per un tercer, encara que siguin traduccions o adaptacions, i en general treballs amb elements no originals i exclusius de l'estudiant;
- tenir dispositius de comunicació (com telèfons mòbils, smart watches, bolígrafs amb càmera, etc.) accessibles durant les proves d'avaluació teorico-pràctiques individuals (exàmens);
- parlar amb companys durant les proves d'avaluació teorico-pràctiques individuals (exàmens);
- copiar o intentar copiar d'altres alumnes durant les proves d'avaluació teorico-pràctiques (exàmens);
- usar o intentar usar escrits relacionats amb la matèria durant la realització de les proves d'avaluació teorico-pràctiques (exàmens), quan aquests no hagin estat explícitament permesos.
En edicions futures d'aquesta assignatura, a l'alumnat que hagi comès irregularitats en un acte d'avaluació no se li convalidarà cap de les activitats d'avaluació realitzades ni es podrà acollir a cap normativa específica d'avaluació dels estudiants repetidors.
Ús de la IA
Per a aquesta assignatura, es permet l'ús de tecnologies d'Intel·ligència Artificial (IA) exclusivament en tasques de suport, com la cerca d’informació, la interpretació i explicació de programes, resolució de dubtes, etc. En cap cas es permet l'ús de la IA per a la realització de les tasques de programació que s'han de lliurar com a part de l'avaluació. Qualsevol treball que inclogui fragments generats amb IA serà considerat una falta d'honestedat acadèmica i comportarà l'aplicació de la normativa referent a irregularitats per part de l'estudiant.
Avaluació dels estudiants repetidors
Si el curs 2024-2025 es va superar el bloc de programació de l'assignatura "Fonaments d'Informàtica" (FI), es pot optar per una avaluació de l’assignatura que consistirà en una prova de síntesi, més la nota corresponent al bloc de programació de FI obtinguda el curs anterior.
Si el curs anterior l'actual es va superat l'assignatura "Metodologia de la Programació" i es van aprovar els exercicis de repàs proposats en aquella assignatura, es podrà optar per una avaluació que consistirà en una prova de síntesi, sense haver de fer totes les activitats d'avaluació. La nota final en aquest cas serà de 5.
Per poder optar a aquesta avaluació diferenciada, la persona interessada ho ha de demanar al professorat mitjançant correu electrònic (Robert.Benavente@uab.cat o Xavier.Roca@uab.cat) com a molt tard 15 dies després de l’inici de les classes.
Avaluació única
Aquesta assignatura no preveu el sistema d’avaluació única.
Bibliografia
L. Joyanes Aguilar. Fundamentos de programación: algoritmos, estructuras de datos y objetos. 5ª Edición, McGraw-Hill, 2020. (Existeix versió online: https://www-ingebook-com.eu1.proxy.openathens.net/ib/NPcd/IB_Escritorio_Visualizar?cod_primaria=1000193&libro=10211)
L. Joyanes Aguilar, L. Rodriguez Baena, M. Fernández Azuela. Fundamentos de programación: libro de problemas. 2ª Edición, McGraw-Hill, 2003.
E. Valveny, R. Benavente, A. Lapedriza, M. Ferrer, J. García. Programació en Llenguatge C. Amb 56 problemes resolts i comentats. Servei de publicacions de la UAB, 2009.
L. Joyanes, I. Zahonero: Programación en C: metodología, algoritmos y estructuras de datos. 2ª edición, McGraw-Hill, 2005. (Existeix versió online: https://elibro.net/es/lc/uab/titulos/50302)
L. Joyanes, A. Castillo, L. Sánchez, I. Zahonero. Programación en C: libro de problemas. McGraw-Hill, 2002.
B.W. Kernighan, D.M. Ritchie. El lenguaje de programación C. 2ª edición, Prentice Hall, 1986.
B.W. Kernighan, R. Pike. La práctica de la programación. Pearson Educación, 2000.
J. Pujol. Algorismes i Programes. Servei de publicacions de la UAB, 1996.
Grups i idiomes de l'assignatura
La informació proporcionada és provisional fins al 30 de novembre de 2025. A partir d'aquesta data, podreu consultar l'idioma de cada grup a través daquest enllaç. Per accedir a la informació, caldrà introduir el CODI de l'assignatura
| Nom | Grup | Idioma | Semestre | Torn |
|---|---|---|---|---|
| (PAUL) Pràctiques d'aula | 411 | Català | primer quadrimestre | matí-mixt |
| (PAUL) Pràctiques d'aula | 412 | Català | primer quadrimestre | matí-mixt |
| (PAUL) Pràctiques d'aula | 431 | Català | primer quadrimestre | matí-mixt |
| (PAUL) Pràctiques d'aula | 432 | Català | primer quadrimestre | matí-mixt |
| (PAUL) Pràctiques d'aula | 451 | Català | primer quadrimestre | tarda |
| (PAUL) Pràctiques d'aula | 452 | Català | primer quadrimestre | tarda |
| (PLAB) Pràctiques de laboratori | 411 | Català/Espanyol | primer quadrimestre | matí-mixt |
| (PLAB) Pràctiques de laboratori | 412 | Català/Espanyol | primer quadrimestre | matí-mixt |
| (PLAB) Pràctiques de laboratori | 413 | Català/Espanyol | primer quadrimestre | matí-mixt |
| (PLAB) Pràctiques de laboratori | 414 | Català/Espanyol | primer quadrimestre | matí-mixt |
| (PLAB) Pràctiques de laboratori | 415 | Català/Espanyol | primer quadrimestre | matí-mixt |
| (PLAB) Pràctiques de laboratori | 416 | Català/Espanyol | primer quadrimestre | matí-mixt |
| (PLAB) Pràctiques de laboratori | 417 | Català/Espanyol | primer quadrimestre | matí-mixt |
| (PLAB) Pràctiques de laboratori | 418 | Català/Espanyol | primer quadrimestre | matí-mixt |
| (PLAB) Pràctiques de laboratori | 419 | Català/Espanyol | primer quadrimestre | tarda |
| (PLAB) Pràctiques de laboratori | 420 | Català/Espanyol | primer quadrimestre | tarda |
| (PLAB) Pràctiques de laboratori | 421 | Català/Espanyol | primer quadrimestre | tarda |
| (PLAB) Pràctiques de laboratori | 422 | Català/Espanyol | primer quadrimestre | tarda |
| (TE) Teoria | 41 | Català | primer quadrimestre | matí-mixt |
| (TE) Teoria | 43 | Català | primer quadrimestre | matí-mixt |
| (TE) Teoria | 45 | Català | primer quadrimestre | tarda |