SlideShare una empresa de Scribd logo
1 de 43
ARITMÉTICA DE
OPERADORES
SESIÓN 02
OTRO PROGRAMA EN C++: SUMA DE ENTEROS
• Nuestro siguiente programa utiliza el objeto flujo de entrada std::cin y el
operador de extracción de flujo, >>, para obtener dos enteros escritos por el
usuario mediante el teclado, calcula la suma de esos valores e imprime el
resultado mediante el uso de std::cout.
• En la se muestra el programa, junto con los datos de entrada y salida de ejemplo.
PROGRAMA DE SUMA QUE MUESTRA LA SUMA DE DOS
ENTEROS INTRODUCIDOS MEDIANTE EL TECLADO.
PROGRAMA DE SUMA QUE MUESTRA LA SUMA DE DOS
ENTEROS INTRODUCIDOS MEDIANTE EL TECLADO.
OTRO PROGRAMA EN C++: SUMA DE ENTEROS
• Los comentarios en la línea 2
• // Programa de suma que muestra la suma de dos enteros.
• indican el nombre del archivo y el propósito del programa. La directiva del
preprocesador de C++
• #include <iostream> // permite al programa realizar operaciones de entrada y
salida
• en la línea 3 incluye el contenido del archivo de encabezado <iostream> en el
programa.
OTRO PROGRAMA EN C++: SUMA DE ENTEROS
• El programa empieza a ejecutarse con la función main (línea 6). La llave izquierda (línea 7) marca
el inicio del cuerpo de main y la correspondiente llave derecha (línea 24) marca el fin de main.
• Las líneas 9 a 11
• int numero1; // primer entero a sumar
• int numero2; // segundo entero a sumar
• int suma; // suma de numero1 y numero2
• son declaraciones. Los identificadores numero1, numero2 y suma son nombres de variables
OTRO PROGRAMA EN C++: SUMA DE ENTEROS
• Una variable es una ubicación en la memoria de la computadora, en la que puede
almacenarse un valor para usarlo mediante un programa. Estas declaraciones
especifican que las variables numero1, numero2 y suma son datos de tipo int, lo
cual significa que estas variables contienen valores enteros; es decir, números
enteros como 7, –11, 0 y 31914. Todas las variables se deben declarar con un
nombre y un tipo de datos antes de poder usarlas en un programa.
OTRO PROGRAMA EN C++: SUMA DE ENTEROS
• Pueden declararse diversas variables del mismo tipo en una declaración, o en varias
declaraciones. Podríamos haber declarado las tres variables en una declaración, como
se muestra a continuación:
• int numero1, numero2, suma;
• Esto reduce la legibilidad del programa y evita que podamos proporcionar
comentarios que describan el propósito de cada variable. Si se declara más de un
nombre en una declaración (como se muestra aquí), los nombres van separados por
comas (,); a esto se le conoce como lista separada por comas.
BUENA PRÁCTICA DE PROGRAMACIÓN
• Coloque un espacio después de cada coma (,) para aumentar la legibilidad de los
programas
• Algunos programadores prefieren declarar cada variable en una línea separada.
Este formato permite insertar fácilmente un comentario descriptivo a un lado de
cada declaración
OTRO PROGRAMA EN C++: SUMA DE ENTEROS
• Pronto hablaremos sobre el tipo de datos double para especificar números reales, y sobre el tipo de
datos char para especificar datos tipo carácter. Los números reales son números con puntos
decimales, como 3.4, 0.0 y –11.19. Una variable char puede guardar sólo una letra minúscula, una letra
mayúscula, un dígito o un carácter especial (como $ o *).
• Los tipos como int, double y char se conocen comúnmente como tipos fundamentales, tipos primitivos
o tipos integrados.
• Los nombres de los tipos fundamentales son palabras clave y, por lo tanto, deben aparecer todos en
minúsculas.
OTRO PROGRAMA EN C++: SUMA DE ENTEROS
• El nombre de una variable (como numero1) es cualquier identificador válido que
no sea una palabra clave. Un identificador es una serie de caracteres que
consisten en letras, dígitos y símbolos de guión bajo ( _ ) que no empieza con un
dígito. C++ es sensible a mayúsculas y minúsculas: las letras mayúsculas y
minúsculas son distintas, por lo que 𝑎1 𝑦 𝐴1 se consideran identificadores
distintos.
ARITMÉTICA
• La mayoría de los programas realizan cálculos aritméticos. Los operadores aritméticos
se sintetizan en la figura. Observe el uso de varios símbolos especiales que no se
utilizan en álgebra. El asterisco (*) indica la multiplicación, y el signo de porcentaje (%)
es el operador módulo, el cual describiremos en breve. Los operadores aritméticos en
la figura son operadores binarios, ya que funcionan con dos operandos. Por ejemplo,
la expresión numero1 + numero2 contiene el operador binario + y los dos operandos
numero1 y numero2.
ARITMÉTICA
ARITMÉTICA
• La división de enteros (es decir, donde tanto el numerador como el denominador
son enteros) produce un cociente entero; por ejemplo, la expresión 7 / 4 da como
resultado 1, y la expresión 17 / 5 da como resultado 3. Observe que cualquier
parte fraccionaria en una división de enteros se descarta (es decir, se trunca); no
ocurre un redondeo.
ARITMÉTICA
• C++ proporciona el operador módulo, %, el cual produce el residuo después de
la división entera. El operador módulo sólo se puede utilizar con operandos
enteros. La expresión 𝑥 % 𝑦 produce el residuo después de que x se divide entre
y. Por lo tanto, 7 % 4 produce 3, y 17 % 5 produce 2. Posteriormente
consideramos muchas aplicaciones interesantes del operador módulo, como
determinar si un número es múltiplo de otro (un caso especial de esta aplicación
es determinar si un número es par o impar).
ERROR COMÚN DE PROGRAMACIÓN
• Tratar de utilizar el operador módulo (%) con operandos no enteros es un error
de compilación
EXPRESIONES ARITMÉTICAS EN FORMATO DE
LÍNEA RECTA
• En la computadora, las expresiones aritméticas en C++ deben escribirse en
formato de línea recta. Por lo tanto, las expresiones como “a dividida entre b”
deben escribirse como a / b, de manera que todas las constantes, variables y
operadores aparezcan en una línea recta. La siguiente notación algebraica:
EXPRESIONES ARITMÉTICAS EN FORMATO DE
LÍNEA RECTA
•
𝑎
𝑏
• no es generalmente aceptable para los compiladores, aunque ciertos paquetes de
software de propósito especial soportan una notación más natural para las
expresiones matemáticas complejas.
PARÉNTESIS PARA AGRUPAR SUBEXPRESIONES
• Los paréntesis se utilizan en las expresiones en C++ de la misma manera que en
las expresiones algebraicas. Por ejemplo, para multiplicar a por la cantidad b + c,
escribimos
• 𝑎 ∗ ( 𝑏 + 𝑐 ).
REGLAS DE PRECEDENCIA DE OPERADORES
• C++ aplica los operadores en expresiones aritméticas en una secuencia precisa,
determinada por las siguientes reglas de precedencia de operadores, que
generalmente son las mismas que las que se utilizan en álgebra:
1. Los operadores en las expresiones contenidas dentro de pares de paréntesis se
evalúan primero. Se dice que los paréntesis tienen el “nivel más alto de
precedencia”. En casos de paréntesis anidados o incrustados, como: ( ( a + b ) + c )
los operadores en el par más interno de paréntesis se aplican primero.
REGLAS DE PRECEDENCIA DE OPERADORES
2. Las operaciones de multiplicación, división y módulo se aplican a continuación. Si
una expresión contiene varias de esas operaciones, los operadores se aplican de
izquierda a derecha. Se dice que los operadores de multiplicación, división y residuo
tienen el mismo nivel de precedencia.
3. Las operaciones de suma y resta se aplican al último. Si una expresión contiene
varias de esas operaciones, los operadores se aplican de izquierda a derecha. Los
operadores de suma y resta tienen el mismo nivel de precedencia.
REGLAS DE PRECEDENCIA DE OPERADORES
• El conjunto de reglas de precedencia de operadores define el orden en el que C++ aplica los
operadores. Cuando decimos que ciertos operadores se aplican de izquierda a derecha, nos referimos
a su asociatividad. Por ejemplo, en la expresión
• 𝑎 + 𝑏 + 𝑐
• los operadores de suma (+) se asocian de izquierda a derecha, por lo que a + b se calcula primero, y
después se agrega c a esa suma para determinar el valor de toda la expresión. Más adelante veremos
que algunos operadores se asocian de derecha a izquierda. En la figura se sintetizan estas reglas de
precedencia de operadores
REGLAS DE PRECEDENCIA DE OPERADORES
EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE
C++
• Ahora, consideremos varias expresiones en vista de las reglas de precedencia de operadores. Cada
ejemplo enlista una expresión algebraica y su equivalente en C++. El siguiente es un ejemplo de una
media ( promedio) aritmética de cinco términos:
• Álgebra:
• 𝑚 =
( 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 )
5
;
• C++:
• 𝑚 = ( 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 ) / 5;
EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE
C++
• Los paréntesis son obligatorios, ya que la división tiene una mayor precedencia
que la suma. La cantidad completa ( 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 ) va a dividirse entre 5.
Si los paréntesis se omiten por error, obtenemos 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 / 5, lo cual
da como resultado
• 𝑎 + 𝑏 + 𝑐 + 𝑑 +
𝑒
5
EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE
C++
EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE
C++
• Los números dentro de los círculos bajo la instrucción indican el orden en el que
C++ aplica los operadores. Las operaciones de multiplicación, residuo y división
se evalúan primero, en orden de izquierda a derecha (es decir, se asocian de
izquierda a derecha), ya que tienen mayor precedencia que la suma y la resta. Las
operaciones de suma y resta se evalúan a continuación. Estas operaciones
también se aplican de izquierda a derecha. Después se aplica el operador de
asignación
EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE
C++
EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE
C++
ERROR COMÚN DE PROGRAMACIÓN
• Algunos lenguajes de programación usan los operadores ∗∗ 𝑜 ^ para representar
la exponenciación. C++ no soporta estos operadores de exponenciación; si se
utilizan para este fin, se producen errores
BUENA PRÁCTICA DE PROGRAMACIÓN
• El uso de paréntesis redundantes en expresiones aritméticas complejas puede
hacer que éstas sean más fáciles de leer
TOMA DE DECISIONES: OPERADORES DE
IGUALDAD Y RELACIONALES
• Presentaremos una versión simple de la instrucción if de C++, la cual permite que
un programa tome una acción alternativa, con base en la verdad o falsedad de
cierta condición. Si se cumple la condición (es decir, si es verdadera), se ejecuta la
instrucción que está en el cuerpo de la instrucción if. Si la condición no se cumple
(es falsa), el cuerpo no se ejecuta. Veremos un ejemplo en breve.
TOMA DE DECISIONES: OPERADORES DE
IGUALDAD Y RELACIONALES
• Las condiciones en las instrucciones if pueden formarse utilizando los operadores
de igualdad y los operadores relacionales, que se sintetizan en la figura. Los
operadores relacionales tienen todos el mismo nivel de precedencia y se asocian
de izquierda a derecha. Los dos operadores de igualdad tienen el mismo nivel de
precedencia, que es menor que la precedencia de los operadores relacionales, y
se asocian de izquierda a derecha
TOMA DE DECISIONES: OPERADORES DE
IGUALDAD Y RELACIONALES
ERROR COMÚN DE PROGRAMACIÓN
• Se producirá un error de sintaxis si cualquiera de los operadores ==, !=, >= y <=
aparece con espacios entre su par de símbolos.
ERROR COMÚN DE PROGRAMACIÓN
• Invertir el orden del par de símbolos en cualquiera de los operadores !=, >= y <=
(al escribirlos como =!, => y =<, respectivamente) es comúnmente un error de
sintaxis. En algunos casos, escribir != como =! no será un error de sintaxis, sino
casi con certeza será un error lógico, el cual tiene un efecto en tiempo de
ejecución. Un error lógico fatal hace que un programa falle y termine antes de
tiempo. Un error lógico no fatal permite que un programa continúe ejecutándose,
pero por lo general produce resultados incorrectos
ERROR COMÚN DE PROGRAMACIÓN
• Confundir el operador de igualdad == con el operador de asignación = produce
errores lógicos. El operador de igualdad se debe leer como “es igual a”, y el
operador de asignación se debe leer como “obtiene” u “obtiene el valor de”, o “se
le asigna el valor de”. Algunas personas prefieren leer el operador de igualdad
como “doble igual”.
ERROR COMÚN DE PROGRAMACIÓN
• El siguiente ejemplo utiliza seis instrucciones if para comparar dos números introducidos por el usuario. Si la
condición en cualquiera de estas instrucciones if es verdadera, se ejecuta la instrucción de salida asociada con esa
instrucción if. En la figura se muestra el programa y los diálogos de entrada/salida de tres ejecuciones del ejemplo.
• Las líneas 6 a 8
• using std::cout; // el programa usa cout
• using std::cin; // el programa usa cin
• using std::endl; // el programa usa endl
ERROR COMÚN DE PROGRAMACIÓN
• son declaraciones using, las cuales eliminan la necesidad de repetir el prefijo std::,
como hicimos en programas anteriores.
• Una vez que insertamos estas declaraciones using, podemos escribir cout en
lugar de std::cout, cin en vez de std::cin y endl en lugar de std::endl,
respectivamente, en el resto del programa.
ERROR COMÚN DE PROGRAMACIÓN
ERROR COMÚN DE PROGRAMACIÓN
ERROR COMÚN DE PROGRAMACIÓN
EJERCICIO
• Utilizando las instrucciones que escribió anteriormente, escriba un programa
completo que calcule e imprima el producto de tres enteros. Agregue
comentarios al código donde sea apropiado. [Nota: necesitara escribir las
declaraciones using necesarias.]

