Professional Documents
Culture Documents
Teoria 1
Teoria 1
Inici
Fonaments dInformtica
Contingut
Sessions de Teoria
Pgina 1 de 29
Tornar
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 1/29
Contingut
Edicions UPC
1 Introducci a la programaci 3
Inici
2 Conceptes bsics de Programaci Estructurada
Contingut en C++ 9
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 2/29
1. Introducci a la programaci
1. Introducci a la programaci
Edicions UPC
Motivaci
Inici
Teoria
Metodologia
Conjunt de tcniques
que contribueixen a que sigui una tasca:
Pgina 3 de 29
Efica
Tornar Eficient
Pantalla Completa Paradigmes de programaci: imperativa, orientada a
objectes, genrica, ...
Llenguatges dalt nivell: C, Pascal, C++, Java, ...
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 3/29
1. Introducci a la programaci
Edicions UPC
Inici
Desenvolupament dun programa
Contingut
Les etapes per a desenvolupar un programa sn bsica-
ment:
Entendre/especificar el problema
Plantejar/planificar la soluci
Pgina 4 de 29
Formular la soluci
Tornar
Avaluar la correcci de la soluci proposada
Pantalla Completa La formulaci de la soluci es basa en el concepte
dalgorisme.
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 4/29
1. Introducci a la programaci
Edicions UPC
Desenvolupament dun programa
Inici
Problema
Contingut
1. Anlisi de requeriments. Definici i especificaci del problema
2. Disseny del programa
4. Proves
Tornar
Pantalla Completa
Programa
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 5/29
1. Introducci a la programaci
Edicions UPC
Definici de conceptes
Inici
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 6/29
1. Introducci a la programaci
Edicions UPC
Definici de conceptes
Inici
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 7/29
1. Introducci a la programaci
Edicions UPC
Inici
Objectius
Contingut
Lobjectiu bsic del curs s dissenyar i implementar pro-
grames de forma:
Correcta: qualitat fonamental i imprescindible
Pgina 8 de 29 Intelligible: clar i ben estructurat.
Tornar
Eficient: rpid i fa un bon s dels recursos
(memria).
Pantalla Completa
General: de fcil s, manteniment, etc.
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 8/29
2. Conceptes bsics de Programaci Estructurada en C++
Tornar
// Accions/Sentencies
<< <<
return
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 9/29
Edicions UPC
Objectes
Inici Lentorn dun programa est format per objectes lestat dels
quals es pot observar i/o modificar. Un objecte t tres
Contingut atributs:
Nom o identificador
Tipus
Valor
Pgina 10 de 29
Tornar
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 10/29
2. Conceptes bsics de Programaci Estructurada en C++
Identificadors:
Edicions UPC
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 11/29
Concepte de tipus:
Edicions UPC
Contingut
operacions poden ser:
Externes
Internes
i al mateix temps:
Pgina 12 de 29 Totals
Parcials
Tornar
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 12/29
2. Conceptes bsics de Programaci Estructurada en C++
Valors:
Edicions UPC
Constant
Variable
Pgina 13 de 29
Tornar
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 13/29
Edicions UPC
Classificaci dels tipus
per definir tipus nous a partir dels tipus existents (pre-
definits o definits prviament).
Pgina 14 de 29
Tipus elementals de C++
Tornar
C++ ofereix tipus predefinits per els valors lgics
(booleans), els carcters, els nmeros enters i els nmeros
Pantalla Completa reals.
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 14/29
2. Conceptes bsics de Programaci Estructurada en C++
!
true true false true true
Pgina 15 de 29 true false false false true
false true true false true
Tornar
false false true false false
Pantalla Completa
Lleis de Morgan
Tancar =
=
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 15/29
Inici
Rang de valors: Conjunt finit de carcters alfanumrics
Operadors interns:
Contingut
Operadors externs: , , <, < , >, >
Sintaxi de valors: Es representen posant el carcter al-
fanumric entre cometes simples. Ex-
emples:
Pgina 16 de 29
Tornar
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 16/29
2. Conceptes bsics de Programaci Estructurada en C++
Inici
Rang de valors: Conjunt de valors enters compresos
entre un valor mnim i un
Contingut
valor mxim
Operadors interns: (canvi de signe), , , , ,
Operadors externs: , , <, < , >, >
Sintaxi de valors: Es representen tal i com ho fem nor-
malment. Exemples: , ,
Pgina 17 de 29
Notes:
Tornar
ha de ser o ms petit, ha de
Pantalla Completa
ser com a mnim
El tipus elemental int t les segents variacions (modi-
Tancar
ficadors): short, long. Els tres es poden combinar amb
unsigned.
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 17/29
Edicions UPC
Utilitzant loperador i la llibreria
podem saber els bytes de memria que
Inici ocupa el tipus per a una implementaci / compilador
concret.
Contingut
Pgina 18 de 29
Tornar
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 18/29
2. Conceptes bsics de Programaci Estructurada en C++
Sortir
cisi).
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 19/29
Edicions UPC
Tipus definits per lusuari: Tipus enumerats
Contingut
Exemples
enum
enum
Pgina 20 de 29
Tornar
enum
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 20/29
2. Conceptes bsics de Programaci Estructurada en C++
Edicions UPC
Declaraci dobjectes: Declaraci de constants
Inici
Exemples
const double
Pgina 21 de 29
const double
const double
Tornar
const double
Pantalla Completa
const int
const char
Tancar const
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 21/29
Edicions UPC
Declaraci dobjectes: Declaraci de variables
Inici
Exemples
int
Pgina 22 de 29
double
double
Tornar
char
Pantalla Completa
bool false int
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 22/29
2. Conceptes bsics de Programaci Estructurada en C++
Expressions
Edicions UPC
Una expressi s qualsevol combinaci correcta
Inici
doperands i operadors.
Contingut
Sintaxi
Un valor s una expressi
Una variable s una expressi
Una constant s una expressi
Pgina 23 de 29
Si E s una expressi (E) tamb ho s
Si E s una expressi i s un operador unari E
Tornar
tamb ho s
Pantalla Completa
Si E1 i E2 sn expressions i s un operador binari
E1 E2 tamb ho s
Tancar
Si E1, E2,. . . ,En sn expressions i f s una funci
Sortir
daritat n f (E1 , E2 , . . . , En ) tamb ho s
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 23/29
Exemples
Edicions UPC
Inici
Contingut
Pgina 24 de 29
Tornar
Pantalla Completa
Tancar
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 24/29
2. Conceptes bsics de Programaci Estructurada en C++
Avaluaci dexpressions
Edicions UPC El resultat davaluar una expressi s un valor i per tant t
un nic tipus.
Inici El resultat davaluar una expressi E s:
Contingut
Si E s un valor el resultat s directament el valor
Si E s una variable el resultat s el valor que cont la
variable en el moment de lavaluaci
Si E s una constant el resultat s el seu valor (fixat a
la seva definici)
Pgina 25 de 29
Si E s (E1) el resultat s el resultat davaluar E1
Tornar Si E s E1 el resultat s el resultat daplicar loperador
unari al resultat davaluar E1
Si E s E1 E2 el resultat s el resultat daplicar
Pantalla Completa
Tancar
loperador als resultats davaluar E1 i E2
Si E s f (E1, E2, . . . , En) el resultat s el resultat
Sortir
daplicar f als resultats davaluar E1 , E2 . . . En
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 25/29
2. Les funcions
3. (canvi de signe),
4. , ,
Pgina 26 de 29
5. ,
6. , , <, < , >, >
Tornar
7.
Pantalla Completa
8.
Tancar Els parntesis serveixen per a modificar les prioritats.
A igualtat de prioritats savalua desquerra a dreta.
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 26/29
2. Conceptes bsics de Programaci Estructurada en C++
Exemples davaluaci:
2
Edicions UPC
Inici 1
2
Contingut el resultat ser 1
1
2
el resultat ser 0
1
6
3
Pgina 27 de 29
( ) (( ) ) ( )
2
1 4
Tornar
5
4
Pantalla Completa
2
Tancar
Sortir
1
3
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 27/29
int void
// Declaraci duna variable per guardar el radi
double
// Demanem el valor del radi a lusuari
<<
Pgina 28 de 29 // El llegim i el guardem a la variable radi
>>
// Declarem una variable per a la longitud de
Tornar
// la circumferncia amb el valor corresponent
double
Pantalla Completa // Escrivim la longitud de la circumferncia
<<
Tancar <<
Sortir
Jordi
c Marco i Fatos Xhafa, 2006. Edicions
c UPC, 2006. 28/29