Parcial#1

  • October 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Parcial#1 as PDF for free.

More details

  • Words: 1,361
  • Pages: 9
UNIVERSIDAD DE PANAMÁ CENTRO REGIONAL DE VERAGUAS FACULTAD DE INFORMÁTICA, ELECTRÓNICA Y COMUNICACIONES LICENCIATURA EN INGENIERIA EN INFORMATICA ESTRUCTURA DE LOS LENGUAJES DE PROGRAMACION

PARCIAL # 1

Presentado por: Efrain Caballero 9-719-1952

Profesor: Diego Santimateo

III Año II Semestre

3 de Septiembre de 2007

Parcial #1 Importancia del estudio de los lenguajes de programación Para concretar la lectura del capítulo 1: El estudio de los lenguajes de programación del libro Lenguajes de Programación de Terrence W. Pratt, proponemos la realización del siguiente ejercicio, el cual debe ser entregado individualmente el 1 de septiembre. Resumen: ¿Por qué estudiar Los Lenguajes de Programación? Para entender el diseño e implementación de los lenguajes: sintaxis - reglas de construcción de los programas  semántica - significado de los programas  implementación - cómo se ejecutan  pragmática - aspectos prácticos de su uso

Para saber qué lenguaje es más apropiado para resolver cierto tipo de problemas: imperativo:

PascaL / C / PHP

 Orientado a Objetos:

SMALLTALK / C++ / JAVA

 Funcional:

Haskell / LISP/ ML

 Lógico:

Prolog / Mercury / Goedel

Para mejorar el conocimiento de los lenguajes que ya utilizamos Para mejorar nuestras técnicas de programación Programar = definir nuevas extensiones de un lenguaje Para saber proyectar nuevos lenguajes Para poder aprender fácilmente nuevos lenguajes

Aspectos a desarrollar en la tarea: 1.Mejora el conocimiento del lenguaje que está usando

El lenguaje más utilizado por ustedes es el C, no obstante, le invitamos a leer sobre expresiones regulares y luego hacer uso del scanf(“% [ ]”) para identificar cuál es la verdadera función del scanf(“% [ ]”). Presente los ejemplos utilizados por usted con sus respectivas observaciones y comentarios. ¿Cuál es el papel de las expresiones regulares en el scanf?(10 ptos) 2.Enriquece su vocabulario de construcciones útiles de programación Elabore un glosario de 10 términos nuevos para usted, que considere de importancia en el área de programación. Seleccione uno y haga un ejemplo. (10 ptos)

3.Permite una mejor selección del lenguaje de programación Determine cual de los siguientes lenguajes recomienda para leer una línea de texto y separarla en palabras: C, Pascal, PHP. Explique, ejemplifique y concluya.(10 ptos)

4.Facilita el diseño de un nuevo lenguaje Analice la estructura de control conocida como GOTO. Identifique lenguajes que la incluyen en su diseño y comente sobre nuevas estructuras de control inspiradas en el uso del GOTO y en qué lenguajes aparecen. Explique, ejemplifique y concluya. (10 ptos)

Mejora el conocimiento del lenguaje que está usando Bueno las expresiones regulares es una forma de representar a los lenguajes regulares (finitos o infinitos) y se construye utilizando caracteres del alfabeto sobre el cual se define el lenguaje. Esta función scanf es una función que e utiliza para leer datos que entran por parte del usuario.

Ahora veremos la función del scanf(“% []”). Esta función scanf(“%[a-z]”,cadena), esta función del scanf esta diciendo todos los parámetros que pueden se aceptados por el scanf. En la función scanf junta con las expresiones regulares se vera todo lo que se puede hacer con el scanf y la expresión regular. Dentro de los corchetes del scanf se meten o se agrupan todos los caracteres que se utilizaran como parámetro en este scanf. Y son muy utiles para encontrar caracteres.

Enriquece su vocabulario de construcciones útiles de programación Glosario de Términos 1. programación estructurada: Es una forma de escribir programación de

ordenador de forma clara, para ello utiliza únicamente tres estructuras: secuencial, selectiva e iterativa; siendo innecesario y no permitiéndose el uso de la instrucción o instrucciones de transferencia incondicional ( GOTO ). 2. Corrutina: Es la estructura del control de subprogramas y es útil en muchos programas pero pocos lenguajes brindan directamente una característica. 3. Lenguaje de alto nivel: se caracterizan por ser más parecidos al lenguaje

y a la lógica humana que otros lenguajes llamados de bajo nivel o simbólicos que se acercan más a la lógica o lenguaje de los ordenadores. 4. implementación: Es un proceso donde se lleva a cabo un proceso. 5. paradigma: Es un modelo o patrón en cualquier disciplina científica u

