Objetivo Proveer al estudiante los fundamentos de Programación Científica utilizando un lenguaje de programación de propósito general como C, con el fin de prepararlo en el uso básico de herramientas de programación para el desarrollo, análisis y depuración de software científico.
El curso presenta los fundamentos de programación, tipos de datos, variables, estructuras de selección y control, funciones, estructuras básicas de datos, manejo de memoria y almacenamiento de archivos. Durante el curso el estudiante adquiere un conocimiento práctico de las temas a través de numerosas tareas de programación
Fundamentos de Programación en C/C++ C/C++ tiene pocos tipos básicos de datos: enteros (int y derivados), números de punto flotante (float, double), caracteres (chars).
El tipo de datos de una variable especifica dos cosas: La cantidad de almacenamiento a reservar La forma de interpretar los datos representados por las cadenas de bits
Ya que usamos bits para representarlos, los rangos de los valores en enteros, y la precisión en punto flotante depende de la implementación en el hardware de la máquina.
Cuando ejecutamos una operación con algún tipo de dato debemos asegurarnos que los operandos y los resultados son del tipo correcto. Usamos Casting para convertir explícitamente entre tipos.
Tipos de datos primitivos en C/C++ Variable: Es el medio simbólico por el cual se hace referencia a una localidad de memoria en la que se almacena información (datos).
Una declaración de una variable: Reserva y nombra en tiempo de ejecución un área de memoria para guardar datos de un tipo específico type var1; type var1_new , var2, var333; type var1=value, var2_, var3_01=value;
Ejemplos: char _b, c=c; double y, x, z_2 = 78.0098; 78.0098 z_2
Más sobre variables en C/C++ Pérdida de datos (data loss): double x = 3; //OK (int -> double), implícito int n = 3.7; //Warning: compilador convierte a enteros, pero se pierden datos fraccionales
Conversión forzada: Casting. (static, dynamic, const, reinterpret)_cast int n = static_cast (3.7); //OK
Expresiones (expr) en C/C++ Expresión (expr): constante | variable expr op expr Op expr
Aritméticas Operadores: +, -, *, /, % (residuo o mod) Unitarios (incremento): var++, ++var, var–, –var, Ejemplos x+ 3 x + y + z (x + 7) / 3 * y 14 % 3 – (x * 3) % 4 Y = ++x Y = x++ Especiales (op =): x +=4, y/=x; t*=5;
Relacionales (de comparación: True, False) Operadores: ==, !=, , = Ejemplos: 1 < 1 x == x x < x 3 != 4
Expresiones Lógicas Operadores: !, ||, && C usa enteros (0, 1) C++ usa bool (false, true,) Ejemplos: ! 2 / value es 0 ! (x == (x +1)) / value es 1 (x == 0) || (x !=0) / siempre es 1 (x == x) && (1!=2) / value es 1 1 || (x == y) / (x == y) no se evalúa
Expresiones (expr) en C/C++
De Selección Expr1 ? Expr2 : Expr3 El resultado es expr2 si expr1 es true, o Expr3 si expr1 es falso Ejemplos: 0 ? Y : z //value es z 1? 10 : 13 //value es 10 A ? B : 9 //value es B if A is true, 9 de otra manera
Expresiones (expr) en C/C++
Statements (sentencias) en C/C++ Simples Null Expresión (expr) If While Do For Switch
Compuestas { }
Statements (sentencias) en C/C++ If, if-else If (expr) statement1 If (expr) statement1 else statement2 Ejemplos: If(a==1) x +=4;
If (y!=x+5) { x+=1; } else { y -=1; }
Ejercicio: Identifica si un número es par o impar
Statements (sentencias) en C/C++ while while (expr) statement(s) Ejemplo: int i=1, N; cout> N; while (i< N){ cout