Logo

Programació Científica

Codi: 107925
Crèdits: 6
2026/2027
Titulació Tipus Curs
Matemàtiques FB 1

Professor/a de contacte

Nom :
Joaquim Roé Vellvé
Correu electrònic :
joaquim.roe@uab.cat

Equip docent

Martí Prats Soler
Jaume Coll Guerrero
Joaquim Roé Vellvé

Idiomes dels grups

Podeu consultar aquesta informació al final del document.

Prerequisits

Cap

Objectius

Familiaritzar-se amb l'ús d'un manipulador algebraic. Aquest manipulador ha d'esdevenir una eina habitual en l'estudi de moltes altres assignatures.

Iniciar-se a la programació d'ordinadors, en els aspectes més rellevants per a la computació científica.

Entendre el funcionament de l'ordinador, en els aspectes més rellevants per a la programació.

Aprendre a programar en llenguatge Python i C.

Resultats d'aprenentatge

  • CM05 (Discriminar, d’entre diferents algoritmes, el més pertinent per resoldre un problema matemàtic elemental.) Discriminar, d’entre diferents algoritmes, el més pertinent per resoldre un problema matemàtic elemental.
  • KM08 (Identificar alguns algoritmes de càlcul bàsics.) Identificar alguns algoritmes de càlcul bàsics.
  • KM09 (Enumerar els principis matemàtics fonamentals de la programació.) Enumerar els principis matemàtics fonamentals de la programació.
  • KM10 (Descriure els principis del funcionament de l’ordinador en els aspectes més rellevants per a la programació, incloent components, memòria, processament i entrada/sortida.) Descriure els principis del funcionament de l’ordinador en els aspectes més rellevants per a la programació, incloent components, memòria, processament i entrada/sortida.
  • SM07 (Fer servir un programa de càlcul simbòlic en la resolució de problemes senzills d’altres branques de les matemàtiques, com l’àlgebra, la geometria o la teoria de grafs.) Fer servir un programa de càlcul simbòlic en la resolució de problemes senzills d’altres branques de les matemàtiques, com l’àlgebra, la geometria o la teoria de grafs.
  • SM08 (Programar algoritmes senzills.) Programar algoritmes senzills.

Continguts

Primera part: Python i Sagemath


  • Nombres, cadenes i variables.
  • Llistes, conjunts i comprensió.
  • Construccions iteratives i alternatives
  • Tuples i diccionaris.
  • Funcions i recursivitat.
  • Control d'errors.
  • Disseny i anàlisi d'algorismes.
  • Nombres enters i congruències.
  • Càlculs numèrics i algebraics.
  • Gràfiques de funcions.
  • Resolució d'equacions.
  • Objectes i Classes.
  • Vectors i matrius.


Segona Part: C


  • Llenguatges compilats. Codi font i programa executable.
  • Estructures dels programes en C: iterativa, alternativa.
  • Funcions i recursivitat.
  • Codificació de la informació. Tipus de variables i constants.
  • Vectors i tipus derivats.
  • Gestió de la memòria. Apuntadors.
  • Entrada i sortida: interacció per consola i fitxers.
  • Biblioteques.



Activitats formatives i Metodologia

Títol Hores ECTS Resultats d'aprenentatge
Preparació examen de Pyhton i Sagemath 25 1 CM05, KM08, KM09, KM10, SM07, SM08
Python i Sagemath 26 1,04 CM05, KM08, KM09, KM10, SM07, SM08
Treball 39 1,56 CM05, KM08, KM09, KM10, SM07, SM08
Preparació examen de C 25 1 CM05, KM08, KM09, KM10, SM07, SM08
C 30 1,2 CM05, KM08, KM09, KM10, SM07, SM08

Es faran 13 sessions pràctiques en el primer semestre, i 15 sessions en el segon semestre, cada sessió de dues hores. La part essencial de les pràctiques consisteix en el treball personal de cada alumne/a a l'ordinador, seguint un guió preparat i explicat pel professorat.


