Lenguajes de programación

Documentos relacionados
Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Tipos de Datos en C. Palabras reservadas en C

TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL.

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS

Algoritmo, Estructuras y Programación I Ing. Marglorie Colina

Lección 2 Introducción al lenguaje C

UNIDAD 1. Algoritmo se define como un conjunto de instrucciones que la computadora debe seguir para resolver un problema.

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador.

Elementos de un programa en C

PSEUDOCODIGO, DIAGRAMAS DE FLUJO Y ALGO DE C

Programación Estructurada

Tipos de datos y Operadores Básicos

Lenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III

INTRODUCCIÓN AL LENGUAJE C

LENGUAJE. Tema 2 Elementos de un programa

Lenguaje C Elementos de un Programa. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006

Programación En Lenguaje C

Lenguaje de programación C. Introducción

Es un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos.

Descripción de un Programa

Programación en Lenguaje C

Tema 05: Elementos de un programa en C

PROGRAMACION ESTRUCTURADA: Tema 1. El lenguaje de programación C

Tipos de Datos. Tipos de Datos Simples Estándar

Unidad II Fundamentos de C++ M.C. Juan Carlos Olivares Rojas

Introducción a la Programación

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

INICIACIÓN A LA PROGRAMACIÓN EN C

El lenguaje C. 1. Identificadores, constantes y variables

Fundamentos de Programación 2017-I

Sintaxis de C Ing. Jose Maria Sola Dr. Oscar Ricardo Bruno

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Principios de Computadoras II

Introducción al lenguaje C

abril de 2017 Desarrollo de aplicaciones en Java Tipos de datos primitivos Tipos de datos Elementos de aplicaciones simples

Tipos de variables. Lenguaje C. Departamento de Electrónica. Tipos de datos, variables y constantes. Fundación San Valero

Java. Introducción a la Programación Orientada a Objetos

TIPOS DE DATOS BASICOS EN LENGUAJE C

OPERADORES Y EXPRESIONES

VARIABLES, CONSTANTES Y EXPRESIONES ASIGNACIÓN. TIPOS ELEMENTALES. PRECEDENCIA DE LOS ESTRUCTURAS DE CONTROL. CONDICIONAL E

Laboratorio de Arquitectura de Redes. Introducción al lenguaje C

JavaScript Básico. Elementos Básicos: Comentarios: Literales: Valores que puede tomar una variable o una constante.

Fundamentos de Informática E.U.P. Universidad de Sevilla

1.1 Tipos de Datos Primitivos. 1.2 Tipos de datos estructurados. 1.3 Definición de estructura de datos

Programación. Test Autoevaluación Tema 3

Curso de Programación Avanzada en C

Laboratorio de Arquitectura de Redes. Entrada y salida estándar

EQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO

Codificación en C. Como pasar de Pseudocódigo a C (con pequeños trucos de C++)

Cuales son los tipos de instrucciones que se utilizan en la programación?

Introducción al lenguaje C

TEMA 02 TIPOS, OPERADORES Y EXPRESIONES

Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

Estructuras de Datos Declaraciones Tipos de Datos

Constantes. Las constantes no cambian durante la ejecucion de un programa en C++, en C++ existen 4 tipos de constantes:

Tema 2. El lenguaje JAVA

Fundamentos de Programación 2017-I

Objetivo N 2. Conocer la Estructura General de un Programa en C++ Estructura de Datos Prof. Egilde Márquez

Tema 1: Introducción a C

Fundamentos de programación

Introducción rápida a la programación (estructurada ) con C++

Programación 1 Tema 3. Información, datos, operaciones y expresiones

Informática Ingeniería en Electrónica y Automática Industrial

Operadores aritméticos

Examen de Fundamentos de la Programación (Modelo 1)

Operadores aritméticos. / División operando enteros o reales si operandos son entero resultado es entero. Resto de caso resultado real

Tema 2. El lenguaje de programación Java (Parte 1)

Elementos léxicos del lenguaje de programación C

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Números enteros (cortos, largos y sin signo) Números reales (precisión simple y doble) Carácter y cadenas de caracteres. Lógicos.