Más contenido relacionado

La actualidad más candente

Teorema de rolle, valor medio y regla l' de hopital
Teorema de rolle, valor medio y regla l' de hopitalTeorema de rolle, valor medio y regla l' de hopital
Teorema de rolle, valor medio y regla l' de hopitalJOSEANDRESOCHOAORELL
 
INTEGRALES DOBLES
INTEGRALES DOBLESINTEGRALES DOBLES
INTEGRALES DOBLESclaualemana
 
Integral definida (3)
Integral definida (3)Integral definida (3)
Integral definida (3)ronixito
 
3.1.1 Representación en memoria.pptx
3.1.1 Representación en memoria.pptx3.1.1 Representación en memoria.pptx
3.1.1 Representación en memoria.pptxRam Vazquez
 
Teorema de Convolución
Teorema de ConvoluciónTeorema de Convolución
Teorema de ConvoluciónDiego Salazar
 
Programación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosProgramación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosJosé Antonio Sandoval Acosta
 
TABLA DE DERIVADAS
TABLA DE DERIVADASTABLA DE DERIVADAS
TABLA DE DERIVADASEducación
 
Tipos de metodos numericos
Tipos de metodos numericosTipos de metodos numericos
Tipos de metodos numericosTensor
 
Resolución de Ecuaciones Diferenciales; Metodo de Variacion de Parametros
Resolución de Ecuaciones Diferenciales; Metodo de Variacion de ParametrosResolución de Ecuaciones Diferenciales; Metodo de Variacion de Parametros
Resolución de Ecuaciones Diferenciales; Metodo de Variacion de ParametrosKaris
 
Estructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesEstructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesJosé Antonio Sandoval Acosta
 
Maximos, Minimos y Mutliplicadores de Lagrange
Maximos, Minimos y Mutliplicadores de LagrangeMaximos, Minimos y Mutliplicadores de Lagrange
Maximos, Minimos y Mutliplicadores de LagrangeJuan Jose Durango
 
Ecuaciones diferenciales parciales E.D.P.
Ecuaciones diferenciales parciales E.D.P.Ecuaciones diferenciales parciales E.D.P.
Ecuaciones diferenciales parciales E.D.P.jordan rojas alarcon
 

La actualidad más candente (20)

Familia de Curvas
Familia de CurvasFamilia de Curvas
Familia de Curvas
 
Matriz jacobiana
Matriz jacobianaMatriz jacobiana
Matriz jacobiana
 
Teorema de rolle, valor medio y regla l' de hopital
Teorema de rolle, valor medio y regla l' de hopitalTeorema de rolle, valor medio y regla l' de hopital
Teorema de rolle, valor medio y regla l' de hopital
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Newton raphson
Newton raphsonNewton raphson
Newton raphson
 
INTEGRALES DOBLES
INTEGRALES DOBLESINTEGRALES DOBLES
INTEGRALES DOBLES
 
Integral definida (3)
Integral definida (3)Integral definida (3)
Integral definida (3)
 
