PARCIAL 2. LENGUAJE 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.

1 PARCIAL 2 ...
Author: Juan Luis Vidal Ríos
0 downloads 0 Views

1 PARCIAL 2

2 LENGUAJE 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.

3 LAS COMPUTADORAS “HABLAN” SU PROPIO LENGUAJE, EL CUAL ES NUMÉRICO Y ESTÁ LIMITADO A 1S Y 0S (SISTEMA BINARIO)

4 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. Bajo nivel Emsamblador Alto nivel (C, vb,perl..) Más parecido al lenguaje natural, más fácil de entender Más parecido al lenguaje del computador Nivel medio Java, C,C++, Macroensamblador

5 INCOVENIENTES DEL LENGUAJE 1. 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.

6 2. CARECE DE COMPROBACIÓN EN EL SISTEMA EN TIEMPO DE EJECUCIÓN. ESTO PUEDE ORIGINAR MUCHOS PROBLEMAS NO DETECTABLES A SIMPLE VISTA

7 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

8 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

9

10

11 CONSTANTES DENTRO 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. EJEMPLO: PI ES UNA CONSTANTE. LAS CONSTANTES PUEDEN SER DATOS DE TODO TIPO.

12 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. 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.

13  PARA 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.

14 OPERACIONES LÓGICAS CON LOS DATOS LÓGICOS SE PUEDEN EFECTUAR OPERACIONES LÓGICAS. OperadorSignificadoEjemploTipo de resultado Resultado No(not)Negación de un valor No(6>10)Entero o realVerdadero Y(and)Conjunción(1 10) Ecuador clasificó y Colombia no clasificó Entero o realFalso Verdadero O (or)Disyunción(5>10) o (10

15 OPERACIONES RELACIONALES Las operaciones relacionales, se pueden aplicar sobre cualquier dato, pero siempre dan como resultado datos lógicos OperadorSignificadoEjemploResultado Mayor que8>10Falso ==Igual que9 == 15Falso >=Mayor o igual que 10 >= 10Verdadero

16 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

17 DATOS NUMÉRICOS LOS 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 +32767  REALES  REAL, FLOAT, DOUBLE  SIEMPRE TIENEN UN PUNTO DECIMAL  PUEDEN SER POSITIVOS O NEGATIVOS

18 CADENAS Y CARACTERES PARA PODER DISTINGUIR LOS DATOS DE TIPO CARACTER (CHAR), ESTOS SE ENCIERRAN EN COMILLAS SIMPLES. LOS DATOS DE TIPO CARÁCTER SE PUEDEN CLASIFICAR EN: ALFABÉTICOS (‘A’, ’B’, ’C’, ’Z’,..., ’A’, ’B’, ’C’,...., ’Z’) NUMÉRICOS (‘0’, ’1’, ’2’, ’3’,...,’9’) ESPECIALES (‘+’, ’-’, ’;’, ’-’, ’:’, ’&’, ’$’...) LAS CADENAS (STRING), ENTONCES, SON UN CONJUNTO DE CARACTERES. PARA PODERLAS DISTINGUIR, USUALMENTE SE LAS ENCIERRA EN COMILLAS DOBLES. EJEMPLO: “ES UN RECTÁNGULO”, “ES UN CUADRADO”

19 DATOS LÓGICOS  EXISTEN DATOS QUE SOLO PUEDEN SER FALSOS O VERDADEROS. 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.

20 NUESTRO PRIMER PROGRAMA #include /*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

21 ANÁLISIS DE UN PROGRAMA SENCILLO  SE DESEA ORDENARLE A LA COMPUTADORA QUE MUESTRE UN MENSAJE: HOLA MUNDO, POR EL MONITOR

22 DISEÑO DE FUNCIONES

23

24

25

26

27

28

29

30

31

32 Begin { string nombre; Write(“¿Cuál es tu nombre?”); Read (nombre); Write(“Hola”, nombre, “como estas!”); } End #include 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

33

34 SEGUNDO PROGRAMA. CALCULANDO SE DESEA ORDENARLE AL COMPUTADOR QUE SUME DOS NÚMEROS ENTEROS INGRESADOS POR TECLADO Y MUESTRE EL RESULTADO

35 LA SUMA DE ENTEROS EN C #include 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)

36 LA SUMA DE REALES EN C #include 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);

37

38 VARIABLES EN C++

39

40

41

42

43

44 Escribir un programa en C que lea números enteros indefinidamente hasta que llegue el número 0 #include int main(){ int x; do{ scanf("%i",&x); }while(x!=0); } Escribir un programa que escriba todos los múltiplos de 3 del número 1 al 3000 #include int main(){ for(int i;i

45 Escribir un programa C que lea exactamente 8 números y luego escriba la suma de todos ellos #include int main(){ int x; int suma=0; for(int i=1; i

46 #include int main(){ int x; printf("Escribe el número (sin decimales"); scanf("%i",&x); if(x%2==0) printf("Es par"); else printf("Es impar"); } Crear un programa en C que lea un número e indique si es par o no

47 Modificar el programa anterior para que en lugar de leer 8 números, se puedan leer tantos números como se quiera hasta que llegue un cero. El resultado es la suma de todos los números leídos. #include int main(){ int x; int suma=0; do{ scanf("%i",&x); suma+=x; }while (x!=0); printf ("Suma= %i",suma); }