CAPITULO 4: ENTRADA Y SALIDA DE DATOS.

Se guardan en archivos con extencion c y los cabezales con extension h

Expresiones y sentencias

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

Programación estructurada (Introducción a lenguaje C)

Java para programadores

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

Introducción a Java. Introducción a Java. Programación I

Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado.

Tema 2: Desarrollo de Algoritmos. E.E. de Algorítmica

Programación estructurada (Tipos, operadores y expresiones)

Estructura de datos y Programación

El Lenguaje de Programación C (Pt. 1) Organización de Computadoras Depto. Cs. e Ing. de la Comp. Universidad Nacional del Sur

Unidad I Tipos de Datos en C

ESTRUCTURAS DE CONTROL

Datos y tipos de datos

Unidad 3. Lenguaje estructurado

Fundamentos de la programación

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

Informática PRÀCTICA 3 Curs Práctica Nº 3: Tipos de datos simples. Constantes y variables. Operadores aritméticos. Formato de salida.

Transcripción:

Lenguajes de programación Un computador solo entiende lenguaje binario Un procesador tiene un conjunto finito de operaciones binarias Un programa de computador es una secuencia de estas instrucciones

Etapas en la construcción de un programa Problema? Resolución Codificación y Edición Archivo fuente Con errores Prueba Errores de sintaxis Compilación Sin errores A usar el programa! Sin errores Archivo ejecutable Archivo objeto

Lenguajes de programación Código fuente if(x>0) Y=10; compilador Código Objeto 0011001 linker Sintaxis gramática Código Ejecutable 0011001

Lenguajes de programación Proceso de creación de un programa Generación de código fuente Compilación Se analiza la sintaxis del programa Se analiza la gramática del programa Se genera código objeto Enlace Se combina el código objeto con bibliotecas del sistema Se genera programa ejecutable Ejecución

Lenguajes de programación Código fuente Compilación Código objeto bibliotecas Enlace Código ejecutable Ejecución

Estructura general de un programa C Todo programa C Está formado por un conjunto de funciones En particular, una función que no puede faltar es la función main (programa principal). Llama a otras funciones: Definidas por nosotros en el programa Predefinidas, en bibliotecas.

Programa en C Declaraciones previas (opcional) Inicio instrucciones Fin

Las funciones en C 1. Funciones pre-definidas agrupadas en bibliotecas Ejemplos: #include <string.h > Incluye funciones de Manejo de strings #include <stdio.h > Incluye funciones de I/O #include <math.h > Incluye funciones matematicas 2. Funciones definidas por el usuario

Declaraciones previas Código fuente Cabeceras de bibliotecas Pre procesamiento Código fuente procesado Compilación Código objeto bibliotecas Enlace IWI-131 - Tema 2

Definición de una función en C

Funcion main ANATOMIA DE UN PROGRAMA EN C Librerías (uso de directivas del preprocesador) #include<stdio.h> int main(){ } int a, b, c = 0; printf( Digite el primer numero: ); scanf( %d,&a); printf( Digite el segundo numero: ); scanf( %d,&b); c = a + b; printf( El resultado de la suma es: %d\n,c); return 0; Declaración de variables (las variables son locales en este caso). Instrucciones (Expresiones aritméticas y lógicas, condicionales (IF), ciclos (while, do while, for). Programa principal

Primer programa en C /* Mi primer programa C */ #include <stdio.h> #include <stdlib.h> int main() { printf( Hola mundo!\n ); system("pause"); return 0; }

Definición de una función en C Valor retornado en el cuerpo de la función Se usa sentencia return para devolver valor del tipo de retorno de la función. Puede no devolver nada (la función retorna tipo void). return; Sin sentencia return, retorna cuando encuentra }

Definición de una función en C Tipo del Valor de Retorno Cuando la función no retorna nada se coloca void void imprimenumerosdesdehasta(int x, int y){ for (int i = x; i <= y; i++) printf( %d\n, i); } Si retorna valor se coloca return int potencia(int n, int m){ int i, p; p = 1; for (i = 1; i <= m; i++) p = p * n; return p; }