En tots els aspectes de les activitats d'ensenyament/aprenentatge, es prendran totes les mesures necessàries per part del professorat i l'alumnat per tal d'evitar llenguatge i situacions que puguin ser interpretats com a sexistes. Per tal d'aconseguir una millora contínua en aquest tema, tothom ha de col·laborar en posar de manifest les desviacions que observi respecte d'aquest objectiu.


Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per tal que l'alumnat empleni les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mòdul.


Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, perquè l'alumnat completi 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
Treball 0,24 1 0,04 CM05, KM08, KM09, KM10, SM07, SM08
Examen de Python i Sagemath 0,38 2 0,08 CM05, KM08, KM09, KM10, SM07, SM08
Examen de C 0,38 2 0,08 CM05, KM08, KM09, KM10, SM07, SM08

L'assignatura té tres avaluacions:

  • durant el primer semestre del curs es farà una o més proves de la part de Python i Sagemath.
  • durant el segon semestre del curs es farà una prova de la part de C, a part d'algunes entregues d'exercicis pràctics.
  • un treball de programació, que contindrà una explicació escrita en Latex, amb parts del codi escrites amb Python i parts amb escrites amb C.El treball serà avaluat oralment.

La nota final de l'assignatura serà la suma ponderada de les notes de cadascuna de les tres parts.

Hi ha una nota mínima de cadascuna de les parts de 3,5 punts sobre 10.

De cadascun dels exàmens hi haurà una repesca per recuperar/millorar la nota. L'entrega d'aquest segon examen anul·larà automàticament la nota de la primera convocatòria. El treball no és recuperable.

Es considerarà avaluable qui hagi presentat treballs o hagi fet exàmens per un total d'almenys dos terços de l'assignatura. En cas contrari constarà a l'acta com a No Avaluable.

Per a l'assignació de Matrícules d'Honor no es tindran en compte les notes de les repesques.

IMPORTANT: L'avaluació és individual. El frau en un treball avaluable o un examen es penalitzarà amb un zero com a nota final de l'assignatura. L'ajut d'eines d'"Intel·ligència artificial" en els exàmens no és permès; en l'elaboració del treball serà regulat. L'estudiant haurà d'identificar clarament quines parts han estat generades amb aquesta tecnologia, especificar les eines emprades i incloure una reflexió crítica sobre com aquestes han influït en el procés i el resultat final de l’activitat. La no transparència de l’ús de la IA es considerarà falta d'honestedat acadèmica i pot comportar una penalització en la nota de l'activitat, o sancions majors en casos de gravetat.


AVALUACIÓ ÚNICA: En aquesta metedologia, s'haurà d'entregar el treball i fer un únic examen de 4 hores sobre tot el contingut de l'assignatura, seguit de l'avaluació oral del treball.


Bibliografia

Durant el curs es proporcionarà el material imprescindible per seguir-lo. Com a material addicional, recomanem:

SAGEhttp://www.sagemath.org/help.html

Tobias Oetiker, Hubert Partl, Irene Hyna and Elisabeth Schlegl. The not so short introduction to LaTeX 2e. Tobi.oetiker.ch/lshort/lshort.pdf

George Grätzer, More Math Into LaTeX, Springer, 2016

CProgramming. http://www.cprogramming.com/tutorial/c-tutorial.html (La quantitat de tutorials sobre llenguatge C a internet i en forma de llibre és enorme, i en diversitat d'idiomes)

B.W. Kernighan, Ritchie, D.M., The C programming language. 2nd edition. 1988

 

Programari

 En l'assignatura s'utilitza SageMath, Python, Latex, i C. Durant el curs es donaran instruccions necessàries per la seva correcta instal·lació, així com recomanacions sobre els possibles editors. 

 

Grups i idiomes de l'assignatura

La informació proporcionada és provisional fins al 30 de novembre. A partir d'aquesta data, podreu consultar l'idioma de cada grup a través d'aquest enllaç. Per accedir a la informació, caldrà introduir el CODI de l'assignatura

Tipus de docència Grup Idioma Semestre Torn
(PLAB) Pràctiques de laboratori 1 Català anual matí-mixt
(PLAB) Pràctiques de laboratori 2 Català anual matí-mixt
(PLAB) Pràctiques de laboratori 3 Català anual matí-mixt
(PLAB) Pràctiques de laboratori 4 Català anual matí-mixt