conceptos básicos - interaktiv.cl · • lenguajes de alto nivel. domingo 3 de junio de 2012....

35
Conceptos Básicos Programación domingo 3 de junio de 2012

Upload: dangque

Post on 05-Oct-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Conceptos BásicosProgramación

domingo 3 de junio de 2012

Introducción

• Lenguaje.

• Código Máquina.

• Lenguajes de alto nivel.

domingo 3 de junio de 2012

Criterios clasificación

• Nivel de abstracción.

• Propósito.

• Evolución histórica.

• Manera de ejecutarse.

• Paradigma de programación.

domingo 3 de junio de 2012

Nivel de abstracción • Bajo Nivel.

• + Cercano a la maquina.

• Difíciles de descubrir y corregir fallos.

• Ensamblador, (RISC , CISC).

• Alto Nivel, Medio Nivel.

• + Cercano al humano.

• C, BASIC, JAVA, C#, PHP, etc

domingo 3 de junio de 2012

Propósito

• Propósito general.

• Propósito especifico.

• Sistemas.

• Scripting.

• Etc.

domingo 3 de junio de 2012

Tarea a realizar

• Imperativos. (el cómo)

• Declarativos. (indicar)

domingo 3 de junio de 2012

Generaciones

• 1GL. (Maquina).

• 2GL. (Ensamblador).

• 3GL.(Imperativos).

• 4GL.(Bases de datos).

• 5GL.(O.O , Visual)

domingo 3 de junio de 2012

Lugar de ejecucion

• Servidor.

• Cliente.

domingo 3 de junio de 2012

Lenguaje C.Estructura General.

domingo 3 de junio de 2012

PDP-7 PDP-11 UNICS

domingo 3 de junio de 2012

+

- Evolución del lenguaje B.- 1972 BELL.- ANSI , ISO.- Portabilidad (plataformas/arquitecturas.- Dennis MacAllister Ritchie.- Ken Thompson.

domingo 3 de junio de 2012

Características.

• Propósito general.

• Potente y rápido.

• Programación de drivers y s.o.

• Portable.

• Gestión de memoria.

• Gracias a c surge C++ y derivados.

domingo 3 de junio de 2012

Características.

• C es un lenguaje semi-estructurado.

• Es un lenguaje de nivel medio.

• Orientado a la programación de sistemas.

• Es altamente portable.

• Case Sensitive. (printf != Printf).

• Eficiencia.

domingo 3 de junio de 2012

Fases de desarrollo

• El preprocesador.

• El compilador.

• El enlazador.

domingo 3 de junio de 2012

Estructura de un programa en C.

• Todos los programas se componen de una o mas funciones.

• Una función se define:

• El tipo de dato que retorna.

• El nombre de la función.

• 0 o más parámetros, entre paréntesis ().

• 0 o más instrucciones encerradas entre {}.

• Cada instrucción, termina con un ;

domingo 3 de junio de 2012

Ejemplo:Entero miFuncion( entero a, decimal b){

instrucción 1;}

Estructura de un programa en C.

domingo 3 de junio de 2012

Función Main()

• main() es la función obligatoria en todos los programas.

• El programa más básico que podemos tener es

main (){

}

• Este programa compila sin errores, pero no realiza ninguna acción.

domingo 3 de junio de 2012

Preprocesador.

int main (){

printf(“Hola Mundo\n”)

return 1;

}

• No esta definida la función printf(), ni la función return

domingo 3 de junio de 2012

• Debemos incluir instrucciones de preprocesador.# include <stdio.h>int main (){

printf(“Hola Mundo\n”);return 1;

}

• Este programa si compila, y al ejecutarlo, muestra el mensaje “Hola Mundo” en la

Preprocesador.

domingo 3 de junio de 2012

• Generalmente un programa en C tiene la siguiente forma:

1. Comandos para el preprocesador

2. Definiciones de tipos de datos

3. Prototipos de funciones

4. Variables globales

5. Funciones

5.(1) Sentencias simples

5.(2) Sentencias complejas

Estructura C.

domingo 3 de junio de 2012

Ejemplo:

#include <stdio.h> //comandos del preprocesador

