-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtema4.cpp
More file actions
148 lines (126 loc) · 4.08 KB
/
Copy pathtema4.cpp
File metadata and controls
148 lines (126 loc) · 4.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
/*
* Preparador: José Abraham (abrahamjoc@gmail.com)
* Noviembre 2013
* Asignatura: Programación 2
*
* Tema IV: Estructuras Condicionales en Lenguaje C
*
* El cerebro de una persona por su desarrollo biológico material,
* permite realizar miles de millones de operaciones matemáticas y lógicas,
* que dan como resultado la toma de decisiones según patrones identificados.
*
* En la programación para hacer uso de la toma de decisiones se utiliza
* lo que se conoce como estructuras condicionales, que no son más que
* simples estructuras que permiten según una condición preguntada ejecutar
* una acción determinada.
*
* Tópicos:
*
* - if..else : si algo hacer en caso contrario
*
* - switch : según caso hacer
*
* - operador ternario :
* (caso especial explicado más adelante)
*/
#include <stdio.h>
int main()
{
/** If..Else: es una sentencia que permite realizar acciones según una
* condición preguntada, permitiendo que en caso de ser cierto se
* tome una acción para cuando sea verdedara (positiva) ó falsa
* (negativa).
*
* Estructura:
*
* if ( condición ) {
*
* sentencias si condición
* verdadera;
* }
* else {
*
* sentencias si condición
* falsa;
* }
*
**/
// para este ejemplo usaremos un ejercicio para definir quien es el mayor de dos números
int a, b;
printf("Introduzca número A:\n"); scanf("%d",&a);
printf("Introduzca número B:\n"); scanf("%d",&b);
if ( a > b )
{
printf("El número A es MAYOR que B\n");
}
else if ( a < b )
{
printf("El número A es MENOR que A\n");
}
else
{
printf("El número A es IGUAl que B\n");
}
// con otro else if, se pueden anidar varios IF, haciendo
// más eficiente la validaciones de condicionales, ya que al
// entrar en alguno de primero obvia los demás.
printf("\n\n"); getchar();
/** Case: es una sentencia tiene que ver con el control de casos
* que se puedan presentar en una variable, muy utilizado por lo
* general en menús y/ó procesamiento de información explicita.
*
* Estructura:
*
* switch ( variable ) {
*
* case opción1: sentencias;
* break;
*
* case opción2: sentencias;
* break;
*
* case opciónN: sentencias;
* break;
*
* default: sentencias;
*
* // está opción tiene que ver cuando ninguna de las
* // propuestas anteriores es verdadera
* }
*
**/
// para este ejemplo usaremos un ejercicio que define la seleción de un menú
char opc = ' ';
printf("Seleccione una opción S/N:\n"); scanf("%c", &opc);
switch ( opc ) {
case 's' : printf("Usted seleccionó la opción S\n");
break;
case 'S' : printf("Usted seleccionó la opción S\n");
break;
case 'n' : printf("Usted seleccionó la opción N\n");
break;
case 'N' : printf("Usted seleccionó la opción N\n");
break;
default : printf("No ha seleccionado una opción válida.\n");
}
printf("\n\n"); getchar();
/** Operador Ternario '?': el operador ternario, es un operador
* que facilita el uso de un if abreviado, ejecutando una acción
* si es verdadera o falsa según sea su caso.
*
* Estructura:
*
* ( condición ) ? sentenciaVerdadera : sentenciaFalsa;
*
* // está opción sólo sirve para el compilador g++
* // es decir sólo funciona en C++.
* // (archivos con extensión .cpp)
*
**/
( true ) ? printf("Es VERDAD\n") : printf("Es FALSO\n");
( false ) ? printf("Es VERDAD\n") : printf("Es FALSO\n");
// notese como una misma instrucción con diferentes respuestas
// de condiciones ejecutan instrucciones según sea el caso de
// desición si es verdadero o falso.
return 0;
}