Definición de una función en C Lista de parámetros formales (opcionales) Si la función no tiene parámetros formales se coloca void int flip(void){ /* genera un número ramdom */ int valor; return valor; }

/* Función que eleva la base n a la potencia m (m >= 0)*/ int potencia(int n, int m) { int i, p; } p = 1; for (i = 0; i < m; i++) p = p * n; return p;

Instrucciones Las instrucciones se escriben en el cuerpo del programa. Pueden ser Declaraciones de variables Asignaciones Estructuras de control Llamadas a funciones Por lo general, terminan con un punto y coma ( ; )

Primer programa C /* Mi primer programa C */ #include <stdio.h> #include <stdlib.h> Int main() { printf( Hola mundo!\n ); system("pause"); }

Principales Secuencias de Escape en C Secuencia de escape Descripción \a Carácter de alarma (campana del sistema). \n New line (Nueva línea). Posiciona el cursor de la pantalla al comienzo de la próxima línea. \r Carriage return (Retroceso de carro). Posiciona el cursor al comienzo de la línea corriente sin avanzar a la próxima. \t Tabulador horizontal. Mueve el cursor hasta la próxima marca de tabulación. \\ Backslash. Usado para imprimir el carácter backslash. \ Comilla. Usado para imprimir la comilla. \ Apóstrofo. Usado para imprimir el apóstrofo. \? Signo de interrogación. Usado para imprimir el signo de interrogación.

Constantes y Variables Constantes o literales Ejemplos en C: 12, a, hola, 23.5 Variables Nombre (Identificador) En C, letras, números y el carácter de subrayado (_), no pueden comenzar con un número. Cualquier longitud, reconoce hasta 31 caracteres. Case sensitive. No acepta palabras claves.

Bit, Byte, Word Definición: Unidades usadas para describir unidades de datos o memoria en el computador Bit: Unidad mas pequeña de memoria usada para mantener uno de dos posibles valores, 1 o 0. 0 1 Byte: Unidad de memoria equivalente a 8 bits. 10010010

SISTEMAS NUMERICOS Relación entre las bases mas comunes BASE 16 BASE 10 BASE 8 BASE 2 0 0 0 0000 1 1 1 0001 2 2 2 0010 3 3 3 0011 4 4 4 0100 5 5 5 0101 6 6 6 0110 7 7 7 0111 8 8 10 1000 9 9 11 1001 A 10 12 1010 B 11 13 1011 C 12 14 1100 D 13 15 1101 E 14 16 1110 F 15 17 1111 Realizar algunos ejercicios de conversión de bases BASE 16 BASE 10 BASE 8 BASE 2? 234???? 417???? 11100101 4AF???

Tipos de datos void 0 bytes.

Tipos de datos numéricos int Tipo de dato entero Valores positivos y negativos Se almacena en 2 o 4 bytes int (16 bits): -32.768 a 32.768 long int (32 bits): -2.147.483.648 a 2.147.483.648 unsigned int (32 bits): 0 a 4.294.967.296 Se puede abreviar como unsigned

Modificadores Para modificar el tamaño de almacenamiento se utilizan tipos de datos modificados Modificadores signed: reserva un bit para el signo unsigned: define solo valores positivos long: utiliza el mayor tamaño disponible short: utiliza el menor tamaño disponible

Tipos de datos numéricos float Tipo de dato real Precisión simple Valores positivos y negativos Se almacena en 4 bytes 37 dígitos para parte entera 6 dígitos para parte decimal Rango: [3.4e-38, 3.4e38] No acepta modificadores

Tipos de datos numéricos double Tipo de dato real Precisión doble Valores positivos y negativos Se almacena en 8 bytes 37 dígitos para parte entera 10 dígitos para parte decimal Rango: [1.7e-308, 1.7e308] long double (10 bytes)

Tipos de datos numéricos int main(){ int a = -10; unsigned int b = 10; float c = 10.1; double d = 0.000000001; }