typedef float balance; //definiciones de tipos

void imprime(); //prototipos de funciones

int cont=3; balance b; //variable globales

int main(void) {

balance = 12.5;

imprime(); //llamada a funciones

return 0;

}

imprime(){

printf(“El contador es %i\n”, cont);

printf(“El balance es %f\n”, balance);

}domingo 3 de junio de 2012

Estructura general.

/* esto es un comentario para varias lineas */

//esto solo una linea

#include <stdio.h>

#define cien 100;

/* declaracion de variables Globales, funciones y estructuras */

void main(){

printf(ʻHola esto es un ejemploʼ);

}

domingo 3 de junio de 2012

Manipulación Básica de Datos.

TIPOS BÁSICOS.TIPOS BÁSICOS.

int Enteros (números positivos y negativos.)

char Caracteres (letras).

float Números en coma flotante (números reales).

double Números en coma flotante de doble precisión.

void no tipo (se emplea en punteros).

domingo 3 de junio de 2012

Declaración de variables.• Las variables se utilizan para guardar datos dentro del

programa.

• Hay que declarar las variables antes de usarlas.

• Cada variable tiene un tipo.

Declaración:

tipo nombre ;

Ejemplo:

# # int VueltoDelPan;

• Las variables globales se declaran justo antes de main().

domingo 3 de junio de 2012

Identificadores.• Define a una variable, una función o un tipo

de datos.

• Un identificador válido ha de empezar por una letra o por el carácter de subrayado _.

• Se distinguen mayúsculas de minúsculas.

• No se pueden utilizar palabras reservadas como int, char o while.

• Muchos compiladores no permiten letras acentuadas o eñes.

domingo 3 de junio de 2012

Ejemplos de Identificadores.Valido.

char letra;

int Letra;

float CHAR;

int __variable__;

int cantidad_envases;

double precio123;

int __;

No valido.

int 123var;

char int;

int una sola;

int $pesos;

int var.nueva;

int eñe;

int for;

domingo 3 de junio de 2012

Expresiones.• Los datos se manipulan mediante

expresiones, que sirven para calcular

Operador. Significado

+ Suma.

- Resta.

* Multiplicación.

/ División.

% Modulo (resto de la división).

domingo 3 de junio de 2012

Expresiones.

• Una expresión combina varias operaciones y devuelve un valor.

• Los operadores *, / y % tienen precedencia sobre la suma y la resta.

• Se pueden utilizar paréntesis para agrupar subexpresiones.

domingo 3 de junio de 2012

Expresiones.

• # 1

• # 2+2

• # 4 + 6/2

• # (4+6) / 2

• # ( 3*5 + 12 ) % 7

domingo 3 de junio de 2012

Asignaciones.• La forma de dar valor a una variable es

variable = expresión;

• También se puede dar valor a una variable en el mismo momento en que se declara ( inicialización).tipo variable = expresión;

• Una variable que se declara sin inicializar contiene un valor indeterminado.

domingo 3 de junio de 2012

Asignaciones.int valor1 = 0;# /* variable inicializada a cero */# int valor2;## /* variable no inicializada */

# main()# {# # valor1 = 4 + 3;# /* asignación */

domingo 3 de junio de 2012

Expresiones uso de

• Una expresión puede ser el nombre de una variable.

• En ese caso, el resultado de la expresión es el valor de la variable.

domingo 3 de junio de 2012

int valor1 = 5;int valor2 = 1;int valor3;main(){# valor3 = ( valor1 * 4 ) - valor2;}

Expresiones uso de

domingo 3 de junio de 2012

Las asignaciones son expresiones

• Una asignación es una expresión.

• Devuelve un valor.

• una asignación puede incrustarse dentro de una expresión más compleja.

• El valor devuelto por la asignación a=b es el resultado de evaluar b.

domingo 3 de junio de 2012

Las asignaciones son expresiones

• C = 20 - ( B = 2*(A=5)+4 ) ;

• A valdrá 5 (por la expresión A=5)

• B valdrá 2*(5)+4= 14

• C valdrá 20-(14)= 6

domingo 3 de junio de 2012