You are on page 1of 19

Bloque 4

Escribiendo código

   
MEDIALAB
Curso de Programación para artistas PRADO
Escribiendo código Bloque 3

Operadores aritméticos

Suma ( + ) : x + y

Resta ( ­ ) : x – y

Multiplicación ( * ) : x * y

División ( / ) : x / y

Módulo ( % ) : x % y (resto de la división)

Si los operandos son enteros tipo del resultado es entero. Si hay un 
real el resultado es tipo real.

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Expresiones aritméticas
Ejemplo:
                        4
                  5x ⋅z10y6
                        3

Las expresiones se evalúan de izquierda a derecha.

Las multiplicaciones y divisiones prevalecen sobre las sumas y
restas.

Para especificar el orden de operación se utilizan paréntesis.

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Operadores lógicos y relacionales
Operadores relacionales

­  == : ¿es igual?
­  != : ¿es diferente?
­  < : ¿es menor?
­  > ¿es mayor?
­  <= ¿es menor o igual?
­  >= ¿es mayor o igual?

Operadores lógicos

­  ! NOT : Negación lógica ­> cambia el valor booleano
­  && AND : Es un “y” lógico ­> verdad si ambos son verdad
­  || OR : Es on “o” inclusivo ­> verdad si al menos uno es verdad
­  ^ XOR : Es un “o” exclusivo ­> verdad si ambos son diferentes
   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Ejemplos
Números x de 0 a 10:

     (x>=0) && (x<=10)

Números x fuera del intervalo [0,10]:

     (x<0) || (x>10)

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo en código Bloque 3

Estructuras de control
Estructuras condicionales

­ if
­ else
­ encadenamiento y estructuras anidadas
­ switch

Estructuras repetitivas

­ El bucle while
­ El bucle for
­ Bucles anidados
   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Programación estructurada
IDEA PRINCIPAL

La estructura de control de un programa sólo debe tener un
punto de entrada y un punto de salida.

Este tipo de estructura es predecible y disciplinada, no salta
de un lado a otro de forma impredecible.

Si no, sería muy complicado hacer un programa y probarlo (y 
depurarlo).

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

IF
cierta La sentencia if nos permite elegir 
condicion_1 si se ejecuta o no un bloque de
instrucciones.
falsa
instruccion_1()
Sintaxis

if (condicion_1)
     instruccion1();
Sigue el
programa if (condicion_2)
{
     instruccion2();
}

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Consideraciones acerca del uso de la 
sentencia if
­ Olvidar los paréntesis al poner la Un error común:
condición del if es un error sintáctico (los 
paréntesis son necesarios).    if (condición);
      sentencia;
­ Confundir el operador de comparación 
== con el operador de asignación =  es interpretado como
puede producir errores inesperados
   if (condición)
­ Los operadores de comparación ==, !       ; // Sentencia vacía
=, <= y >= han de escribirse sin        sentencia;
espacios.
Ejercicio:
­ => y =< no son operadores válidos en
C. Pedir un número al usuario e 
imprimirlo sólo si es mayor 
de cero

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

ELSE
La sentencia if nos permite elegir 
falsa cierta si se ejecuta o no un bloque de
condicion_1 instrucciones.

instruccion_2() instruccion_1() Sintaxis

if (condicion_1)
     instruccion1();
Sigue el
programa if (condicion_2)
con más {
instrucciones      instruccion2();
}

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Encadenamiento
Podemos encadenar muchos if – else para ver cuándo se cumplen unas 
condiciones específicas:

#include <stdio.h>                      // libreria de entrada/salida
void main () {
    float nota;
    printf (“Déme una nota: ”);      // imprime por pantalla
    scanf (“%f”,&nota);                 // recoge lo que escribe un usuario
    if (nota>=9) {
         printf (“Sobresaliente”);
    }
     else if (nota>=7) {
         printf (“Notable”);
    }
     else if (nota>=5) {
         printf (“Aprobado”);
    }
    else {
         printf (“Suspenso”);
    }
}
   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

If anidados
Los if se pueden ir anidando, es decir, incluir más sentencias if dentro de los trozos 
de código a ejecutar cuando se cumplen las condiciones.

#include <stdio.h>
void main() {
     float a,b;
     printf (“Escriba un número a dividir y un divisor”);
     scanf (“%f %f”,&a,&b);
     if (b==0) {
           printf (“La solución es infinito”);
     } else {
           if (a==0) {
                 printf (“La solución es cero”);
           } else {
                 printf (“La solución es &f, a/b”);
           }
     }
}
   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Switch
Evaluamos una expresión o variable y en caso de que valga un 
valor determinado ejecutamos un trozo de código diferente

switch (expresión)
{
   case expr_cte1:
       sentencia1;
   case expr_cte2:
       sentencia2;
   ...
   case expr_cteN:
       sentenciaN;
   default:
       sentencia;
}
   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Estructuras repetitivas – FOR y WHILE

Se utilizan cuando tenemos que repetir un trozo de código muchas 
veces.

En vez de escribir las mismas lineas muchas veces las metemos en 
un bucle de repetición.

El bucle de repetición se ejecuta hasta que se deja de cumplir una 
condición.

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

El bucle FOR
El bucle se ejecuta hasta que una condición se deja de cumplir

Sólo se puede utilizar cuando sabemos el número de iteraciones
de nuestro bucle

Ejemplo:

   int j = 0 ¿Qué hace este código?

   for (int i = 0; i < 100; i++)
   {
       j = j + i;
   }

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Tira

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

El bucle WHILE
while (condicion)
sentencia();

while (condicion) cierta
{ condicion_1 bloque
bloque_de_sentencias;
} falsa

Muy Importante:

En el cuerpo del bucle debe existir algo que haga variar el valor
asociada la condición que gobierna la ejecución del bucle.

   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Ejemplo: Sumar una serie de números hasta que el usuario 
introduzca un cero:

#include <stdio.h>

void main() {
    double suma;  // Suma de los datos
    double n;  // Número leído desde el teclado
    suma = 0;  // Inicialización de la suma
    printf (“Introduzca un número (0 para terminar)”);
    scanf (“%f”, &n);
    while (n != 0) {
        suma = suma + n;
        printf (“Introduzca un número (0 para terminar): ”);
        scanf (“%f”, &n);
     }
    printf (“Suma total = %lf\n”, suma);
}
   
Curso de Programación para artistas
MEDIALAB
PRADO
Escribiendo código Bloque 3

Depuración
­ Depuramos un código cuando no tiene errores pero no da los 
resultados que nosotros esperamos.

­ Cuando los programas son largos o complicados el tiempo de 
depuración supera en muchas veces el tiempo de edición.

­ Los métodos más inmediatos de depuración:
    ­ ejecutando el código paso a paso
    ­ poniendo trazas en el código
    ­ mediante ventanas de inspección

   
Curso de Programación para artistas
MEDIALAB
PRADO

You might also like