SlideShare une entreprise Scribd logo
1  sur  5
La instrucción if es, por excelencia, la más utilizada para construir estructuras de control
de flujo.
SINTAXIS
Primera Forma
Ahora bién, la sintaxis utilizada en la programación de C++ es la siguiente:


if (condicion)
   {
       Set de instrucciones
   }



siendo "condicion" el lugar donde se pondrá la condicion que se tiene que cumplir para
que sea verdadera la sentencia y así proceder a realizar el "set de instrucciones" o código
contenido dentro de la sentencia.


Segunda Forma
Ahora veremos la misma sintaxis pero ahora le añadiremos la parte "Falsa" de la
sentencia:


if (condicion)
   {
       Set de instrucciones             //PARTE VERDADERA
   }
else
   {
       Set de instrucciones 2           //Parte FALSA
   }



La forma mostrada anteriormente muestra la union de la parte "VERDADERA" con la
nueva secuencia la cual es la parte "FALSA" de la sentencia de decision "IF" en la cual
esta compuesta por el:
else
   {
       Set de instrucciones 2        //Parte FALSA
   }
la palabra "else" o "De lo contrario" indica al lenguaje que de lo contrario al no ser
verdadera o no se cumpla la parte verdadera entonces realizara el "set de instrucciones 2".


EJEMPLOS DE SENTENCIAS IF...
Ejemplo 1:
if(numero == 0) //La condicion indica que tiene que ser igual a Cero
    {
      cout<<"El Numero Ingresado es Igual a Cero";
    }


Ejemplo 2:
if(numero > 0) // la condicion indica que tiene que ser mayor a Cero
    {
      cout<<"El Numero Ingresado es Mayor a Cero";
    }


Ejemplo 3:
if(numero < 0) // la condicion indica que tiene que ser menor a Cero
    {
      cout<<"El Numero Ingresado es Menor a Cero";
    }


Ahora uniremos todos estos ejemplos para formar un solo programa mediante la
utilización de la sentencia "Else" e introduciremos el hecho de que se puede escribir en
este espacio una sentencia if ya que podemos ingresar cualquier tipo de código dentro de
la sentencia escrita después de un Else.
Ejemplo 4:


if(numero == 0) //La condicion indica que tiene que ser igual a Cero
   {
       cout<<"El Numero Ingresado es Igual a Cero";
   }
else
   {
        if(numero > 0) // la condicion indica que tiene que ser mayor a
Cero
        {
             cout<<"El Numero Ingresado es Mayor a Cero";
        }
        else
        {
           if(numero < 0) // la condicion indica que tiene que ser menor
a Cero
           {
              cout<<"El Numero Ingresado es Menor a Cero";
           }
        }
     }
EL ENUNCIADO if
Con la instrucción if tenemos el primer ejemplo de un enunciado condicional. Observe en
primera instancia la presencia de un bucle for con un enunciado compuesto que contiene
dos instrucciones if. Este es a su vez un ejemplo de instrucciones anidadas, está claro que
cada una de las instrucciones if será ejecutada 8 veces.

/* Ejemplo de los enunciados if e if-else */
# include <stdio.h>

int main()
{
   int valor;
   for(valor = 0 ; valor < 8 ; valor = valor + 1)
   {
      if(valor == 2)
      printf("Este mensaje se muestra solo cuando"
        "valor es igual a 2 n");
      if(valor < 5)
      printf("Este mensaje se muestra cuando"
        "valor que es %d es menor que 5n", valor);
      else
      printf("Este mensaje se muestra cuando"
        "valor que es %d es mayor que 4n", valor);
   } /* Fin del bucle */
   printf("Este mensaje se mostrara solo cuando finalice el bucle n");
   return 0;
}




Veamos el primer enunciado if, este empieza con la palabra clave if seguida de una
expresión entre paréntesis, si esta es evaluada a verdadero se ejecuta la instrucción que le
sigue, pero si es falso se brinca esta instrucción y continúa la ejecución en los siguientes
enunciados. La expresión "valor == 2" está simplemente preguntando si el valor de valor
es igual a 2, observe que se está utilizando un doble signo de igual para evaluar a
verdadero cuando valor vale 2, utilizar "valor == 2" tiene un significado completamente
diferente que explicaremos mas adelante.
La segunda instrucción if es similar a la primera excepto por la adición de la palabra
clave else en la línea 14, esto significa que si el enunciado entre paréntesis se evalúa a
verdadero se ejecuta la primera expresión, de lo contrario la instrucción que sigue a else
será ejecutada, por lo que una de las dos instrucciones será siempre ejecutada. Observe
además que el programa imprime dos mensajes diferentes cuando valor vale 2, esto es así
porque tenemos dos condiciones verdaderas cuando valor es 2, esto es, cuando valor es
exactamente 2 y a la vez es menor que 5. Compile este programa y observe su
funcionamiento.




