parcial 2. 25 de junio del 2014 lenguaje de programaciÓn un lenguaje se puede definir como un...
TRANSCRIPT
PARCIAL 2
25 DE JUNIO DEL 2014LENGUAJE DE PROGRAMACIÓN
UN LENGUAJE SE PUEDE DEFINIR COMO UN CONJUNTO DE PALABRAS Y FORMAS DE EXPRESIÓN POR MEDIO DE LAS CUALES SE COMUNICAN Y RELACIONAN MIEMBROS DE UNA COMUNIDAD DETERMINADA CON LA COMPUTADORA.
LAS COMPUTADORAS “HABLAN” SU PROPIO LENGUAJE, EL CUAL ES NUMÉRICO Y ESTÁ LIMITADO A 1S Y 0S (SISTEMA BINARIO)
CARACTERÍSTICAS DEL LENGUAJE USAR EL MISMO LENGUAJE DE ELLAS: UN LENGUAJE DE MÁQUINA
USAR UN LENGUAJE PARECIDO AL NUESTRO: UN LENGUAJE DE ALTO NIVEL
USAR UN LENGUAJE PARECIDO AL DE LAS COMPUTADORAS: UN LENGUAJE DE BAJO NIVEL.
INCOVENIENTES DEL LENGUAJE1. Ofrece muchas libertades al
programador en la forma de escribir el código fuente. Si no ajusta a una disciplina en la manera de programar, los programas pueden resultar indescifrables al programador.
2. CARECE DE COMPROBACIÓN ENE LE SISTEMA EN TIEMPO DE EJECUCIÓN. ESTO PUEDE ORIGINAR MUCHOS PROBLEMAS NO DETECTABLES A SIMPLE VISTA
ELEMENTOS BASICOS DE UN PROGRAMA
1. COMENTARIOS
2. FUNCIONES DE LIBRERÍA PREDEFINIDAS
3. DEFINICIÓN DE DIRECTIVAS Y MACROS
4. CABECERA DEL PROGRAMA
5. DECLARACIÓN DE VARIABLES
6. CUERPO DEL PROGRAMA COMPUESTO DE SECUENCIA DE SENTENCIA
7. FIN DEL PROGRAMA
FASES DE UN PROGRAMA
USUALMENTE LOS PROGRAMAS EN C Y EN LA MAYORÍA DE LENGUAJES, CONSTAN DE TRES FASES:
FASE DE ENTRADA: SE LE INDICA AL USUARIO QUE DATOS DEBE INGRESAR A LA COMPUTADORA Y SE RECOPILA ESA INFORMACIÓN
FASE DE COMPUTO: LOS DATOS INGRESADOS SON PROCESADOS, SE EFECTÚAN CÁLCULOS.
FASE DE SALIDA: LA INFORMACIÓN GENERADA ES MOSTRADA, SE DESPLIEGAN LOS RESULTADOS
TIPOS DE DATOS BÁSICOS
CADA TIPO DE DATO TIENE DOS CARACTERÍSTICAS QUE LO DEFINEN:
• DOMINIO, CORRESPONDE AL RANGO DE VALORES QUE EL TIPO DE DATO PUEDE TOMAR.
• CONJUNTO DE OPERACIONES QUE SE PUEDEN REALIZAR SOBRE EL TIPO DE DATO.
•LOS TIPOS DE DATOS BÁSICOS SON:
• NUMÉRICOS• CARACTERES • LÓGICOS
DATOS NUMÉRICOSLOS DATOS NUMÉRICOS PUEDEN SER DE DOS TIPOS:ENTEROS INTEGER, INT
NÚMEROS COMPLETOS, QUE NO TIENEN COMPONENTES FRACCIONARIOS
PUEDEN SER CON O SIN SIGNO ALGUNAS COMPUTADORAS PUEDEN REPRESENTAR
CANTIDADES ENTERAS DESDE –32768 A +32767REALES REAL, FLOAT, DOUBLE
SIEMPRE TIENEN UN PUNTO DECIMAL PUEDEN SER POSITIVOS O NEGATIVOS
DATOS LÓGICOS EXISTEN DATOS QUE SOLO PUEDEN SER
FALSOS O VERDADEROS. POR EJEMPLO:
LA BASE Y LA ALTURA SON IGUALES? ES RECTÁNGULO? ¿ES CUADRADO?
A ESTE TIPO DE DATOS, SE LOS CONOCE COMO DATOS BOOLEANOS O LÓGICOS BOOLEAN
USUALMENTE SE UTILIZAN PARA REPRESENTAR LAS ALTERNATIVAS (VERDADERO/FALSO) A CIERTAS CONDICIONES.
OPERACIONES LÓGICAS• CON LOS DATOS LÓGICOS SE PUEDEN EFECTUAR OPERACIONES LÓGICAS.
Operador Significado Ejemplo Tipo de resultado
Resultado
No(not) Negación de un valor
No(6>10) Entero o real Verdadero
Y(and) Conjunción (1<5) y (5>10)
Ecuador clasificó y Colombia no clasificó
Entero o real Falso
Verdadero
O (or) Disyunción (5>10) o (10<9)
Entero o real Falso
OPERACIONES RELACIONALES Las operaciones relacionales, se pueden aplicar sobre
cualquier dato, pero siempre dan como resultado datos lógicos
Operador Significado Ejemplo Resultado
< Menor que El número de paralelos de Fundamentos es menor que el número de paralelos de Cálculo I
Verdadero
> Mayor que 8>10 Falso
== Igual que 9 == 15 Falso
>= Mayor o igual que
10 >= 10 Verdadero
<= Menor o igual que
8 <= 10 Falso
!= Diferente de
5 <> 5
El precio de una entrada en el Albocine es diferente de el de las entradas en el Cinemark
Falso
Verdadero
CONSTANTESDENTRO DE UN CÁLCULO O EN LOS PASOS PARA SOLUCIONAR UN PROBLEMA, EXISTIRÁN VALORES QUE NUNCA VAN A CAMBIAR Y SE LOS CONOCE COMO CONSTANTES. POR EJEMPLO: PI ES UNA CONSTANTE.
LAS CONSTANTES PUEDEN SER DATOS DE TODO TIPO.
VARIABLES• EL VALOR DEL RADIO, Y EL VALOR DEL ÁREA, SIEMPRE
PODRÁN CAMBIAR, SON VARIABLES.• UNA VARIABLE ES UN DATO CUYO VALOR PUEDE CAMBIAR
DURANTE UN CÁLCULO, O EN LA RESOLUCIÓN DE UN PROBLEMA. POR EJEMPLO:
• EL LADO PARA CALCULAR EL PERÍMETRO DEL CUADRADO• PARA REGISTRARSE, UN ALUMNO DEBE DAR SU NÚMERO
DE MATRÍCULA, EL CÓDIGO DE LA MATERIA, Y EL PARALELO.
• PUEDEN EXISTIR VARIABLES DE CUALQUIERA DE LOS TIPOS MENCIONADOS.
• EN COMPUTACIÓN, UNA VARIABLE ES UN ESPACIO EN MEMORIA, DONDE SE ALMACENA UN DATO, Y ESTE PUEDE VARIAR DURANTE UN PROCESO DADO.
VARIABLESPARA PODER TRABAJAR CON VARIABLES HAY
QUE SEGUIR CIERTAS REGLAS: A UNA VARIABLE SE LE DEBE DAR UN NOMBRE, O IDENTIFICADOR. EL NOMBRE DE UNA VARIABLE:
SÓLO PUEDE COMENZAR CON LETRAS O CON EL CARÁCTER _ PUEDE CONTENER LETRAS, NÚMEROS Y EL CARÁCTER _ , Y NO
CARACTERES ESPECIALES (‘&’, ‘%’, ‘?’, ETC) EN CIERTOS LENGUAJES DE PROGRAMACIÓN, SE HACE DISTINCIÓN
ENTRE MAYÚSCULAS Y MINÚSCULAS. POR EJEMPLO: EN LENGUAJE C LA VARIABLE LADO NO ES LA MISMA QUE
LADO.
ANÁLISIS DE UN PROGRAMA SENCILLO
SE DESEA ORDENARLE A LA COMPUTADORA QUE MUESTRE UN MENSAJE: HOLA MUNDO, POR EL MONITOR
NUESTRO PRIMER PROGRAMA
#include <stdio.h>
/*Programa para mostrar Hola Mundo*/
main()
{
/*Operación de salida*/
printf(“Hola Mundo\n”);
}
En Lenguaje C
Librerías-Las funciones se agrupan en librerías-Para que un programa pueda usar ciertas funciones, debe “incluir” las librerías donde se encuentran-Las librerías se representan con los archivos de cabecera (.h)-printf es una función y se la encuentra en la librería stdio
Comentarios:-No son tomados en cuenta al compilar el programa fuente-Son muy útiles, ayudan a explicar lo que está haciendo el programa
Programa Principal-Contiene la función main: es el punto de entrada al programa, las sentencias dentro de main son las que se ejecutan primero
SEGUNDO PROGRAMA: CALCULANDO
• SE DESEA ORDENARLE AL COMPUTADOR QUE SUME DOS NÚMEROS ENTEROS INGRESADOS POR TECLADO Y MUESTRE EL RESULTADO
LA SUMA DE ENTEROSEN C
#include <stdio.h>#include <simpio.h>main(){
int a,b;int suma;printf(“1er numero: ”);a = GetInteger();printf(“2do numero: ”);b = GetInteger();suma = a + b;printf(“El resultado es %d”, suma)
;}
Fase de entrada:-Para ordenar al computador que le pida al usuario un entero, usamos la función GetInteger() de la librería simpio.h
Fase de salida:-Para imprimir un mensaje que dependa de una variable entera se incluye en el mensaje %d, y luego se especifica la variable que se va a imprimir ( suma)
LA SUMA DE REALES
EN C#include <stdio.h>#include <simpio.h>
main(){ double a,b;
double suma; printf(“1er numero real: ”); a = GetReal(); printf(“2do numero real: ”); b = GetReal(); suma = a + b; printf(“La suma de %f y %f es %f”,a,b,suma) ;}
Aquí printf imprime los 3 reales con todos sus decimales, pero se puede corregir con la siguiente línea:printf(“La suma de %.2f y %.2f es %.2f”,a,b,suma);
UN PROGRAMA QUE SALUDE
En Lenguaje C#include <stdio.h>
#include <simpio.h>
void main()
{
string nombre;
printf(“¿Cu%cl es tu nombre?”,160);
nombre = GetLine();
printf(“Hola %s, c%cmo est%cs!”, nombre,162,160);
}
Usamos el tipo de dato string (cadena). Para pedir una cadena
por teclado usamos la función GetLine() del archivo simpio.h
Para imprimir una cadena, se usa %s
Para imprimir letras tildadas o caracteres especiales, utilizamos %c y
luego indicamos el código ASCII del carácter.
Begin{ string nombre; Write(“¿Cuál es tu nombre?”); Read (nombre); Write(“Hola”, nombre, “como estas!”); }
End
#include <stdio.h>#include <simpio.h>
void main(){ string nombre; printf(“¿Cu%cl es tu nombre?”,160); nombre = GetLine(); printf(“Hola %s, como estas!”, nombre);}
Algoritmos
Código fuente
Traductor
Código objeto
0101010101010101010
0101010101010101010
0101010101010101010
HALLAR A+B-C+100CÓDIGO:
#INCLUDE <STDIO.H>#INCLUDE <CONIO.H>INT MAIN (){ CLRSCR();
INT A, B, C; PRINTF("INSERTE VALOR PARA A: "); SCANF("%D",&A); PRINTF("INSERTE VALOR PARA B: "); SCANF("%D",&B); PRINTF("INSERTE VALOR PARA C: "); SCANF("%D",&C); PRINTF("\N%D + %D - %D + 100 = %D",A, B, C, (A+B+C-100)); GETCH();
RETURN 0;
}
OBTENER (A-B)(A+B)CÓDIGO
#INCLUDE <STDIO.H>#INCLUDE <CONIO.H>INT MAIN (){ CLRSCR();
INT A, B; PRINTF("INSERTE VALOR A: "); SCANF("%D",&A); PRINTF("INSERTE VALOR B: "); SCANF("%D",&B); PRINTF("(%D-%D) (%D+%D) = %D",A, B, A, B,((A-B)*(A+B))); GETCH();
RETURN 0;}