Tipos de datos alfabéticos char Almacena cualquier carácter Ocupa un byte Permite diferenciar 256 caracteres. signed char: -127 a 127 unsigned char: 0 a 256 El valor almacenado es el código ASCII que representa el carácter Ej: @ = 64, \ = 92, A = 65

TIPOS DE DATOS Cuando declaro una variable la elección del tipo de dato depende del propósito para el cual voy a usar la variable. Tipo Ejemplo Tamaño en bytes Rango (minimo-maximo) char c 1 0,,255 int 1024 2 (o 4, depende de la arquitectura) float 10.5 4 3.4E-38,.,3.4E38 double 1e-8 8 1.7E-308,,1.7E308-32768,,32767 (si el tamaño en bytes es 2) tipo nom_var1 = valor_inicial, nom_varn;

Cast Se puede forzar al compilador para hacer una conversión de tipos. Se vera su utilidad al estudiar los operadores. void main(){ double d1=4.7, d2=2.4; int i = ((int)d1)/((int)d2); } printf("%d\n", i);

Entrada/Salida Entrada estándar: teclado getchar: lee un caracter scanf: lee entradas con formato Salida estándar: pantalla printf: imprime datos con formato Existen otras formas 32

Salida formateada con printf Cada especificador de conversión: Empieza con % Termina con un carácter de conversión. 33

IMPRIMIENDO VARIABLES EN PANTALLA - ASPECTOS BASICOS Para imprimir variables en pantalla usando la función printf, cada tipo de dato tiene su especificador de control, la siguiente tabla muestra los especificadores basicos Especificador Significado %d Usado para imprimir un valor entero en decimal %o Usado para imprimir datos enteros en notación octal %x (%X) Usado para imprimir variables enteras en notación hexadecimal %f Permite imprimir variables reales %u Permite imprimir valores enteros sin signo %ld %lo %lx Permite imprimir variables tipo long Imprime variables tipo long en formato octal Imprime variables tipo long en formato hexadecimal

IMPRIMIENDO VARIABLES EN PANTALLA - ASPECTOS BASICOS Especificador Significado %h Permite imprimir variables tipo short %hd Imprime variables tipo short en formato decimal %hx Imprime variables tipo short en formato decimal %lu Imprime variables tipo unsigned long %lld Permite imprimir variables tipo long %llu Permite imprimir variables tipo long sin signo %c Usado para imprimir caracteres sencillos %s Usado para imprimir cadenas de caracteres

Salida de datos #include <stdio.h> #include<stdlib.h> int main(){ char c='a'; int i=126; double d=12.0346; printf("la letra %c es el numero %d\n", c,c); printf("el numero decimal %d es el %x en hexadecimal \n",i,i); printf("el numero %f se redondea a %010.3f \n",d,d); printf("inserte aqui su mensaje: < %s > \n","este es mi mensaje"); system("pause"); return (0); } La letra A es el numero 65 El numero decimal 126 es el 7e en hexadecimal El numero 12.034600 se redondea a 000012.035 Inserte aqui su mensaje: < este es mi mensaje >

Ingreso de datos #include <stdio.h> #include<stdlib.h> int main() { int entero,entero1,entero2 ; char c; scanf ( %d, &entero); /* lee un entero */ scanf ( %d, %d, &entero1, &entero2); scanf ( %d %c \n, &ent3, &c ); /* lee un entero, ent3, y un carácter, c, */.. } /* ha leido dos enteros*/

#include <stdio.h> #include<stdlib.h> int main() { int a,b,suma=0 ; printf( ingrese a y b\n ); scanf( %d%d",&a,&b); Suma= a +b; printf( La suma de %d + %d es = a %d\n,a,b,suma); } system("pause"); return (0); Suma=0 Ingrese a y b a,b Suma=a +b a,b,suma

Operadores y expresiones aritméticas en C Operador aritmetico en C Operadores relacionales en C + ==!= - <= * >= / > % <

Operadores y expresiones lógicas en C No hay tipo booleano o lógico 0 representa falso 1 representa verdadero 1 == 1 1 (verdadero) 10 <= 5 0 (falso)