¿Han pagado algún recibo en una máquina automática y se han preguntado cómo será el
programa que les devuelve el cambio? Lo más seguro es que no, pero pues resulta que el
profesor de Miguel Ángel le encargó un programa que simulara eso, en sus propias
palabras:
“Supón que una maquina de monedas de 10,5,2,1 y 50 centavos. Debes escribir un
programa que decida cuantas monedas dará de cambio, dando prioridad las de mayor
denominación. Debe recibir como entrada la cantidad de dar a cambio. Ejemplo: para
$40.50 será 4 de 10, 0 de 5, 0 de 2, 0 de 1 y 1 de 50 centavos.”




Así que el primer problema se presenta con la entrada ¿cómo hacer que el usuario
introduzca sólo cantidades como $50 o $43.50 y no cantidades como $23.45 o $9.70?
Lo que se me ocurrió es pedir la cantidad en una variable float (cambio), en otra variable
convertir esa cantidad a tipo int (cambioint). En ese proceso se perderá la parte decimal
del número, así que si la resta cambio – cambioint es igual a 0 o igual a 0.50, la cantidad
que introdujo el usuario es correcta.
La otra parte es sencilla, sólo se necesita ver si la variable cambio es mayor que 10. Si si,
se le restan 10 a la variable y se aumenta un contador. Luego se hace lo mismo con las
demás monedas.
Pero bueno, el programa es este:
1    #include<iostream>
2    using namespace std;
3
4    int main()
5    {
6        float cambio; int cambioint, m10=0, m5=0, m2=0, m1=0, m50c=0;
7        do
8        {
9            cout << "Cambio?: "; cin >> cambio;
10           cambioint = (int)cambio;
11       }while((cambio - cambioint) != 0 && (cambio - cambioint) != 0.50);
12       while(cambio != 0)
13       {
14           if(cambio>=10)
15           {
16               m10++;
17               cambio-=10;
18           }
19           else if(cambio>=5)
20           {
21               m5++;
22               cambio-=5;
23           }
24           else if(cambio>=2)
25           {
26               m2++;
27               cambio-=2;
28           }
29           else if(cambio>=1)
30           {
31               m1++;
32               cambio-=1;
33           }
34           else if(cambio>=0.5)
35           {
36               m50c++;
37               cambio-=0.5;
38           }
39       }
40       cout << m10 << ", " << m5 << ", " << m2 << ", " << m1 << ", " << m50c;
41   }
Solo le faltaría darle un poco de formato a la salida, pero pues ya es cuestión de gustos y
ya saben, cualquier duda aquí están los comentarios abajo.

Contenu connexe

Tendances

Tendances (20)

Palindromos
PalindromosPalindromos
Palindromos
 
Estructura repetitiva for y while
Estructura repetitiva for y whileEstructura repetitiva for y while
Estructura repetitiva for y while
 
Ejemplo C++
Ejemplo C++Ejemplo C++
Ejemplo C++
 
Sentencia Condicional
Sentencia CondicionalSentencia Condicional
Sentencia Condicional
 
Líneas+de+código
Líneas+de+códigoLíneas+de+código
Líneas+de+código
 
Gabrielgonzalez
GabrielgonzalezGabrielgonzalez
Gabrielgonzalez
 
CICLO FOR
CICLO FORCICLO FOR
CICLO FOR
 
Estructuras De RepeticióN
Estructuras De RepeticióNEstructuras De RepeticióN
Estructuras De RepeticióN
 
Clase 6
Clase 6Clase 6
Clase 6
 
Repaso c
Repaso cRepaso c
Repaso c
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)
 
Estructura switch case
Estructura switch caseEstructura switch case
Estructura switch case
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Java
 
