mooc de introducción a sage. variables numéricas ... filemooc de introducci on a sage. variables...
TRANSCRIPT
![Page 1: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/1.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
MOOC de Introduccion a sage.Variables numericas, condicionales y ciclos while
Leandro Marın
![Page 2: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/2.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
1 Variables Numericas
2 Variables y Operaciones Booleanas
3 Ciclos while
4 Condicionales
![Page 3: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/3.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Los numeros enteros I
Las variables enteras utilizan las notaciones habituales para lasuma, resta y multiplicacion.
a = 10
b = 35
print a+b
print a-b
print a*b
Nos dara como resultado
45
-25
350
En el caso de la division con resto debemos utilizar el sımbolo// para el cociente y % para el resto.
![Page 4: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/4.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Los numeros enteros II
a = -10
b = 15
c = 10
print a //b
print a%b
print c //b
print c%b
Nos dara como resultado
-1
5
0
10
Notemos que se aplica la regla de que si el resto no es 0, eldivisor y el resto tienen el mismo signo.
![Page 5: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/5.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Los numeros enteros III
Si utilizamos / en lugar de // lo que calcularemos es elnumero racional a
b , no el cociente de los dos numeros.
No existe problema por el tamano de los numeros, podemosoperar con numeros grandes de forma natural
print 2^1024
nos dara
17976931348623159077293051907890247336179769789423
06572734300811577326758055009631327084773224075360
21120113879871393357658789768814416622492847430639
47412437776789342486548527630221960124609411945308
29520850057688381506823424628814739131105408272371
63350510684586298239947245938479716304835356329624
224137216
![Page 6: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/6.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Los numeros enteros IV
El sımbolo de exponenciacion puede ser ^ o tambien **. Enesto es diferente de otros lenguajes porque el sımbolo ^ norepresenta la operacion logica XOR que se escribira ^^.
![Page 7: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/7.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Numeros Racionales I
Tal y como hemos mencionado antes, si utilizamos la notaciona/b lo que tenemos es el numero racional a
b que podemosoperar con las notaciones usuales:
a = 3/5
b = 4/6
print a+b
print a*b
print a-b
nos dara
19/15
2/5
-1/15
En este caso tampoco tenemos limitaciones de tamano.
![Page 8: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/8.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Numeros Racionales II
El resultado nos aparecera simplificado (es decir, connumerador y denominador sin factores comunes).
![Page 9: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/9.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Expresiones con radicales I
Podemos operar tambien con radicales
a = 1+sqrt(2)
b = 1-sqrt(2)
print a*b
print a^10
obtendremos
-(sqrt(2) + 1)*(sqrt(2) - 1)
(sqrt(2) + 1)^10
A diferencia de lo que pasaba con los numeros racionales, lasexpresiones no se simplifican. Si queremos expandir elresultado, tenemos que pedirlo explıcitamente
![Page 10: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/10.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Expresiones con radicales II
print expand(a*b)
print expand(a^10)
nos dara
-1
2378*sqrt(2) + 3363
![Page 11: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/11.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Numeros Complejos I
Podemos operar con la unidad compleja i =√−1 como con
los demas radicales. La unidad compleja se denotara I.
print 1/(1+I)
print (1+I)^10
nos dara
-1/2*I + 1/2
32*I
Notemos que en este caso la simplificacion si se hace de formaautomatica.
![Page 12: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/12.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables Numericas
Valor Numerico
Cuando lo que queremos no es una expresion algebraica sinoel valor numerico de la misma, podemos utilizar el operador n.
print n(34/19)
print n((1+sqrt(2))/(1-sqrt(3)))
print n(1/(1+I))
nos dara
1.78947368421053
-3.29787705636258
0.500000000000000 - 0.500000000000000*I
![Page 13: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/13.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables y Operaciones Booleanas
Valores Booleanos
Los dos valores booleanos son True y False.
print 7<19
print 7>19
Nos dara
True
False
Estos valores se pueden comparar o asignar a variables.
a = 7<19
print a
print a == False
Nos dara
True
False
![Page 14: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/14.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables y Operaciones Booleanas
Valores Booleanos
Los dos valores booleanos son True y False.
print 7<19
print 7>19
Nos dara
True
False
Estos valores se pueden comparar o asignar a variables.
a = 7<19
print a
print a == False
Nos dara
True
False
![Page 15: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/15.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables y Operaciones Booleanas
Operadores Booleanos
Los operadores booleanos se escriben con la correspondientepalabra en ingles, es decir and, or y not.
Se pueden combinar de la forma habitual resultando frasescasi legibles, por ejemplo
x = 3
y = 4
a = x < y and not x == y-7
print a
Nos dara True.
Podemos agrupar con parentesis las expresiones complejas.
![Page 16: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/16.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables y Operaciones Booleanas
Operadores Booleanos
Los operadores booleanos se escriben con la correspondientepalabra en ingles, es decir and, or y not.
Se pueden combinar de la forma habitual resultando frasescasi legibles, por ejemplo
x = 3
y = 4
a = x < y and not x == y-7
print a
Nos dara True.
Podemos agrupar con parentesis las expresiones complejas.
![Page 17: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/17.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Variables y Operaciones Booleanas
Operadores Booleanos
Los operadores booleanos se escriben con la correspondientepalabra en ingles, es decir and, or y not.
Se pueden combinar de la forma habitual resultando frasescasi legibles, por ejemplo
x = 3
y = 4
a = x < y and not x == y-7
print a
Nos dara True.
Podemos agrupar con parentesis las expresiones complejas.
![Page 18: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/18.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Ciclos while
Planteamiento I
Supongamos que queremos repetir un cierto codigo hasta quese cumpla una condicion.
Por ejemplo, supongamos que queremos escribir los numerospositivos tales que su cuadrado es menor que 39.
Como en muchos otros lenguajes, esto se puede hacer con unciclo while que consiste en dar un valor inicial a una variable,por ejemplo a = 1 y mientras que a^2<39 escribir el valor de a
e incrementar su valor para calcular el siguiente.
![Page 19: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/19.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Ciclos while
Planteamiento I
Supongamos que queremos repetir un cierto codigo hasta quese cumpla una condicion.
Por ejemplo, supongamos que queremos escribir los numerospositivos tales que su cuadrado es menor que 39.
Como en muchos otros lenguajes, esto se puede hacer con unciclo while que consiste en dar un valor inicial a una variable,por ejemplo a = 1 y mientras que a^2<39 escribir el valor de a
e incrementar su valor para calcular el siguiente.
![Page 20: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/20.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Ciclos while
Planteamiento I
Supongamos que queremos repetir un cierto codigo hasta quese cumpla una condicion.
Por ejemplo, supongamos que queremos escribir los numerospositivos tales que su cuadrado es menor que 39.
Como en muchos otros lenguajes, esto se puede hacer con unciclo while que consiste en dar un valor inicial a una variable,por ejemplo a = 1 y mientras que a^2<39 escribir el valor de a
e incrementar su valor para calcular el siguiente.
![Page 21: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/21.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Ciclos while
Planteamiento II
El codigo se podrıa escribir del siguiente modo:
a = 1
while a^2<39:
print a
a = a+1
El resultado serıan los numeros
1
2
3
4
5
6
![Page 22: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/22.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Ciclos while
Bloques de Codigo e Indentacion
En el codigo anterior podemos ver la estructura de un ciclowhile, que es la siguiente:
while expresion_booleana :
linea 1
linea 2
...
linea k
Fijemonos que las distintas lıneas de codigo que se debenrepetir en el ciclo estan todas indentadas una cantidad fija deespacios. Esta es la forma como se sabe que lıneas pertenecenal ciclo y cuales no.
El inicio de un bloque de codigo indentado siempre vieneprecedido por un lınea que termina con : .
![Page 23: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/23.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Ciclos while
Bloques de Codigo e Indentacion
En el codigo anterior podemos ver la estructura de un ciclowhile, que es la siguiente:
while expresion_booleana :
linea 1
linea 2
...
linea k
Fijemonos que las distintas lıneas de codigo que se debenrepetir en el ciclo estan todas indentadas una cantidad fija deespacios. Esta es la forma como se sabe que lıneas pertenecenal ciclo y cuales no.
El inicio de un bloque de codigo indentado siempre vieneprecedido por un lınea que termina con : .
![Page 24: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/24.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Ciclos while
Bloques de Codigo e Indentacion
En el codigo anterior podemos ver la estructura de un ciclowhile, que es la siguiente:
while expresion_booleana :
linea 1
linea 2
...
linea k
Fijemonos que las distintas lıneas de codigo que se debenrepetir en el ciclo estan todas indentadas una cantidad fija deespacios. Esta es la forma como se sabe que lıneas pertenecenal ciclo y cuales no.
El inicio de un bloque de codigo indentado siempre vieneprecedido por un lınea que termina con : .
![Page 25: MOOC de Introducción a sage. Variables numéricas ... fileMOOC de Introducci on a sage. Variables num ericas, condicionales y ciclos while Variables Num ericas Los numeros enterosI](https://reader030.vdocuments.net/reader030/viewer/2022041300/5e0ee190b1e08601d353fc77/html5/thumbnails/25.jpg)
MOOC de Introduccion a sage. Variables numericas, condicionales y ciclos while
Condicionales
Condicionales
Si en lugar de repetir una accion mientras se cumpla unacondicion lo que queremos es hacerla una unica vez si secumple una condicion o no hacerla en caso contrario, debemosutilizar if.
if expresion_booleana :
linea 1
...
linea k
else:
linea k+1
...
linea n
el bloque else se ejecutara si la condicion booleana es False.Si no existe este bloque, no se hace nada.