otro contexto epistemológico. 6. Interprete: Es un programas q se compila y se ejecuta en la computadora. 7. lenguaje de autor: son lenguajes de programación de muy alto nivel y solo son para personas que tiene conocimiento informatico. 8. lenguaje de simulación: s un software de simulación de naturaleza general 9. COBOL: Es un lenguaje común orientado a los negocios y fue

desarrollado en 1959 por un comité de CODASYL 10. lisp: Es el segundo lenguaje de programación, después de Fortran, de

alto nivel. Lisp es de tipo declarativo

Definición de la función: (defun vacia (l) (cond ((null l) 1) ; si la lista esta vacia devuelve 1 (t 0))) ; en otro caso (lista llena) devuelve 0 Llamada a la función: (vacia '(1 3 4)) ; La lista no esta vacia, devolvería 0 (vacia '()) ; La lista esta vacia, devolvería 1 ******************************************************************* (defun último (lista) (cond( (null (cdr lista)) (car lista)) (t (último (cdr lista))))) (último '(1 2 3 4 5 6 7)) ; devuelve el último de la lista: 7 ******************************************************************* ; ---FACTORIAL---;Definición matemática ; Factorial(x) = 1 si x=0 caso base ; x*factorial(x-1) si x>0 caso recursivo ;Función factorial hecha con recursividad no final (defun factorial (n) (if (= 0 n) 1 ; caso base (* n (factorial (- n 1))) ; caso recursivo ) ) (factorial 4)

;esto nos devolvería 24=4*3*2*1

Permite una mejor selección del lenguaje de programación Bueno para mi los dos muy buenos para leer líneas de texto separarla en palabras. Porque C como PHP los dos manejan muy bien lo que es las cadenas, ya que lo que los hacen diferentes es la forma de cómo declaran las cada cadenas porque C utilizaría un arreglo para almacenar las cadenas. También son muy parecidos en su forma en su sintaxis ya que PHP es derivado de C por eso yo creo que los dos son muy buenos para el manejo de cadenas o en nuestro caso leer una línea de texto y separarla en palabras.

Un ejemplo de leer una linea de texto en PHP

Ejemplo de PHP "; $palabras=split(" ","Esto es una prueba"); for($i=0;$palabras[$i];$i++) echo $palabras[$i],"
"; $resultado=sprintf("8x5 = %d
",8*5); echo $resultado,"
"; echo substr("Devuelve una subcadena de otra",9,3),"

"; if (chop("Cadena \n\n ") == "Cadena") echo "Iguales

"; echo strpos("Busca la palabra dentro de la frase", "palabra"),"

"; echo str_replace("verde","rojo","Un pez de color verde, como verde es la hierba."),"
"; ?>

Facilita el diseño de un nuevo lenguaje Es una sentencia o instrucción muy común en los lenguajes de programación con el objetivo de controlar el flujo del programa. El efecto de su versión más simple es transferir sin condiciones la ejecución del programa a la etiqueta o número de línea especificada. Es una de las operaciones más primitivas para transpasar el control de una parte del programa a otra; tal es así que muchos compiladores traducen algunas sentencias de control como GOTO. La instrucción goto transfiere el control del programa directamente a una instrucción identificada por una etiqueta. Uno de los primeros lenguajes de alto nivel que lo incluyeron fue el FORTRAN, También se lo encuentra en: Algol, COBOL, SNOBOL, BASIC,

Lisp, C, C++, Pascal y Perl entre otros, especialmente el lenguaje ensamblador. Se pueden encontrar también variaciones de la sentencia GOTO. En BASIC, la sentencia ON GOTO puede seleccionar de una lista de diferentes puntos del programa a los que saltar. Podría ser interpretado como un antecesor de la sentencia switch/case. También, en FORTRAN y algunas versiones de BASIC la línea a la que saltar podía ser indicada mediante una expresión aritmética. // statements_goto_switch.cs using System; class SwitchTest { static void Main() { Console.WriteLine("Coffee sizes: 1=Small 2=Medium 3=Large"); Console.Write("Please enter your selection: "); string s = Console.ReadLine(); int n = int.Parse(s); int cost = 0; switch (n) { case 1: cost += 25; break; case 2: cost += 25; goto case 1; case 3: cost += 50; goto case 1; default: Console.WriteLine("Invalid selection."); break; } if (cost != 0) { Console.WriteLine("Please insert {0} cents.", cost); } Console.WriteLine("Thank you for your business."); }}

Related Documents

Parcial1
April 2020 5
Parcial1
November 2019 9
Parcial1
October 2019 14
Parcial1
November 2019 13
Parcial1.pdf
December 2019 17
Parcial1.docx
November 2019 13