Expresiones Regulares
Expresiones RegularesExpresiones Regulares
Expresiones Regulares
 
3.1.1 Representación en memoria.pptx
3.1.1 Representación en memoria.pptx3.1.1 Representación en memoria.pptx
3.1.1 Representación en memoria.pptx
 
Aplicacion laplace
Aplicacion laplaceAplicacion laplace
Aplicacion laplace
 
Teorema de Convolución
Teorema de ConvoluciónTeorema de Convolución
Teorema de Convolución
 
Programación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosProgramación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivos
 
Unidad 3 calculo integral
Unidad 3 calculo integralUnidad 3 calculo integral
Unidad 3 calculo integral
 
TABLA DE DERIVADAS
TABLA DE DERIVADASTABLA DE DERIVADAS
TABLA DE DERIVADAS
 
Tipos de metodos numericos
Tipos de metodos numericosTipos de metodos numericos
Tipos de metodos numericos
 
Resolución de Ecuaciones Diferenciales; Metodo de Variacion de Parametros
Resolución de Ecuaciones Diferenciales; Metodo de Variacion de ParametrosResolución de Ecuaciones Diferenciales; Metodo de Variacion de Parametros
Resolución de Ecuaciones Diferenciales; Metodo de Variacion de Parametros
 
Estructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesEstructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras Lineales
 
Presentacion De Serie De Fourier
Presentacion De Serie De FourierPresentacion De Serie De Fourier
Presentacion De Serie De Fourier
 
Maximos, Minimos y Mutliplicadores de Lagrange
Maximos, Minimos y Mutliplicadores de LagrangeMaximos, Minimos y Mutliplicadores de Lagrange
Maximos, Minimos y Mutliplicadores de Lagrange
 
Ecuaciones diferenciales parciales E.D.P.
Ecuaciones diferenciales parciales E.D.P.Ecuaciones diferenciales parciales E.D.P.
Ecuaciones diferenciales parciales E.D.P.
 

Similar a Ejercicios

Lenguajes de programacion c
Lenguajes de programacion cLenguajes de programacion c
Lenguajes de programacion ccharnisch
 
Unidad2
Unidad2Unidad2
Unidad2JHONNY
 
Operaciones Básicas
Operaciones BásicasOperaciones Básicas
Operaciones Básicaschembe
 
Lenguaje de programacion C++ 2
Lenguaje de programacion C++ 2Lenguaje de programacion C++ 2
Lenguaje de programacion C++ 2David
 
Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2camnav
 
Operaciones Basicas C++
Operaciones Basicas C++Operaciones Basicas C++
Operaciones Basicas C++yesid19
 
Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Joaquin1418
 
Lenguajes De Programacion C nivel1-unidad2
Lenguajes De Programacion C nivel1-unidad2Lenguajes De Programacion C nivel1-unidad2
Lenguajes De Programacion C nivel1-unidad2charnisch
 
Operaciones Básicas
Operaciones BásicasOperaciones Básicas
Operaciones Básicaschembe
 
Complementos
ComplementosComplementos
ComplementosTensor
 
3.3.- Operadores y Expresiones
3.3.- Operadores y Expresiones3.3.- Operadores y Expresiones
3.3.- Operadores y ExpresionesYenny Salazar
 
Material de apoyo unidad 3. datos y entidades primitivas
Material de apoyo unidad 3.  datos y entidades primitivasMaterial de apoyo unidad 3.  datos y entidades primitivas
Material de apoyo unidad 3. datos y entidades primitivasLeany González
 
Clase 3. Datos y Entidades Primitivas - Sullin Santaella
Clase 3. Datos y Entidades Primitivas - Sullin SantaellaClase 3. Datos y Entidades Primitivas - Sullin Santaella
Clase 3. Datos y Entidades Primitivas - Sullin SantaellaJosé Ricardo Tillero Giménez
 
