Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

download Lab N° 6 - Programación Visual  C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

of 15

Transcript of Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    1/15

    UNIVERSIDAD CATOLICA DE SANTA MARIAFACULTAD DE CIENCIAS E INGENIERÍAS FISICAS Y 

    FORMALESPROGRAMA PROFESIONAL

    INGENIERIA MECÁNICA, MECÁNICA-ELECTRÍCA Y MECATRÓNICA

    Página:1/15

     Jefes de Prácticas:Ing. Juan Carlos CuadrosIng. Henry Zegarra GagoIng. Sergio Mestas a!os

    Ing. C"ristian Collado#$orto

    Laboratorio d M!"#i!a Co$%&ta!io#a' I

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURAS

    CONDICIONALES O SELECTIVAS

    C%digo: *E++.Se!estr

    e: IIIGru$o: FEC/A(

    &$ellidos y 'o!(res: )a(. '*: +0 +,/&-/+1

    I1 O23ETIVOS

    1. Co!$render la necesidad del dise0o de algorit!os en el estudio y resoluci%n de

    $rogra!as.

    +. &naliar los $ro(le!as $ara identi2car los datos 3ue se re3uieren4 as co!o dar las

    instrucciones adecuadas $ara resol6er $ro(le!as de ingeniera a un ni6el (ásico.

    7. Conocer la sinta8is de las instrucciones condicionales.

    . &naliar y dise0ar la soluci%n utiliando algorit!os de $rogra!aci%n 3ue i!$li3uen el uso

    de instrucciones de selecci%n o condici%n.

    II1 MARCO TEORICO

    1 S#t#!ia d !o#4tr&!!i5# IF

    )as estructuras algort!icas selecti6as 3ue se utilian $ara la to!a de decisiones l%gicas

    las $ode!os clasi2car de la siguiente for!a:

    a. 9structura selecti6a si!$le SI ;;4 9'

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    2/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: +/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    }

    Cuadro 1. Sintaxis de la sentencia if simple y diagrama de flujo.

    9structura de selecci%n do(le

    )a selecci%n si!$le es !uy li!itada4 $or otro lado e8iste la alternati6a de selecci%n do(le la

    cual nos $er!ite to!ar decisiones en a!(os sentidos4 es decir cuando la condici%n de

    co!$araci%n sea 6erdadera se $odrán e?ecutar una o !ás acciones o cuando la condici%n de

    co!$araci%n sea falsa ta!(i@n se $odrán e?ecutar una o !ás acciones.

    P4&do!5di6oSi condición es 6erdadera,9ntonces

     Acciones_1Sino

     Acciones_2

    Ain Si

    Dia6ra$a d 7&8o

    Si#ta9i4(

    if ()

    {

    ;

    }else

    {

    ;

    }

    Cuadro 2. Sintaxis de la sentencia if - else y diagrama de flujo.

    &nida!iento de estructuras condicionales

    & !enudo se tendrá la necesidad de anidar una o !ás estructuras condicionales ya sean

    si!$les o do(les o la co!(inaci%n de a!(as.

    Se dice 3ue las estructuras están anidadas cuando "ay una o unas dentro de ellas. Su

    construcci%n4 donde las condiciones se $lantean de for!a escalonada4 se !uestra a

    continuaci%n en el cuadro 7.

    Si#ta9i4(

    if Econdici%n 1F=Egru$o de sentencias 1F

    else if Econdici%n +F=Egru$o de sentencias +F

    . . .else if Econdici%n 'F=

    Egru$o de sentencias 'Felse

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    3/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: 7/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    Egru$o de sentencias $or defectoF

    P4&do!5di6o(

    Si condición1 es 6erdadera, 9ntonces Acciones_1 o Grupo de sentencias 1

    SinoSi condición2 es 6erdadera, 9ntonces

     Acciones_2 o Grupo de sentencias 2Sino

    Si condición3 es 6erdadera,9ntonces

     Acciones_3 o Grupo desentencias 3

    Sino

     Acciones_4 o Grupo desentencias 4

    Ain siAin si

    Ain si

    iagra!a de Alu?o

    Cuadro 3. Sintaxis de la sentencia else if y diagrama de flujo.

    )as condiciones se e6alan secuencial!ente de arri(a "acia a(a?o "asta encontrar una 3ue

    d@ co!o resultado cierto. 9n ese $unto4 se e?ecuta el gru$o de sentencias o acciones

    corres$ondiente a dic"a condici%n. 9l resto de condiciones y sentencias asociadas se ignoran.

    9n caso de 3ue ninguna de las condiciones se e6ale cierta4 se e?ecutara el gru$o de

    sentencias $or defecto.

    9structura de selecci%n !lti$le

    )a estructura de selecci%n !lti$le $er!ite 3ue el >u?o del $rogra!a se (ifur3ue $or 6arias

    ra!as en el $unto de to!a de decisi%nes=4 esto en funci%n del 6alor 3ue to!e el selector. e

    esta !anera si el selector to!a el 6alor de uno $or e?e!$lo se e?ecutara la acci%n 1 o gru$o

    de sentencias 14 si el selector to!a el 6alor de + se e?ecutara la acci%n + o gru$o de

    sentencias +4 si el selector to!a el 6alor de ' se e?ecutara la acci%n ' o gru$o de sentencias

    '4 y si to!a un 6alor distinto de los 6alores co!$rendidos entre 1 y '4 se continuará con el

    >u?o nor!al del diagra!a realiándose la acci%n

    '1. )a ilustraci%n de una estructura selecti6asera:

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    4/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: /15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    9sta construcci%n $er!ite es$eci2car !lti$les sentencias al estilo ifDelseDif4 $ero de !anera

    !ás co!$acta4 legi(le y elegante. Su for!a general es la siguiente:

    Si#ta9i4(

    sKitc" Ee8$ressionF=L

    case Econstante 1F:Egru$o de sentencias 1FE(reaF

    case constante +:Egru$o de sentencias +FE(reaF

    . . .case constante ':

    Egru$o de sentencias 'FE(reaFdefault :

    Egru$o de sentencias $ordefectoFE(reaF

    N

    P4&do!5di6o(

    9n caso de Selector Caso Oalor 1:

    Hacer &cci%n 1 o Gru$o de sentencias1

    Caso Oalor +:Hacer &cci%n + o Gru$o de sentencias+

    Caso Oalor 7:Hacer &cci%n 7 o Gru$o de sentencias7

    ..

    .Caso Oalor ':

    Hacer &cci%n ' o Gru$o de sentencias'

    Ain de caso

    iagra!a de >u?o

    Cuadro 4. Sintaxis de la sentencia switch y diagrama de flujo.

    9l funciona!iento de la construcci%n de una estructura de selecci%n !ulti$le o ta!(ien

    lla!ada construcci%n sKitc" es co!o sigue.

    9n $ri!er lugar se e6ala la e8$resi%n. Seguida!ente su 6alor es co!$arado secuencial!ente

    con el de las diferentes constantes en los case. Si el 6alor de la e8$resi%n coincide con alguna

    de ellas4 se e?ecuta el gru$o de sentencias corres$ondiente y sKitc" concluye gracias a la

    sentencia (rea. 9n caso contrario4 y si e8iste el caso default 3ue es o$cional=4 se e?ecutara el

    gru$o de sentencias $or defecto.

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    5/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: 5/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    &3u la e8$resi%n de(e ser de ti$o entero o carácter4 al igual 3ue todas las constantes

    asociadas a cada eti3ueta case. 9s i!$ortante resaltar 3ue no $ueden usarse 6aria(les o

    e8$resiones en los distintos case4 sino s%lo constantes.

    )a instrucci%n (rea4 se utilia $ara 2naliar de for!a forada la e?ecuci%n dentro de un (lo3ue

    de c%digo4 de !anera 3ue la siguiente sentencia a e?ecutar será la $ri!era sentencia ?usto

    des$u@s de dic"o (lo3ue. 9n la construcci%n sKitc"4 (rea es necesario $ara concluir la

    e?ecuci%n del gru$o de sentencias asociado al caso cuya constante coincide con el 6alor de la

    e8$resi%n. &s $ues4 la sentencia a e?ecutar des$u@s de (rea en un sKitc"4 será la $ri!era

    sentencia $osterior a la lla6e N 3ue cierra el sKitc".

    E8$%'o: ise0e un algorit!o 3ue ingresada una fec"a en for!ato a/Mes/&0o datos delti$o entero=4 re$orte la fec"a co!o: 9s Día  del !es de Mes4 del a0o  AñoQ. )a fec"a

    ingresada de(e ser 6alida.

    III1 MATERIAL Y E:UIPO• Rna PC con S# indoKs TP4 Internet

    IV1 PROCEDIMIENTO

    E8r!i!io +(

    Se $ide ela(orar el diagra!a de >u?o y $rogra!a 3ue $er!ita ingresar dos n!eros $or

    teclado e indi3ue cual de los dos es !ayor y cual es !enor.

    #include 

    using namespace std;

    int n1,n2;

    oid main()

    {

    !! "ngreso de Numeros

    cout>n2;!! %erificar el &a'or

    if(n1>n2)

    {

    cout

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    6/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: /15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    E8r!i!io +;(

    Se $ide ela(orar el $seudoc%digo y $rogra!a 3ue ingrese un n!ero $or teclado e indi3ue si

    es $ositi6o4 negati6o o igual a cero.

    P4&do!5di6o

    1. Iniciar el $roceso.+. eclarar 6aria(les: & 1er 'u!ero= 4 - +do '!ero =7. Mostrar & y -Q. )eer & y -5. Hacer: &F-. Si &F- es 6erdadera4 9ntonces 9l !ayor es &U. Sino 9l !ayor es -

    ,. 9scri(ir: 9l !ayor es : & o - 4 segn de$endaV. Ainaliar $roceso.

    #include 

    using namespace std;

    int n;

    oid main()

    {

    !! "ngreso de Numeros

    cout

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    7/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: U/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    }

    E8r!i!io +(

    9la(orar el diagra!a de >u?o4 $seudoc%digo y $rogra!a 3ue $er!ita 6isualiar caracteres al

    traducir n!eros ingresados de 1 a 5. Por e?e!$lo si el n!ero ingresado es +4 se 6isualice

    un !ensa?e 3ue diga4 9l n!ero en caracteres es dosQ.

    #include 

    using namespace std;

    int n;

    oid main()

    {

    !! "ngreso de Numeros

    cout

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    8/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: ,/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    . )eer n5. Hacer el inter6alo de nFW &' nEW5

    . Si n W 14 es 6erdadera4 9ntonces 9l nu!ero en caracteres es RnoQU. Si n W +4 es 6erdadera4 9ntonces 9l nu!ero en caracteres es osQ,. Si n W 74 es 6erdadera4 9ntonces 9l nu!ero en caracteres es

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    9/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: V/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    E8r!i!io +*(

    9la(orar el diagra!a de >u?o y c%digo 3ue $er!ita 6isualiar un !en co!o el 3ue se

    !uestra a continuaci%n

    1. #$ci%n 1 9ligio la o$ci%n 1=

    +. #$ci%n + 9ligio la o$ci%n +=

    7. #$ci%n 7 9ligio la o$ci%n 7=

    . #$ci%n 9ligio Salir=

    #include 

    using namespace std;

    int n;

    oid main()

    {

    !! "ngreso de Numeros

    cout

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    10/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: 1/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    11/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: 11/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    E8r!i!io +u?o y $seudoc%digo $ara ingresar una dato co!o

    te!$eratura4 y e6aluar el dato4 si oscila entre D15B4 de(e i!$ri!ir cli!a frioQ4 si oscila

    entre 1541D+B cli!a te!$ladoQ4 si oscila entre +41D +,B (uen cli!aQ y si es !ayor a +,.1B

    en6iar el !ensa?e uX 3u@ calorYYYQ.

    #include 

    using namespace std;

    float n;

    oid main()

    {

    !! "ngreso de Numeros

    cout

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    12/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: 1+/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    E8r!i!io +0( 9la(orar el diagra!a de >u?o y c%digo 3ue $er!ita 6isualiar un !en co!o el

    3ue se !uestra a continuaci%n

    a. Ingresar tres n!eros y ordenarlos ascendente!enteb. Ingresar tres n!eros y ordenarlos descendente!entec. Salir del $rogra!a

    d. Cual3uier otra o$ci%n en6e el siguiente !ensa?e 9rror4 caso no i!$le!entadoQ.

    #include 

    using namespace std;

    int n,n1,n2,n3,ma'or,menor,medio;

    oid main()

    {

    !! "ngreso de Numeros

    coutn1 BB n2>n3)ma'orn2;

    else

    ma'orn3;

    if (n1

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    13/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: 17/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    menorn1;

    else

    if (n2

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    14/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: 1/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    V1 CUESTIONARIO FINAL

    1. ise0ar un $rogra!a 3ue $er!ita ingresar 7 n!eros $or teclado y ordenarlos

    ascendente!ente4 realice ta!(i@n su diagra!a de >u?o.+. Modi23ue el $rogra!a anterior $ara ordenarlos descendente!ente4 realice el

    $seudoc%digo corres$ondiente.7. ise0e un $rogra!a de selecci%n !lti$le de tal !anera 3ue:

    a. Si la o$ci%n ingresada es 14 ordene tres n!eros ingresados $or teclado en for!aascendente.

    (. Si la o$ci%n ingresada es +4 ordene tres n!eros ingresados $or teclado en for!a

    descendente.c. Si la o$ci%n ingresa es 74 salga del $rogra!a.d. Cual3uier otra o$ci%n en6en el siguiente !ensa?e 9rror4 caso no i!$le!entadoQ.

    . ise0e un $rogra!a 3ue dada co!o datos la categora de un alu!no y su $ensi%n calcule

    el descuento corres$ondiente teniendo en cuenta 3ue:a. Si la categora es &4 se realice el descuento del 1+.(. Si la categora es -4 se realice el descuento del V.c. Si la categora es C4 se realice el descuento del 5.

    d. Si la se eli?e 4 salga del $rogra!a.e. Cual3uier otra o$ci%n en6en el siguiente !ensa?e 9rror4 caso no i!$le!entadoQ.

    VI1 O2SERVACIONES Y CONCLUSIONES

    9!ita al !enos tres conclusiones en torno al tra(a?o realiado

    1. [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

     [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

     [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

    +. [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

     [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

     [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

  • 8/17/2019 Lab N° 6 - Programación Visual C++ - Estructuras Selectivas o Condicionales - 2014-I.doc

    15/15

    Laboratorio d M!"#i!a Co$%&ta!io#a' I Página: 15/15

    T$a( PROGRAMACIÓN VISUAL C)) - ESTRUCTURASCONDICIONALES O SELECTIVAS

    )&- 'B  JP: Ings.

     JCCDHZGDSMDCC#

    7. [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

     [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

     [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

    Haga sus o(ser6aciones en torno al tra(a?o realiado si es 3ue las tu6iera=.

    •  [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

    •  [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

    •  [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[ 

    "tt$://algorit!osen?a6a.Kord$ress.co!/+V/V/,/dadoD7Dnu!erosDde6ol6erDlosD7DenD

    ordenDascendente/[[[[[[[[[[[[[[