Operadores y Expresiones Lógicas en C Operador lógico and Operador lógico en C Ejemplo de uso && i!= 0 && j > 1 Significado i distinto de 0 y j mayor que 1 or not c == a n == 0!!encontrado c igual al carácter a o n igual a 0 la variable encontrado no es verdadera (encontrado igual 0) Orden de evaluación: 0 && _ 0 1 _ 1

Operadores de asignación aritméticos Operador de asignación aritmético Ejemplo Versión descomprimida Resultado asignado a variable a asumiendo la declaración int a = 3; += a+=4 a = a + 4 7 -= a-=4 a = a - 4-1 *= a*=4 a = a * 4 12 /= a/=4 a = a / 4 0

Operadores de incremento y decremento en C Operador Explicación Ejemplo de uso Efecto a++ Devuelve el valor de a y luego lo incrementa en 1. i = a++; Asigna el valor de a a la variable i y luego incrementa a en 1. Es equivalente a i = a; a = a + 1; ++a Incrementa el valor de a en 1 y devuelve ese valor. i = ++a; Incrementa en 1 la variable a y ese valor lo asigna a la variable i. Es equivalente a a = a + 1; i = a; a-- Devuelve el valor de a y luego lo decrementa en 1. printf( %d, a--); Imprime el valor de a y luego decrementa en 1 su valor. Es equivalente a printf( %d, a); a = a - 1; --a Decrementa el valor de a en 1 y devuelve ese valor. printf( %d, --a); Decrementa en 1 la variable a y luego muestra su valor por pantalla. Equivalente a a = a 1; printf( %d, a);

Conversiones Implícitas de Tipos en C int i = 5; float f = 3.0; float y; f = i; y = f + i;

Conversiones Explícitas de Tipos en C Operador cast Forma general: (nombre-de-tipo) expresión Ejemplos: float resultado; int i = 9; int j = 5; resultado = i / j; resultado = (float)i / j; resultado = i / (float)j; resultado = (float)(i / j); resultado = (float)i / (float) j;

Programación Estructurada Metodología de programación C. Böhm y G. Jacopini, 1966 Edsger W. Dijkstra, 1968 Estructuras de Control Secuencia Selección Iteración

Secuencia en C ; es un finalizador de sentencia: y = 4 y j++ y scanf( ) son expresiones en C y = 4; j++; scanf( ); son sentencias en C { } para crear sentencias compuestas o bloques: Agrupan declaraciones y sentencias. Ejemplo: llaves en declaración de función main.

Selección Selección de rama vacía o simple if (cond) sentencia; Ejemplos: if (a==1 && b) a++; if (a==1 && b){ a++; b+=5; }

Selección Selección de dos ramas if (cond) sentencia; else sentencia; Si hay if anidados ambiguos, asocia else al if mas interno: if (a==1 && b) if (a==1 && b){ if (b < 0) if (b < 0) b = 0; b = 0; else } a++; else a++;

Selección Selección múltiple en C switch (expresión) { case constanteentera 1 : sentencias; case constanteentera 1 : sentencias; case constanteentera 1 : sentencias; default: sentencias; } Ejemplo 1: switch (i) { case 1: printf( uno\n ); case 2: printf( dos\n ); case 3: printf( tres\n ); }

Selección Ejemplo 2: switch (i) { case 1: printf( uno\n ); break; case 2: printf( dos\n ); break; case 3: printf( tres\n ); break; default: printf( distinto de 1, 2 y 3\n ); } Ejemplo 3: switch (ch) { case, : case ; : case. : printf( signo de puntuacion\n ); break; default: printf( no es un signo de puntuacion\n ); }

Iteración while do/while for

while (expresión) sentencia; Iteración while Ejemplo: int i = 0; while (i < 10) { printf( i = %d, i); i++; }

Iteración for for (expresión1; expresión2; expresión3) sentencia; Ejemplos: int suma = 0; for (i = 0; i <= n; i++) suma = suma + i; int suma; for (i=0, suma=0; i <= n; i++, suma+= i);

do sentencia; while (expresión); Iteración do/while Ejemplo: do { printf( Ingrese un numero natural scanf( %d, &n); } while (n < 0); mayor o igual a cero: );