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/[[[[[[[[[[[[[[
Top Related