Nothing Special   »   [go: up one dir, main page]

Semana 3 Lenguaje c2

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 27

Lenguaje C

Semana 3

Clase 06
Agenda
1
Operadores 2 Condicionales
relacionales y lógicos

3 Ciclos
Operadores
lógicos y
relacionales
★ En programación existen tres tipos de operadores:
○ Operadores matemáticos
○ Operadores relacionales
○ Operadores lógicos

La clase pasada vimos el uso de los operadores matemáticos los


cuales nos permiten hacer las operaciones matemáticas básicas
como sumar, restar, multiplicar y dividir.
Operadores relacionales
● Los operadores relacionales nos permiten comparar dos valores. Al comparar los
valores solo pueden haber dos posibles resultados: true o false.

Operador Relación Ejemplo

< Menor que x<y

> Mayor que x>y

<= Menor o igual que x <=

>= Mayor o igual que x >= y

== Igual a x == y

!= Diferente a x != y

No confundir el operador de igualdad (==) con el operador de


asignación (=).
Operadores lógicos
● Los operadores lógicos nos permiten realizar dos o más comparaciones.

Operador Significado Definición Ejemplo

&& y Devuelve true cuando (x < y && y > z)


ambas condiciones se
cumplen

|| o Devuelve true cuando (x < y || y > z)


una o ambas
condiciones se
cumplen

! no Devuelve true cuando !(x < z)


no se cumple la
condición
Las sentencias condicionales
constituyen uno de los pilares de la
programación estructurada, y su uso Condicionales
consiste en ejecutar la siguiente
sección de acciones o no, según una
condición establecida.
★ En Scratch, teníamos los bloques condicionales como el “si”, en donde si la
condición resultaba ser verdadera ejecutaba las instrucciones dentro del
bloque.
★ En C tenemos la estructura condicional if que funciona de una forma muy
similar.
★ Además, teníamos el “si no”, en donde si la condición era falsa
entraba directamente a las instrucciones dentro del sí no. En C
tenemos algo similar, el else.
★ Si quisiéramos evaluar más de una condición podemos usar el “else if”.

ejemplo.c

7 if (x < y)
8 {
9 printf("x es menor que y\n");
10 }
11 else if (x > y)
12 {
13 printf("x es mayor que y\n");
14 }
15 else
16 {
17 printf("x es igual que y\n");
18 }
★ Hasta ahora, hemos visto el uso de los operadores relacionales dentro las
condiciones, pero también podemos ocupar los operadores lógicos.

ejemplo.c ejemplo2.c
7 if (x > y && x > 0) {
7 if (x != y )
8 printf("x es un número
8 {
9 positivo mayor que y");
9 printf("Los numeros no son
10 }
10 iguales");
11 else if (x < y | | x != 0) {
11 }
12 printf("x es un número
13 distinto de 0 ó menor que y");

14 }
¡Escribamos un programa!
Pseudocódigo:

Preguntar “cuántos puntos perdiste”, capturar la


entrada y almacenarlo en una variable de tipo entera
Si los puntos son menores a 2
Entonces decir “perdiste menos puntos que yo”
Sino si lo puntos son mayores a 2
Entonces decir “perdiste más puntos que yo”
Sino si los puntos son iguales a 2
Entonces decir “Perdiste la misma cantidad de
puntos que yo”

*Recuerda que no existe solo una forma de resolver un


problema.
#include <cs50.h>
#include <stdio.h>

int main(void)
{
const int MINE = 2;
int puntos = get_int("Cuántos puntos perdiste ");
Recuerda que en C podemos if (puntos < MINE)
crear una constante (una {
variable que no podemos printf("Perdiste menos puntos que yo.\n");
}
cambiar). else if (puntos > MINE)
{
printf("Perdiste más puntos que yo..\n");
}
else
{
printf("Perdiste la misma cantidad de puntos que
yo..\n");
}
}
¡Escribamos otro programa!

Crea un programa que valide si un número es par o


no.
Recuerda que los números pares son aquellos que,
al dividirlos entre 2, dan como resultado un
número exacto. En otras palabras, el residuo es
igual a 0.

PISTA: ¿Recuerdas el operador módulo (%)?

*Ten en mente que no existe solo una manera correcta de


resolver un problema.
Es una de las estructuras básicas más
importantes de programación, son
utilizados para repetir una acción sin

Ciclos tener que escribir varias veces el


mismo código, ahorra tiempo,
procesos, deja el código más claro y
facilita su modificación en el futuro.
★ Escribiremos un programa para mostrar por pantalla “meow”
tres veces:
ejemplo.c

1 #include <stdio.h>
2
3 int main(void)
4 {
5 printf("meow\n");
6 printf("meow\n");
7 printf("meow\n");
8 return 0;
}
★ Podemos mejorar el diseño de nuestro código con un bucle. El
bloque “Por siempre” puede ser creado con un bucle “while” en C:

ejemplo.c

1 #include <stdio.h>
2 #include <cs50.h>
3 int main (void)
4 {
5 while(true)
6
{
7
8 printf("meow");
9 }
10 return 0;
11 }
★ Un bucle “while” se repite una y otra vez siempre que la
condición entre paréntesis sea verdadera, y dado que
“verdadero” siempre será verdadero, este bucle se repetirá
infinitamente.
★ También podemos recrear el bloque “repetir” con una variable y un
bucle “while”
ejemplo.c
1 #include <stdio.h>
2
3 int main (void)
4 {
5 int i = 0;
6 while(i < 3)
7 {
8 printf("meow\n");
9 i++; //Incrementa la variable
10 }
11 return 0;
12 }
★ Iniciaremos “i” en “0” por conveniencia, por lo que para cuando
“i” llegue a “3”, nuestro bucle se habrá repetido tres veces.

★ Resulta que esto es un patrón común, por lo que en C podemos


usar un bucle “for”.
Ciclo “for”

★ El ciclo for consta de tres partes:


Inicialización: se inicializa una variable
(usualmente llamada i)

Condición: La condición permite ponerle


un fin al ciclo, una vez la condición sea
falsa se dejará de ejecutar el ciclo.

Incremento/decremento: permite
incrementar o decrementar el valor de la
variable inicializada, si no incrementamos el
valor de la variable la condición siempre sería
verdadera, por ende tendríamos un ciclo
Ciclo “for”

★ Podemos incrementar el valor de la variable no sólo en uno, sino que


también podríamos incrementarla en 2, 3, 100, etc…
★ También podríamos decrementarla.
★ En C también tenemos el ciclo
do-while. Este es diferente a los
demás, ya que se ejecuta por lo
menos una vez. A diferencia de los
demás ciclos este primero ejecuta
las instrucciones y luego evalúa la
condición.

★ El for o el while primero evalúan la


condición y luego ejecutan las
instrucciones.
¡Más ejercicios!

➢ Hacer un programa que confirme si el número


ingresado por el usuario es mayor a 10 pero menor que
100.

➢ Hacer un programa con un ciclo que muestre 100


números comenzando desde 0.

➢ Hacer un programa con un ciclo for donde se realice la


multiplicación de 0 a 12, de un valor ingresado por el
usuario
¿Preguntas?
Tarea

Investigar que es “switch” y


realizar ejemplos.

También podría gustarte