15 Curso de POO en java - estructuras repetitivas
15 Curso de POO en java - estructuras repetitivas15 Curso de POO en java - estructuras repetitivas
15 Curso de POO en java - estructuras repetitivas
 
DATOS LENGUAJE C
DATOS LENGUAJE CDATOS LENGUAJE C
DATOS LENGUAJE C
 
Chuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantesChuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantes
 
Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
 
Bucles de Control Repetitivo Ciclos For
Bucles de Control Repetitivo  Ciclos ForBucles de Control Repetitivo  Ciclos For
Bucles de Control Repetitivo Ciclos For
 
Practica2
Practica2Practica2
Practica2
 

En vedette

Putting the "C" in WCAG: accessibility for web writers
Putting the "C" in WCAG: accessibility for web writersPutting the "C" in WCAG: accessibility for web writers
Putting the "C" in WCAG: accessibility for web writers4 Syllables
 
Abc pruebas saber 3º 5º y 9º
Abc pruebas saber 3º 5º y 9ºAbc pruebas saber 3º 5º y 9º
Abc pruebas saber 3º 5º y 9ºINDEIPCO LTDA
 
Ejemplos de preguntas prueba de biologia 2010
Ejemplos de preguntas prueba de biologia 2010Ejemplos de preguntas prueba de biologia 2010
Ejemplos de preguntas prueba de biologia 2010INDEIPCO LTDA
 
Una aproximación hacia a la comprensión de los modelos pedagógicos
Una aproximación hacia a la comprensión de los modelos pedagógicosUna aproximación hacia a la comprensión de los modelos pedagógicos
Una aproximación hacia a la comprensión de los modelos pedagógicosINDEIPCO LTDA
 
Socialismo, Socialismo nacional y Facismo
Socialismo, Socialismo nacional y FacismoSocialismo, Socialismo nacional y Facismo
Socialismo, Socialismo nacional y FacismoAaron Flores
 

En vedette (6)

May 2012 - Pueblo Chemical Agent-Destruction Pilot Plant Monthly Status Brief...
May 2012 - Pueblo Chemical Agent-Destruction Pilot Plant Monthly Status Brief...May 2012 - Pueblo Chemical Agent-Destruction Pilot Plant Monthly Status Brief...
May 2012 - Pueblo Chemical Agent-Destruction Pilot Plant Monthly Status Brief...
 
Putting the "C" in WCAG: accessibility for web writers
Putting the "C" in WCAG: accessibility for web writersPutting the "C" in WCAG: accessibility for web writers
Putting the "C" in WCAG: accessibility for web writers
 
Abc pruebas saber 3º 5º y 9º
Abc pruebas saber 3º 5º y 9ºAbc pruebas saber 3º 5º y 9º
Abc pruebas saber 3º 5º y 9º
 
Ejemplos de preguntas prueba de biologia 2010
Ejemplos de preguntas prueba de biologia 2010Ejemplos de preguntas prueba de biologia 2010
Ejemplos de preguntas prueba de biologia 2010
 
Una aproximación hacia a la comprensión de los modelos pedagógicos
Una aproximación hacia a la comprensión de los modelos pedagógicosUna aproximación hacia a la comprensión de los modelos pedagógicos
Una aproximación hacia a la comprensión de los modelos pedagógicos
 
Socialismo, Socialismo nacional y Facismo
Socialismo, Socialismo nacional y FacismoSocialismo, Socialismo nacional y Facismo
Socialismo, Socialismo nacional y Facismo
 

Similaire à If

Similaire à If (20)

Sentencias
SentenciasSentencias
Sentencias
 
Sentencias
SentenciasSentencias
Sentencias
 
5.1 instruccion if-else
5.1 instruccion if-else5.1 instruccion if-else
5.1 instruccion if-else
 
Estructuras de control C++
Estructuras de control C++Estructuras de control C++
Estructuras de control C++
 
Manual de programación de Arduino
Manual de programación de Arduino Manual de programación de Arduino
Manual de programación de Arduino
 
Sentencia de control
Sentencia de controlSentencia de control
Sentencia de control
 
Programaciòn Estructurada
Programaciòn EstructuradaProgramaciòn Estructurada
Programaciòn Estructurada
 
Php
PhpPhp
Php
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
7. estructura condicional if
7.  estructura condicional if7.  estructura condicional if
7. estructura condicional if
 
