Programació I ( P1 )
| Crèdits: |
Departament: |
Tipus: |
Requisits: |
| 9.0 |
LSI |
Obligatòria per l'EI
Obligatòria per l'ETIG
Obligatòria per l'ETIS
|
|
Professors
| Responsable: | Fernando Orejas Valdés (orejas lsi.upc.edu). |
| Altres: | Àngela Nebot Castells (angela lsi.upc.edu) Cristina Zoltan Torres (zoltan lsi.upc.edu) Enric Martínez Gomàriz (gomariz lsi.upc.edu) Enrique Romero Merino (eromero lsi.upc.edu) Fco. Javier Larrosa Bondia (larrosa lsi.upc.edu) Gabriel Plana Gavalda (gplana ac.upc.edu) Gabriel Valiente Feruglio (valiente lsi.upc.edu) Isabel Navazo Alvaro (isabel lsi.upc.edu) Jordi Cortadella Fortuny (jordi.cortadella upc.edu) Juan Luis Esteban Ángeles (esteban lsi.upc.edu) Lluis Antoni Belanche Muñoz (belanche lsi.upc.edu) M. Luisa Bonet Carbonell (bonet lsi.upc.edu) Nicola Galesi (galesi lsi.upc.edu). |
Objectius Generals
(Informació no introduïda)
Objectius Específics
Coneixements
- Sintàxi i semàntica de les expressions i instruccions d'un llenguatge de programació imperatiu.
- Tipus de dades escalars, taules i seqüències.
- Algorismes bàsics amb dades escalars i estructurades (nombres primers, mcd, recorreguts, cerques, ordenació, etc.).
Habilitats
- Especificar problemes de programació.
- Donar algorismes correctes i clars per a solucionar problemes
de programació senzills, aplicant el mètode inductiu.
- Codificar aquests algorismes en un llenguatge de programació imperatiu.
- Utilitzar eines d'edició, compilació i execució per a codificar i executar
programes.
- Raonar informalment sobre la correctesa d'algorismes.
Competències
- Capacitat per al raonament crític i lògico-matemàtic
- Capacitat per construir raonaments informals o semiformals però precisos, i jutjar la validesa d'un raonament informal o semiformal.
- Capacitat per entendre problemes: davant l'enunciat d'un problema, distingir les dades (o els elements de partida), les incògnites (o el que es demana) i les hipòtesis i lleis aplicables.
- Capacitat d'abstracció. Capacitat d'enfrontar-se a problemes nous recorrent conscientment a estratègies que han estat útils en problemes resolts anteriorment.
Continguts
Hores estimades de:
| T |
P |
L |
Alt |
L Ext. |
Est |
A Ext. |
| Teoria |
Problemes |
Laboratori |
Altres activitats |
Laboratori extern |
Estudi |
Altres hores fora d'horari fixat |
|
1. Introducció
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Nocions basiques d'especificació, disseny i implementació. Exemples senzills. Nocions d 'estat.
d'un programa i transformació de l'estat. Llenguatges de programació.
Tipus de dades i expressions. Especificació.
Tipus de dades escalars: domini i operacions. Tipus d'expressions. Correctesa sintàctica i semàntica.
Especificació amb pre/post condició i especificació funcional.
|
2. Instruccions bàsiques. Funcions
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Assignació. Composició seqüencial. Composició alternativa. Funcions. Concepte de paràmetre.
|
3. Raonament inductiu. Iteració i recursivitat
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
L'ús de la inducció en el disseny de programes. Funcions recursives. Composició iterativa. Condicions
d'acabament. Exemples.
|
4. Taules
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
El concepte de taula. Exemples. Algoritmes bàsics sobre taules.
|
5. Accions
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
|
Concepte d'acció. Tipus de paràmetres. Mecanismes d'implementació del pas de paràmetres. Exemples.
|
6. Ordenació i cerca en taules
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Cerca dicotòmica. Algorismes d'ordenació bàsics. Algorismes avançats.
|
7. Seqüències
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Concepte de seqüència. Operacions. Recorreguts i cerques en seqüències. Exemples sobre seqüències de caràcters.
|
8. Matrius
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Suma, matriu simètrica, matriu transposta, multiplicació.
|
9. Generació de seqüències d'elements
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
Combinació d'iteració amb recursivitat: permutacions, seqüències d'elements repetits/no repetits, seqüències creixents, etc.
|
|
10. Entorn i llenguatge de programació
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
|
Edició, compilació i execució de programa. Elements bàsics del llenguatge Java. Traducció del pseudocodi usat a teoria i problemes a Java.
|
| - Total per tipus |
T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
- Hores addicionals dedicades a l'avaluació:
|
0 |
- Total hores de treball per l'estudiant |
0 |
|
Metodologia docent
(Informació no introduïda)
Mètode d'avaluació
La nota d'aquesta assignatura ve donada per tres components: la nota d'un examen parcial (NP), la nota del laboratori NL i la nota del examen final (NF). En concret, la nota final (nota N) és:
N = 0.3 max(NP,NF) + 0.15 NL + 0.55 NF
En cas de còpia parcial o total en qualsevol de les avaluacions de l'assignatura s'aplicarà el que preveu la Normativa Acadèmica General de la UPC: realitzar de forma fraudulenta qualsevol acte d'avaluació comporta, com a mínim, una qualificació 0 de tota l'assignatura, i, possiblement, processos disciplinaris més severs. Més informació a l'apartat "L'avaluació de les assignatures" de la Guia Docent.
Bibliografía bàsica
- - Cortadella J., Rubio A., Valentín L. Programació I (notes de curs) , CPET, 2001.
Bibliografía complementària
- Castro J., et al. Curs de programació, McGraw Hill, 1992.
- Bishop J. Java: fundamentos de programación, Addison-Wesley, 1999.
- Shen A. Algorithms and Programming: problems and solutions, Brikhauser, 1997.
Enllaços web
(Informació no introduïda)
Capacitats prèvies
(Informació no introduïda)
|