Clase de datos variables constantes
Clase de datos variables constantesClase de datos variables constantes
Clase de datos variables constantesSol Hernández
 
Repasando Excel
Repasando ExcelRepasando Excel
Repasando Excelmpfarias
 

Similar a Ejercicios (20)

Lenguajes de programacion c
Lenguajes de programacion cLenguajes de programacion c
Lenguajes de programacion c
 
Unidad2
Unidad2Unidad2
Unidad2
 
Operaciones Básicas
Operaciones BásicasOperaciones Básicas
Operaciones Básicas
 
Lenguaje de programacion C++ 2
Lenguaje de programacion C++ 2Lenguaje de programacion C++ 2
Lenguaje de programacion C++ 2
 
Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2
 
Operaciones Basicas C++
Operaciones Basicas C++Operaciones Basicas C++
Operaciones Basicas C++
 
Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2
 
Lenguajes De Programacion C nivel1-unidad2
Lenguajes De Programacion C nivel1-unidad2Lenguajes De Programacion C nivel1-unidad2
Lenguajes De Programacion C nivel1-unidad2
 
Operaciones Básicas
Operaciones BásicasOperaciones Básicas
Operaciones Básicas
 
Complementos
ComplementosComplementos
Complementos
 
3.3.- Operadores y Expresiones
3.3.- Operadores y Expresiones3.3.- Operadores y Expresiones
3.3.- Operadores y Expresiones
 
Material de apoyo unidad 3. datos y entidades primitivas
Material de apoyo unidad 3.  datos y entidades primitivasMaterial de apoyo unidad 3.  datos y entidades primitivas
Material de apoyo unidad 3. datos y entidades primitivas
 
Clase 3. Datos y Entidades Primitivas - Sullin Santaella
Clase 3. Datos y Entidades Primitivas - Sullin SantaellaClase 3. Datos y Entidades Primitivas - Sullin Santaella
Clase 3. Datos y Entidades Primitivas - Sullin Santaella
 
Clase de datos variables constantes
Clase de datos variables constantesClase de datos variables constantes
Clase de datos variables constantes
 
10_ALGORITMOS 2.pdf
10_ALGORITMOS 2.pdf10_ALGORITMOS 2.pdf
10_ALGORITMOS 2.pdf
 
Algoritmo tp guille
Algoritmo tp guilleAlgoritmo tp guille
Algoritmo tp guille
 
Unidad i
Unidad iUnidad i
Unidad i
 
Repasando Excel
Repasando ExcelRepasando Excel
Repasando Excel
 
Operadores
OperadoresOperadores
Operadores
 
Operadores
OperadoresOperadores
Operadores
 

Más de Tensor

Libertad
LibertadLibertad
LibertadTensor
 
Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Tensor
 
Metodo de la bisección
Metodo de la bisecciónMetodo de la bisección
Metodo de la bisecciónTensor
 
Transito vehicular
Transito vehicularTransito vehicular
Transito vehicularTensor
 
Teoria de colas
Teoria de colasTeoria de colas
Teoria de colasTensor
 
Practica 7 2016
Practica 7 2016Practica 7 2016
Practica 7 2016Tensor
 
Practica 6 2016
Practica 6 2016Practica 6 2016
Practica 6 2016Tensor
 
Game maker
Game makerGame maker
Game makerTensor
 
Practica 5 2016
Practica 5 2016Practica 5 2016
Practica 5 2016Tensor
 
Procesamiento de archivos
Procesamiento de archivosProcesamiento de archivos
Procesamiento de archivosTensor
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadenaTensor
 
Simulación en promodel clase 04
Simulación en promodel clase 04Simulación en promodel clase 04
Simulación en promodel clase 04Tensor
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de ordenTensor
 
Variación+de+parametros
Variación+de+parametrosVariación+de+parametros
Variación+de+parametrosTensor
 
Coeficientes indeterminados enfoque de superposición
Coeficientes indeterminados   enfoque de superposiciónCoeficientes indeterminados   enfoque de superposición
Coeficientes indeterminados enfoque de superposiciónTensor
 
Bernoulli y ricatti
Bernoulli y ricattiBernoulli y ricatti
Bernoulli y ricattiTensor
 
Practica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioPractica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioTensor
 
Clase 14 ondas reflejadas
Clase 14 ondas reflejadasClase 14 ondas reflejadas
Clase 14 ondas reflejadasTensor
 
Ondas em
Ondas emOndas em
Ondas emTensor
 
Clase 7 ondas electromagneticas
Clase 7 ondas electromagneticasClase 7 ondas electromagneticas
Clase 7 ondas electromagneticasTensor
 

Más de Tensor (20)

Libertad
LibertadLibertad
Libertad
 
Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)
 
Metodo de la bisección
Metodo de la bisecciónMetodo de la bisección
Metodo de la bisección
 
Transito vehicular
Transito vehicularTransito vehicular
Transito vehicular
 
Teoria de colas
Teoria de colasTeoria de colas
Teoria de colas
 
Practica 7 2016
Practica 7 2016Practica 7 2016
Practica 7 2016
 