3 condicionales y ciclos
3 condicionales y ciclos3 condicionales y ciclos
3 condicionales y ciclos
 
Parcial
ParcialParcial
Parcial
 
Presentación
Presentación Presentación
Presentación
 
Factorial en C++
Factorial en C++Factorial en C++
Factorial en C++
 
Estructuras de Control - Ivan Walkes Mc.
Estructuras de Control - Ivan Walkes Mc.Estructuras de Control - Ivan Walkes Mc.
Estructuras de Control - Ivan Walkes Mc.
 
Estructuras de Control
Estructuras de ControlEstructuras de Control
Estructuras de Control
 
Estructuras PseInt
Estructuras PseIntEstructuras PseInt
Estructuras PseInt
 
Estructuras De Control
Estructuras De ControlEstructuras De Control
Estructuras De Control
 
Acerca de los algoritmos de mezcla en cajeros automáticos
Acerca de los algoritmos de mezcla en cajeros automáticosAcerca de los algoritmos de mezcla en cajeros automáticos
Acerca de los algoritmos de mezcla en cajeros automáticos
 
Teoria
TeoriaTeoria
Teoria
 

Dernier

TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...jlorentemartos
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptxRigoTito
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfJonathanCovena1
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.docRodneyFrankCUADROSMI
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.JonathanCovena1
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfcarolinamartinezsev
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOluismii249
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxFernando Solis
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxpvtablets2023
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxNadiaMartnez11
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxroberthirigoinvasque
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfUPTAIDELTACHIRA
 

Dernier (20)

TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Usos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicasUsos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicas
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 

