Descargar

Programación científica

Enviado por Pablo Turmero


    edu.red

    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

    edu.red

    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.

    edu.red

    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

    edu.red

    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

    edu.red

    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;

    edu.red

    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++

    edu.red

    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++

    edu.red

    Statements (sentencias) en C/C++ Simples Null Expresión (expr) If While Do For Switch

    Compuestas { … }

    edu.red

    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

    edu.red

    Statements (sentencias) en C/C++ while while (expr) statement(s) Ejemplo: int i=1, N; cout> N; while (i< N){ cout