Practica 6 2016
Practica 6 2016Practica 6 2016
Practica 6 2016
 
Game maker
Game makerGame maker
Game maker
 
Practica 5 2016
Practica 5 2016Practica 5 2016
Practica 5 2016
 
Procesamiento de archivos
Procesamiento de archivosProcesamiento de archivos
Procesamiento de archivos
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadena
 
Simulación en promodel clase 04
Simulación en promodel clase 04Simulación en promodel clase 04
Simulación en promodel clase 04
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de orden
 
Variación+de+parametros
Variación+de+parametrosVariación+de+parametros
Variación+de+parametros
 
Coeficientes indeterminados enfoque de superposición
Coeficientes indeterminados   enfoque de superposiciónCoeficientes indeterminados   enfoque de superposición
Coeficientes indeterminados enfoque de superposición
 
Bernoulli y ricatti
Bernoulli y ricattiBernoulli y ricatti
Bernoulli y ricatti
 
Practica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioPractica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicio
 
Clase 14 ondas reflejadas
Clase 14 ondas reflejadasClase 14 ondas reflejadas
Clase 14 ondas reflejadas
 
Ondas em
Ondas emOndas em
Ondas em
 
Clase 7 ondas electromagneticas
Clase 7 ondas electromagneticasClase 7 ondas electromagneticas
Clase 7 ondas electromagneticas
 

Último

30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 

Último (20)

30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 