If

  • 1. La instrucción if es, por excelencia, la más utilizada para construir estructuras de control de flujo. SINTAXIS Primera Forma Ahora bién, la sintaxis utilizada en la programación de C++ es la siguiente: if (condicion) { Set de instrucciones } siendo "condicion" el lugar donde se pondrá la condicion que se tiene que cumplir para que sea verdadera la sentencia y así proceder a realizar el "set de instrucciones" o código contenido dentro de la sentencia. Segunda Forma Ahora veremos la misma sintaxis pero ahora le añadiremos la parte "Falsa" de la sentencia: if (condicion) { Set de instrucciones //PARTE VERDADERA } else { Set de instrucciones 2 //Parte FALSA } La forma mostrada anteriormente muestra la union de la parte "VERDADERA" con la nueva secuencia la cual es la parte "FALSA" de la sentencia de decision "IF" en la cual esta compuesta por el: else { Set de instrucciones 2 //Parte FALSA } la palabra "else" o "De lo contrario" indica al lenguaje que de lo contrario al no ser verdadera o no se cumpla la parte verdadera entonces realizara el "set de instrucciones 2". EJEMPLOS DE SENTENCIAS IF...
  • 2. Ejemplo 1: if(numero == 0) //La condicion indica que tiene que ser igual a Cero { cout<<"El Numero Ingresado es Igual a Cero"; } Ejemplo 2: if(numero > 0) // la condicion indica que tiene que ser mayor a Cero { cout<<"El Numero Ingresado es Mayor a Cero"; } Ejemplo 3: if(numero < 0) // la condicion indica que tiene que ser menor a Cero { cout<<"El Numero Ingresado es Menor a Cero"; } Ahora uniremos todos estos ejemplos para formar un solo programa mediante la utilización de la sentencia "Else" e introduciremos el hecho de que se puede escribir en este espacio una sentencia if ya que podemos ingresar cualquier tipo de código dentro de la sentencia escrita después de un Else. Ejemplo 4: if(numero == 0) //La condicion indica que tiene que ser igual a Cero { cout<<"El Numero Ingresado es Igual a Cero"; } else { if(numero > 0) // la condicion indica que tiene que ser mayor a Cero { cout<<"El Numero Ingresado es Mayor a Cero"; } else { if(numero < 0) // la condicion indica que tiene que ser menor a Cero { cout<<"El Numero Ingresado es Menor a Cero"; } } }
  • 3. EL ENUNCIADO if Con la instrucción if tenemos el primer ejemplo de un enunciado condicional. Observe en primera instancia la presencia de un bucle for con un enunciado compuesto que contiene dos instrucciones if. Este es a su vez un ejemplo de instrucciones anidadas, está claro que cada una de las instrucciones if será ejecutada 8 veces. /* Ejemplo de los enunciados if e if-else */ # include <stdio.h> int main() { int valor; for(valor = 0 ; valor < 8 ; valor = valor + 1) { if(valor == 2) printf("Este mensaje se muestra solo cuando" "valor es igual a 2 n"); if(valor < 5) printf("Este mensaje se muestra cuando" "valor que es %d es menor que 5n", valor); else printf("Este mensaje se muestra cuando" "valor que es %d es mayor que 4n", valor); } /* Fin del bucle */ printf("Este mensaje se mostrara solo cuando finalice el bucle n"); return 0; } Veamos el primer enunciado if, este empieza con la palabra clave if seguida de una
  • 4. expresión entre paréntesis, si esta es evaluada a verdadero se ejecuta la instrucción que le sigue, pero si es falso se brinca esta instrucción y continúa la ejecución en los siguientes enunciados. La expresión "valor == 2" está simplemente preguntando si el valor de valor es igual a 2, observe que se está utilizando un doble signo de igual para evaluar a verdadero cuando valor vale 2, utilizar "valor == 2" tiene un significado completamente diferente que explicaremos mas adelante. La segunda instrucción if es similar a la primera excepto por la adición de la palabra clave else en la línea 14, esto significa que si el enunciado entre paréntesis se evalúa a verdadero se ejecuta la primera expresión, de lo contrario la instrucción que sigue a else será ejecutada, por lo que una de las dos instrucciones será siempre ejecutada. Observe además que el programa imprime dos mensajes diferentes cuando valor vale 2, esto es así porque tenemos dos condiciones verdaderas cuando valor es 2, esto es, cuando valor es exactamente 2 y a la vez es menor que 5. Compile este programa y observe su funcionamiento. ¿Han pagado algún recibo en una máquina automática y se han preguntado cómo será el programa que les devuelve el cambio? Lo más seguro es que no, pero pues resulta que el profesor de Miguel Ángel le encargó un programa que simulara eso, en sus propias palabras: “Supón que una maquina de monedas de 10,5,2,1 y 50 centavos. Debes escribir un programa que decida cuantas monedas dará de cambio, dando prioridad las de mayor denominación. Debe recibir como entrada la cantidad de dar a cambio. Ejemplo: para $40.50 será 4 de 10, 0 de 5, 0 de 2, 0 de 1 y 1 de 50 centavos.” Así que el primer problema se presenta con la entrada ¿cómo hacer que el usuario introduzca sólo cantidades como $50 o $43.50 y no cantidades como $23.45 o $9.70? Lo que se me ocurrió es pedir la cantidad en una variable float (cambio), en otra variable convertir esa cantidad a tipo int (cambioint). En ese proceso se perderá la parte decimal del número, así que si la resta cambio – cambioint es igual a 0 o igual a 0.50, la cantidad que introdujo el usuario es correcta.
  • 5. La otra parte es sencilla, sólo se necesita ver si la variable cambio es mayor que 10. Si si, se le restan 10 a la variable y se aumenta un contador. Luego se hace lo mismo con las demás monedas. Pero bueno, el programa es este: 1 #include<iostream> 2 using namespace std; 3 4 int main() 5 { 6 float cambio; int cambioint, m10=0, m5=0, m2=0, m1=0, m50c=0; 7 do 8 { 9 cout << "Cambio?: "; cin >> cambio; 10 cambioint = (int)cambio; 11 }while((cambio - cambioint) != 0 && (cambio - cambioint) != 0.50); 12 while(cambio != 0) 13 { 14 if(cambio>=10) 15 { 16 m10++; 17 cambio-=10; 18 } 19 else if(cambio>=5) 20 { 21 m5++; 22 cambio-=5; 23 } 24 else if(cambio>=2) 25 { 26 m2++; 27 cambio-=2; 28 } 29 else if(cambio>=1) 30 { 31 m1++; 32 cambio-=1; 33 } 34 else if(cambio>=0.5) 35 { 36 m50c++; 37 cambio-=0.5; 38 } 39 } 40 cout << m10 << ", " << m5 << ", " << m2 << ", " << m1 << ", " << m50c; 41 } Solo le faltaría darle un poco de formato a la salida, pero pues ya es cuestión de gustos y ya saben, cualquier duda aquí están los comentarios abajo.