Ejercicios

  • 2. OTRO PROGRAMA EN C++: SUMA DE ENTEROS • Nuestro siguiente programa utiliza el objeto flujo de entrada std::cin y el operador de extracción de flujo, >>, para obtener dos enteros escritos por el usuario mediante el teclado, calcula la suma de esos valores e imprime el resultado mediante el uso de std::cout. • En la se muestra el programa, junto con los datos de entrada y salida de ejemplo.
  • 3. PROGRAMA DE SUMA QUE MUESTRA LA SUMA DE DOS ENTEROS INTRODUCIDOS MEDIANTE EL TECLADO.
  • 4. PROGRAMA DE SUMA QUE MUESTRA LA SUMA DE DOS ENTEROS INTRODUCIDOS MEDIANTE EL TECLADO.
  • 5. OTRO PROGRAMA EN C++: SUMA DE ENTEROS • Los comentarios en la línea 2 • // Programa de suma que muestra la suma de dos enteros. • indican el nombre del archivo y el propósito del programa. La directiva del preprocesador de C++ • #include <iostream> // permite al programa realizar operaciones de entrada y salida • en la línea 3 incluye el contenido del archivo de encabezado <iostream> en el programa.
  • 6. OTRO PROGRAMA EN C++: SUMA DE ENTEROS • El programa empieza a ejecutarse con la función main (línea 6). La llave izquierda (línea 7) marca el inicio del cuerpo de main y la correspondiente llave derecha (línea 24) marca el fin de main. • Las líneas 9 a 11 • int numero1; // primer entero a sumar • int numero2; // segundo entero a sumar • int suma; // suma de numero1 y numero2 • son declaraciones. Los identificadores numero1, numero2 y suma son nombres de variables
  • 7. OTRO PROGRAMA EN C++: SUMA DE ENTEROS • Una variable es una ubicación en la memoria de la computadora, en la que puede almacenarse un valor para usarlo mediante un programa. Estas declaraciones especifican que las variables numero1, numero2 y suma son datos de tipo int, lo cual significa que estas variables contienen valores enteros; es decir, números enteros como 7, –11, 0 y 31914. Todas las variables se deben declarar con un nombre y un tipo de datos antes de poder usarlas en un programa.
  • 8. OTRO PROGRAMA EN C++: SUMA DE ENTEROS • Pueden declararse diversas variables del mismo tipo en una declaración, o en varias declaraciones. Podríamos haber declarado las tres variables en una declaración, como se muestra a continuación: • int numero1, numero2, suma; • Esto reduce la legibilidad del programa y evita que podamos proporcionar comentarios que describan el propósito de cada variable. Si se declara más de un nombre en una declaración (como se muestra aquí), los nombres van separados por comas (,); a esto se le conoce como lista separada por comas.
  • 9. BUENA PRÁCTICA DE PROGRAMACIÓN • Coloque un espacio después de cada coma (,) para aumentar la legibilidad de los programas • Algunos programadores prefieren declarar cada variable en una línea separada. Este formato permite insertar fácilmente un comentario descriptivo a un lado de cada declaración
  • 10. OTRO PROGRAMA EN C++: SUMA DE ENTEROS • Pronto hablaremos sobre el tipo de datos double para especificar números reales, y sobre el tipo de datos char para especificar datos tipo carácter. Los números reales son números con puntos decimales, como 3.4, 0.0 y –11.19. Una variable char puede guardar sólo una letra minúscula, una letra mayúscula, un dígito o un carácter especial (como $ o *). • Los tipos como int, double y char se conocen comúnmente como tipos fundamentales, tipos primitivos o tipos integrados. • Los nombres de los tipos fundamentales son palabras clave y, por lo tanto, deben aparecer todos en minúsculas.
  • 11. OTRO PROGRAMA EN C++: SUMA DE ENTEROS • El nombre de una variable (como numero1) es cualquier identificador válido que no sea una palabra clave. Un identificador es una serie de caracteres que consisten en letras, dígitos y símbolos de guión bajo ( _ ) que no empieza con un dígito. C++ es sensible a mayúsculas y minúsculas: las letras mayúsculas y minúsculas son distintas, por lo que 𝑎1 𝑦 𝐴1 se consideran identificadores distintos.
  • 12. ARITMÉTICA • La mayoría de los programas realizan cálculos aritméticos. Los operadores aritméticos se sintetizan en la figura. Observe el uso de varios símbolos especiales que no se utilizan en álgebra. El asterisco (*) indica la multiplicación, y el signo de porcentaje (%) es el operador módulo, el cual describiremos en breve. Los operadores aritméticos en la figura son operadores binarios, ya que funcionan con dos operandos. Por ejemplo, la expresión numero1 + numero2 contiene el operador binario + y los dos operandos numero1 y numero2.
  • 14. ARITMÉTICA • La división de enteros (es decir, donde tanto el numerador como el denominador son enteros) produce un cociente entero; por ejemplo, la expresión 7 / 4 da como resultado 1, y la expresión 17 / 5 da como resultado 3. Observe que cualquier parte fraccionaria en una división de enteros se descarta (es decir, se trunca); no ocurre un redondeo.
  • 15. ARITMÉTICA • C++ proporciona el operador módulo, %, el cual produce el residuo después de la división entera. El operador módulo sólo se puede utilizar con operandos enteros. La expresión 𝑥 % 𝑦 produce el residuo después de que x se divide entre y. Por lo tanto, 7 % 4 produce 3, y 17 % 5 produce 2. Posteriormente consideramos muchas aplicaciones interesantes del operador módulo, como determinar si un número es múltiplo de otro (un caso especial de esta aplicación es determinar si un número es par o impar).
  • 16. ERROR COMÚN DE PROGRAMACIÓN • Tratar de utilizar el operador módulo (%) con operandos no enteros es un error de compilación
  • 17. EXPRESIONES ARITMÉTICAS EN FORMATO DE LÍNEA RECTA • En la computadora, las expresiones aritméticas en C++ deben escribirse en formato de línea recta. Por lo tanto, las expresiones como “a dividida entre b” deben escribirse como a / b, de manera que todas las constantes, variables y operadores aparezcan en una línea recta. La siguiente notación algebraica:
  • 18. EXPRESIONES ARITMÉTICAS EN FORMATO DE LÍNEA RECTA • 𝑎 𝑏 • no es generalmente aceptable para los compiladores, aunque ciertos paquetes de software de propósito especial soportan una notación más natural para las expresiones matemáticas complejas.
  • 19. PARÉNTESIS PARA AGRUPAR SUBEXPRESIONES • Los paréntesis se utilizan en las expresiones en C++ de la misma manera que en las expresiones algebraicas. Por ejemplo, para multiplicar a por la cantidad b + c, escribimos • 𝑎 ∗ ( 𝑏 + 𝑐 ).
  • 20. REGLAS DE PRECEDENCIA DE OPERADORES • C++ aplica los operadores en expresiones aritméticas en una secuencia precisa, determinada por las siguientes reglas de precedencia de operadores, que generalmente son las mismas que las que se utilizan en álgebra: 1. Los operadores en las expresiones contenidas dentro de pares de paréntesis se evalúan primero. Se dice que los paréntesis tienen el “nivel más alto de precedencia”. En casos de paréntesis anidados o incrustados, como: ( ( a + b ) + c ) los operadores en el par más interno de paréntesis se aplican primero.
  • 21. REGLAS DE PRECEDENCIA DE OPERADORES 2. Las operaciones de multiplicación, división y módulo se aplican a continuación. Si una expresión contiene varias de esas operaciones, los operadores se aplican de izquierda a derecha. Se dice que los operadores de multiplicación, división y residuo tienen el mismo nivel de precedencia. 3. Las operaciones de suma y resta se aplican al último. Si una expresión contiene varias de esas operaciones, los operadores se aplican de izquierda a derecha. Los operadores de suma y resta tienen el mismo nivel de precedencia.
  • 22. REGLAS DE PRECEDENCIA DE OPERADORES • El conjunto de reglas de precedencia de operadores define el orden en el que C++ aplica los operadores. Cuando decimos que ciertos operadores se aplican de izquierda a derecha, nos referimos a su asociatividad. Por ejemplo, en la expresión • 𝑎 + 𝑏 + 𝑐 • los operadores de suma (+) se asocian de izquierda a derecha, por lo que a + b se calcula primero, y después se agrega c a esa suma para determinar el valor de toda la expresión. Más adelante veremos que algunos operadores se asocian de derecha a izquierda. En la figura se sintetizan estas reglas de precedencia de operadores
  • 23. REGLAS DE PRECEDENCIA DE OPERADORES
  • 24. EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE C++ • Ahora, consideremos varias expresiones en vista de las reglas de precedencia de operadores. Cada ejemplo enlista una expresión algebraica y su equivalente en C++. El siguiente es un ejemplo de una media ( promedio) aritmética de cinco términos: • Álgebra: • 𝑚 = ( 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 ) 5 ; • C++: • 𝑚 = ( 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 ) / 5;
  • 25. EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE C++ • Los paréntesis son obligatorios, ya que la división tiene una mayor precedencia que la suma. La cantidad completa ( 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 ) va a dividirse entre 5. Si los paréntesis se omiten por error, obtenemos 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 / 5, lo cual da como resultado • 𝑎 + 𝑏 + 𝑐 + 𝑑 + 𝑒 5
  • 26. EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE C++
  • 27. EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE C++ • Los números dentro de los círculos bajo la instrucción indican el orden en el que C++ aplica los operadores. Las operaciones de multiplicación, residuo y división se evalúan primero, en orden de izquierda a derecha (es decir, se asocian de izquierda a derecha), ya que tienen mayor precedencia que la suma y la resta. Las operaciones de suma y resta se evalúan a continuación. Estas operaciones también se aplican de izquierda a derecha. Después se aplica el operador de asignación
  • 28. EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE C++
  • 29. EJEMPLOS DE EXPRESIONES ALGEBRAICAS Y DE C++
  • 30. ERROR COMÚN DE PROGRAMACIÓN • Algunos lenguajes de programación usan los operadores ∗∗ 𝑜 ^ para representar la exponenciación. C++ no soporta estos operadores de exponenciación; si se utilizan para este fin, se producen errores
  • 31. BUENA PRÁCTICA DE PROGRAMACIÓN • El uso de paréntesis redundantes en expresiones aritméticas complejas puede hacer que éstas sean más fáciles de leer
  • 32. TOMA DE DECISIONES: OPERADORES DE IGUALDAD Y RELACIONALES • Presentaremos una versión simple de la instrucción if de C++, la cual permite que un programa tome una acción alternativa, con base en la verdad o falsedad de cierta condición. Si se cumple la condición (es decir, si es verdadera), se ejecuta la instrucción que está en el cuerpo de la instrucción if. Si la condición no se cumple (es falsa), el cuerpo no se ejecuta. Veremos un ejemplo en breve.
  • 33. TOMA DE DECISIONES: OPERADORES DE IGUALDAD Y RELACIONALES • Las condiciones en las instrucciones if pueden formarse utilizando los operadores de igualdad y los operadores relacionales, que se sintetizan en la figura. Los operadores relacionales tienen todos el mismo nivel de precedencia y se asocian de izquierda a derecha. Los dos operadores de igualdad tienen el mismo nivel de precedencia, que es menor que la precedencia de los operadores relacionales, y se asocian de izquierda a derecha
  • 34. TOMA DE DECISIONES: OPERADORES DE IGUALDAD Y RELACIONALES
  • 35. ERROR COMÚN DE PROGRAMACIÓN • Se producirá un error de sintaxis si cualquiera de los operadores ==, !=, >= y <= aparece con espacios entre su par de símbolos.
  • 36. ERROR COMÚN DE PROGRAMACIÓN • Invertir el orden del par de símbolos en cualquiera de los operadores !=, >= y <= (al escribirlos como =!, => y =<, respectivamente) es comúnmente un error de sintaxis. En algunos casos, escribir != como =! no será un error de sintaxis, sino casi con certeza será un error lógico, el cual tiene un efecto en tiempo de ejecución. Un error lógico fatal hace que un programa falle y termine antes de tiempo. Un error lógico no fatal permite que un programa continúe ejecutándose, pero por lo general produce resultados incorrectos
  • 37. ERROR COMÚN DE PROGRAMACIÓN • Confundir el operador de igualdad == con el operador de asignación = produce errores lógicos. El operador de igualdad se debe leer como “es igual a”, y el operador de asignación se debe leer como “obtiene” u “obtiene el valor de”, o “se le asigna el valor de”. Algunas personas prefieren leer el operador de igualdad como “doble igual”.
  • 38. ERROR COMÚN DE PROGRAMACIÓN • El siguiente ejemplo utiliza seis instrucciones if para comparar dos números introducidos por el usuario. Si la condición en cualquiera de estas instrucciones if es verdadera, se ejecuta la instrucción de salida asociada con esa instrucción if. En la figura se muestra el programa y los diálogos de entrada/salida de tres ejecuciones del ejemplo. • Las líneas 6 a 8 • using std::cout; // el programa usa cout • using std::cin; // el programa usa cin • using std::endl; // el programa usa endl
  • 39. ERROR COMÚN DE PROGRAMACIÓN • son declaraciones using, las cuales eliminan la necesidad de repetir el prefijo std::, como hicimos en programas anteriores. • Una vez que insertamos estas declaraciones using, podemos escribir cout en lugar de std::cout, cin en vez de std::cin y endl en lugar de std::endl, respectivamente, en el resto del programa.
  • 40. ERROR COMÚN DE PROGRAMACIÓN
  • 41. ERROR COMÚN DE PROGRAMACIÓN
  • 42. ERROR COMÚN DE PROGRAMACIÓN
  • 43. EJERCICIO • Utilizando las instrucciones que escribió anteriormente, escriba un programa completo que calcule e imprima el producto de tres enteros. Agregue comentarios al código donde sea apropiado. [Nota: necesitara escribir las declaraciones using necesarias.]