Introducción a la programación con RAPTOR
El RAPTOR Lenguaje de Programación
Raptor es un lenguaje de programación visual basada en
diagramas de flujo . Diagramas de flujo se han desarrollado como
una ayuda de diseño para el desarrollo de programas ; Sin embargo ,
con RAPTOR son un lenguaje de programación en sí mismos como
los diagramas de flujo que se desarrollan pueden ser ejecutadas por
el entorno de desarrollo RAPTOR .
Utilizamos RAPTOR en CS110 por varias razones . En primer lugar ,
el idioma RAPTOR tiene sintaxis mínima ( gramática ), en
comparación con otros lenguajes de programación . Esto hace que
los programas Raptor fácil de escribir , ya que hay un menor número
de elementos del lenguaje que usted tiene que aprender a ser
productivo . En segundo lugar el idioma RAPTOR es visual ;
Programas RAPTOR son diagramas (gráficos dirigidos ) . Uno de los
aspectos más difíciles de la programación de entender y hacerlo
bien es el flujo de control de las declaraciones en su programa. La
naturaleza visual del flujo de control en programas RAPTOR hace
más fáciles de entender y de programas. En tercer lugar , se
desarrolló el lenguaje de programación y entorno de desarrollo .
Hemos tratado de hacer que el entorno de desarrollo fácil de usar y
los mensajes de error que RAPTOR muestra a usted fácil de
entender . Estamos constantemente tratando de mejorar RAPTOR ,
así que si usted tiene alguna sugerencia por favor díganos . En
cuarto lugar, nuestro propósito no es enseñar cómo programar en
un lenguaje particular. Queremos enseñarte cómo diseñar y ejecutar
los algoritmos para resolver problemas , y para implementar
algoritmos utilizando herramientas de resolución de problemas
basado en computadora . Estos objetivos no requieren de un
lenguaje de programación comercial - peso pesado, como C o Java +
+ .
¿Qué vas a estar perdiendo utilizando RAPTOR en lugar de algún
otro lenguaje de programación más convencional? En primer lugar,
se perderá el uso de un entorno de desarrollo complejo que ha sido
diseñado para ser útil a los desarrolladores de software
D-1
profesionales, pero es muy difícil de usar en un entorno educativo
por los programadores noveles. En segundo lugar, se perderá la
programación en un gran complejo lenguaje de programación con
sintaxis compleja y la semántica. En tercer lugar, usted no verá los
mensajes de error críptico que describen la multitud de errores de
sintaxis que puede cometer durante la programación en el lenguaje
de programación compleja utilizando el entorno de programación
compleja.
Estructura del programa RAPTOR
Un programa RAPTOR es un sistema grafico dirigido. Cuando se ejecuta un
programa, usted comienza en el símbolo de inicio en la parte superior y siga
las flechas para ejecutar el programa. Programas Raptor terminan con el
símbolo End . El programa RAPTOR más pequeño (que no hace nada) se
representa a la derecha. Colocando declaraciones RAPTOR adicionales entre el inicio y
símbolos End crear programas RAPTOR más significativas.
Variables RAPTOR
Las variables son posiciones de memoria que tienen un valor . En cualquier momento
dado una variable sólo puede contener un único valor de un tipo particular de datos,
sin embargo , ya que el programa se ejecuta , el valor de datos almacenado en la
variable puede cambiar. Ellos se llaman variables porque los datos almacenados por
ellos pueden variar como se ejecuta el programa .
Variables RAPTOR
Las variables son posiciones de memoria que tienen un valor . En cualquier momento
dado una variable sólo puede contener un único valor de un tipo particular de datos,
sin embargo , ya que el programa se ejecuta , el valor de datos
almacenado en la variable puede cambiar. Ellos se llaman variables
porque los datos almacenados por ellos pueden variar como se
ejecuta el programa .
Como ejemplo, la declaración RAPTOR X 32 asigna ← el valor de datos
32 a la variable X. Si esta declaración es seguida por la declaración X
← X + 1 el valor de 32 se recupera de X , el valor 1 se añade a la
D-2
misma, y el resultado ( 33 ) se almacena de nuevo en la variable X reemplazando el
valor que anteriormente se almacena allí . Por lo tanto , en el programa de la derecha,
la variable X inicialmente no tenía ningún valor , entonces se le asigna el valor 32 ,
entonces se le asigna el valor 33 , y, finalmente, se le asigna el valor 66 Si usted está
leyendo esto en línea (y tiene RAPTOR instalado ) se puede ejecutar el programa
haciendo doble - click aquí: valor de la variable cambia con el tiempo Example.rap .
Puede desplazarse por el programa y ver el valor de cambio de la variable X haciendo
clic en el botón.
Una variable se utiliza normalmente para mantener un valor
que no se conoce antes de que el programa se pone en marcha .
Este valor se puede leer desde el usuario , o podría calcularse a
partir de otros valores , y así el valor exacto que se almacena en
la variable puede variar cada vez que se ejecuta el programa
( otra razón por la que se llama una variable) .
Las variables son uno de los conceptos de programación más
importantes como todo el código implica el procesamiento de
datos que se almacenan en las variables . Es variables y sus
valores de datos cambiantes , que permiten a los mismos
programas para actuar de manera diferente cada vez que se
ejecuta y para resolver diferentes versiones de un mismo
problema . El programa de la izquierda obtiene un valor por
parte del usuario , el número variable puede tener un valor
diferente cada vez que se ejecuta el programa . Valor de variable diferente
example.rap cada vez que el programa se ejecuta
Un instructor menudo pedir a un estudiante que decirles el valor de una variable. Lo
que están pidiendo es el valor que se asigna a esa última variable o se lee en esa
variable en un momento determinado durante la ejecución del programa. La primera
asignación de un valor a una variable se llama inicialización de una variable . Las
variables no tienen automáticamente los valores . Si intenta utilizar el valor de una
variable antes de que se le ha dado uno , le espera un error en tiempo de ejecución
como la siguiente.
Todas las variables se debe dar nombres significativos por el programador . Los
nombres que se utilizan para las variables deben ser fáciles de entender y relacionarse
con el propósito de la variable sirve en su programa. Recuerde, un nombre de variable
D-3
debe comenzar con una letra y puede contener letras , números y guiones bajos (pero
sin espacios ni otros caracteres especiales ) .
Una manera de entender el propósito de variables es pensar en ellos como un medio
para comunicar información entre una parte de un programa y otro . Al utilizar el
mismo nombre de variable en diferentes partes de su programa que está utilizando el
valor que se almacena en ese lugar en diferentes partes de su programa. Piense en la
variable como un lugar titular o área de almacenamiento para valores entre su uso en
los cálculos . La mayor parte de lo que hace un programa es colocar los valores en
variables y recuperar los valores de las variables . Cuando se obtiene información del
usuario de un programa , que la información debe ser almacenada en una variable
para que usted lo utilice después. Al realizar un cálculo matemático a través de una
sentencia de asignación , el valor resultante se almacena en una variable para su uso
posterior .
Muchos programas se basan en la obtención de datos , el procesamiento de los datos , y
la visualización de los resultados de su procesamiento . Todo esto no se puede hacer
sin variables. Por ejemplo , primero se obtiene los datos del usuario y almacenar esos
datos en variables. En segundo lugar, llevar a cabo algún tipo de cálculo utilizando las
variables (y los datos introducidos y almacenados en ellos ) y luego almacenar los
resultados en todavía más variables . Por último , se muestra los resultados de sus
cálculos al usuario mostrando los valores calculados que estaban almacenados en
variables.
Variable
Una variable es un soporte de valor . El valor de una variable puede
cambiar durante la ejecución del programa. Físicamente , las variables
son posiciones de memoria que tienen un valor . El uso de un
identificador de variable ( su nombre ) en una instrucción permite que
los datos pueden recuperar de , o almacenados en esa ubicación de
memoria . Todas las variables comienzan con una letra y pueden
contener letras adicionales , números y guiones bajos .
A diferencia de la mayoría de los lenguajes de programación , las variables RAPTOR no
se declaran en una sección separada del programa . En cambio , las variables RAPTOR
se definen en su primer uso . Todas las variables RAPTOR son de tipo " Número" o "
String" , lo que significa que podría ser un número entero , como 12 , 567, -342 , etc , un
número de punto flotante como -12.4 , 3.14159 , 0.000369 , etc , o una cadena valor
como " Hola ¿cómo estás ? " , " James Bond " , " Mujer " , etc
Como variables no se declaran de antemano , puede ser fácil olvidar que las variables
que está utilizando y que escribe mal el nombre de una variable. Cualquiera de estos
problemas pueden conducir a su programa no funciona como te gustaría que lo haga.
Por ejemplo , las variables promedio y media son dos variables diferentes como sus
nombres son diferentes . Sobre la base de sus nombres , ambas variables
probablemente almacenan el promedio de algo. Sin embargo , el entorno de desarrollo
RAPTOR no puede leer su mente y determinar si media y media deben ser la misma
D-4
variable por lo que los trata como diferentes variables. Le corresponde a usted, el
programador, utilizar siempre el mismo nombre para una variable en todos sus usos
en su programa.
Declaraciones RAPTOR
RAPTOR tiene 6 afirmaciones básicas: entrada, salida , asignación ,
llamada , selección , y Loop . Cada uno de estos estados se indica
mediante un símbolo diferente en RAPTOR como se muestra a la
derecha .
Las declaraciones de selección y Loop también se llaman
declaraciones estructura de control . Son declaraciones de control
debido a que controlan cómo se ejecuta el programa . Son
declaraciones estructuradas , ya que pueden incluir otras
declaraciones .
El programa RAPTOR
de la izquierda
contiene ejemplos de
algunos de los estados
básicos 6 . El
comentario explica lo
que hace el programa.
Observe cómo la
sentencia de bucle
controla el flujo de
ejecución y encierra
otras declaraciones .
Aquellos de ustedes
que han leído el libro
de Douglas Adam , La Guía del
autoestopista galáctico
entenderá la referencia .
D-5
El programa RAPTOR a la derecha contiene ejemplos de los enunciados básicos
restantes .
El comentario explica lo que hace el programa. Observe cómo la sentencia de control
de selección encierra otras declaraciones y que se ejecutará sólo una de las
declaraciones .
Declaració
no
Instrucción
Una instrucción de lenguaje de programación para la computadora .
Una sentencia ejecutable que provoca una acción específica que se
producen cuando se ejecuta el programa .
La asignación , llamada , de entrada , y las declaraciones de salida se describen a
continuación . Una lectura separada se describen las declaraciones de la estructura de
control de selección y Loop .
Declaración de Asignación
Programación implica a
menudo el uso de fórmulas
para calcular algún valor. La instrucción de
asignación se utiliza para realizar un cálculo y
luego almacenar los resultados en una variable. El
valor almacenado en la variable puede entonces ser
recuperado y utilizado en un comunicado más tarde
en el programa.
El cuadro de diálogo de la derecha se utiliza para
introducir tanto el nombre de la variable que se le
asigne y el cálculo que será evaluada y cuyo
resultado se le asignará a la variable .
Syntax for an assignment statement
<Variable> ← <Expression> or Set <Variable> to <Expression>
Un ejemplo de declaración de asignación es :
Cost ← (Tax_Rate * Non_Food_Total) + Food_Total
D-6
Asignación de símbolos
Siendo variable asignada
Expresión que se evalúa y se
asigna en tiempo de ejecución
Expression
Cualquier secuencia de literales , variables, operadores , etc, que ,
durante el tiempo de ejecución, pueden ser evaluadas para producir un
solo valor . Ese valor se refiere como el resultado de la expresión.
La semántica para una sentencia de asignación son :
§ Evaluar la expresión en el lado derecho del operador de asignación .
§ Tomar el valor que se calcula y se lo coloca en la posición de memoria asociado a la
variable , reemplazando cualquier valor de datos se había almacenado allí
anteriormente .
Asignació
n
Una sentencia de asignación se utiliza para modificar o reemplazar los
datos almacenados en la ubicación de la memoria asociado a una
variable .
D-7
Construido en Operadores y Funciones
Un operador o función dirige el equipo para realizar algún cálculo sobre los datos . Los
operadores se colocan entre los datos que están siendo intervenidos ( es decir, X / 3, Y
+ 7 , etc ), mientras que las funciones utilizan paréntesis para indicar los datos que
están operando en ( es decir, sqrt ( 4.7) , sin ( 2.9 ) ) . Cuando se ejecuta, operadores y
funciones realizan sus cálculos y devuelven su resultado. RAPTOR tiene los siguientes
operadores y funciones incorporadas.
Matemáticas básicas: +, -, *, /, ^, **, rem, mod, sqrt, log, abs, ceiling, floor
Trigonometría: sin, cos, tan, cot, arcsin, arcos, arctan, arccot
Relacional: =, !=, /=, <, >, >=, <=
Lógica: and, or, not
Varios: random, Length_of
Los operadores y funciones matemáticas básicas incluyen lo familiar ( + , - , * , / ), así
como algunos que no están familiarizados .
** Y ^ son exponenciación , ex 2 ** 4 es 16 , 3 ^ 2 es 9
rem ( resto ) y mod (módulo) devolver el resto ( lo que sobra ) cuando el
operando de la derecha divide el operando de la izquierda , ex 10 rem 3
es 1 , 10 mod 3 es 1 también
sqrt devuelve la raíz cuadrada , ex sqrt ( 4 ) es 2
log Devuelve el logaritmo natural, ex log (e ) es 1
abs devuelve el valor absoluto , ex abs (-9 ) es 9
ceiling redondea a un número entero , ex techo ( 3.14159 ) es 4
floor redondea a un número entero, ex floor(10/3) is 3
+ es también funciona como una operación de concatenación para unir dos
cuerdas o una cadena y un número, ex " El promedio de " + (Total /
Número )
Length_Of devuelve el número de caracteres en una variable de cadena
(también el número de elementos de una matriz que usted aprenderá
más adelante ) , ex Nombre " Stuff ", seguido de Length_← Of ( Nombre ) es
5
Usted debe estar familiarizado con las funciones trigonométricas (sin, cos, tan, cot,
arcsin, arcos, arctan, arccot). Trabajan en ángulos cuyas unidades son radianes . ( es
decir, debe convertir de grados a radianes antes de utilizar estas funciones . ) . El
arctan y arccot son las dos versiones de los parámetros de estas funciones. (es decir,
arctan ( X / Y) está escrito en RAPTOR como arctan (X , Y) ) .
En RAPTOR , los operadores relacionales y operadores lógicos sólo se pueden utilizar
en las decisiones como parte de los estados de selección y Loop , que se analizan con
más detalle en la siguiente lectura . Los operadores relacionales son = , ! = ( No igual
a ) , / = ( no igual a ) , < , > , > = y < = . Los operadores relacionales devuelven un valor "
booleano " verdadero o falso ( sí o no) . Por ejemplo , la operación X <Y volvería cierto
si el valor almacenado en la variable X es menor que el valor almacenado en la
D-8
variable Y. En caso contrario se devuelve false . Los resultados de una operación
relacional pueden ser utilizadas por operadores lógicos .
Los operadores lógicos se definen por las siguientes tablas. Los operandos utilizados
por los operadores lógicos deben ser valores " booleanos" ( es decir, los valores
devueltos por los operadores relacionales y operadores lógicos) .
Expression Resul
t
True and True True
True and False False
False and True False
False and False False
Expression Resul
t
True or True True
True or False True
False or True True
False or False False
Expression Result
not (True) False
not (False) True
D-9
La función devuelve un número aleatorio entre 0 y 1 , ex X aleatoria ← podría ser 0,
0.23 , 0.46578 , etc Si usted necesita un número aleatorio en un rango diferente,
entonces usted puede combinar la función aleatoria con otras operaciones.
Construido en Constantes
Las constantes son variables predefinidas cuyos valores no se pueden cambiar .
RAPTOR tiene las siguientes constantes incorporadas.constants: pi, e, true,
false, yes, no
pi se define como 3.14159274101257.
e se define como 2.71828174591064.
True and Yes se define como 1.
False and No se define como be 0.
Las constantes True, False, Yes, and No son utilizados por el sistema de ejecución de
RAPTOR para determinar los resultados de una decisión.
Declaraciones de Llamada de Procedimiento
Ustedes han oído que un piloto sigue en despegue y
aterrizaje procedimientos , un mecánico de automóviles sigue un procedimiento para
cambiar el aceite o reemplazar su transmisión, y es probable que tenga un
procedimiento para brillar sus zapatos . Sigo el procedimiento de cambio de aceite a
mí mismo , pero me da un mecánico de coche para hacer el procedimiento de
transmisión reemplazar para mí cuando eso se convierte en necesario. Típicamente,
un procedimiento tiene algo que está actuando sobre , al igual que la transmisión y el
coche específico. Del mismo modo , un procedimiento llamado a menudo se debe
suministrar los datos , y es a menudo devuelve datos . En esta clase sólo se le llama
procedimientos , no la creación de procedimientos .
Un procedimiento es una colección con nombre de instrucciones de programación que
desempeñan una tarea . Llamar a un procedimiento suspende la ejecución de su
programa, ejecuta los pasos asociados con el procedimiento llamado , y luego vuelve
atrás y comienza a ejecutar el programa de nuevo . Usted no tiene que ver las
instrucciones o incluso saber lo que son , a fin de utilizar un procedimiento ; sólo tienes
que saber lo que hará el procedimiento para utilizarlo correctamente .
Para utilizar un procedimiento existente , debe llamar al invocar su nombre y
dotándolo de los datos que necesita. Usted puede llamar a un procedimiento muchas
veces enviarlo datos diferentes cada vez. Del mismo modo , un mecánico de
automóviles puede conocer el procedimiento para sustituir una transmisión ( o podría
ser escrito en un libro ) y podría ejecutar este procedimiento en muchos coches
diferentes y transmisiones reconstruidas . De esta manera usted puede hablar y
D-10
razonar sobre el procedimiento por separado del elemento específico ( ya sea una
transmisión específica o una parte específica de datos) un procedimiento está
actuando sobre .
El sorteo Ejemplo (hace varias páginas ) contenía 3 ejemplos de llamadas a
procedimientos que se repiten a continuación. El primero abre una ventana gráfica
que es de 100 píxeles de ancho por 100 píxeles de alto . El segundo dibuja un círculo
centrado en el píxel 50 , 50 con un radio de 25 píxeles. El último dibuja una caja que
tiene una esquina inferior izquierda en el píxel 25 , 25 y una esquina superior derecha
en el píxel 75 , 75 Tanto el círculo y el cuadrado son de color negro y ambos están
llenos . Al cambiar cualquiera de los datos que se pasa en el procedimiento , cambia lo
que hace el procedimiento.
Construido en el Procedimiento
El delay_for procedimiento se detiene la ejecución del programa para el número de
segundos especificados. delay_for no es una función o una operación y no puede ser
utilizado en una instrucción de asignación. En su lugar, se debe utilizar en una
llamada. Ex, delay_for(0.5) operación retrasada durante
medio segundo .
declaraciones de entrada
Cada lenguaje de programación tiene declaraciones que permiten al programa para
obtener información del usuario del programa a través del teclado y que puede
mostrar información sobre el terminal de computadora . Sin tales declaraciones el
usuario no podía escribir instrucciones a la computadora o asignar al equipo
información solicitada . Tampoco pudieron los mensajes de la pantalla del programa
para el usuario , proporcionar resultados para el usuario, o solicitar información al
usuario.
Una declaración de entrada es un tipo especial de procedimiento que obtiene
información del usuario del programa para que el
programa pueda actuar en consecuencia .
En RAPTOR , una declaración de entrada muestra un
aviso para el usuario ( lo que llevó a la entrada de un
valor ) y luego se pone un solo valor y lo almacena en una
variable dada . En RAPTOR , un cuadro de diálogo que
D-11
solicita la confirmación para usar y la variable en la que almacenar los datos
introducidos .
El indicador debe ser lo más explícito posible . Si se desea un valor en unidades
particulares (por ejemplo, una altura en pies o metros ) que menciones las unidades
en el indicador .
Como se puede ver por el cuadro de diálogo "Enter Imput " a la derecha hay dos tipos
de solicitudes de entrada , mensajes de texto y mensajes de Expresión. Un indicador de
Expresión le permite mezclar texto y las variables entre sí como el siguiente mensaje: "
Introduzca un número entre " + low + " y" + high+ " : " .
declaraciones de salida
En RAPTOR , una declaración de salida es un tipo especial de procedimiento que
muestra un valor de la pantalla de salida . Un cuadro de diálogo le pide que identificar
si usted está escribiendo a una expresión o texto (usando un botón de radio ) y si una
nueva línea será la salida ( usando una casilla de verificación ) . Los cuadros de
diálogo muestran diferentes ejemplos en función de si se elige número o texto de salida
( véase más adelante ) .
Cuando la salida de texto , puede colocar espacios adicionales después del texto como
se muestra en el cuadro de diálogo de la izquierda arriba y en el programa RAPTOR a
la derecha arriba. Esto hará que la salida del número que ha de separarse del texto
por un espacio. Cuando la salida de una expresión , puede escribir una expresión
matemática como una variable como se muestra en el cuadro de diálogo en el medio
anteriormente.
Su instructor (o su asignación) también suelen decir " Visualizar los resultados de una
manera fácil de usar " . Lo que significa que su instructor es que usted no sólo debe
D-12
escribir el número de resultados , pero también se debe escribir algún texto explicativo
que explica lo que es el número. En otras palabras , usted debe mostrar al usuario los
datos son ( " El volumen círculo es " ) y , a continuación, mostrar los datos como se hizo
en el código RAPTOR arriba y hacia la derecha.
D-13
Selección y declaraciones Loop
Como se mencionó anteriormente , los estados de selección y de bucle se describen en
una lectura separada.
Los comentarios en RAPTOR
RAPTOR , al igual que muchos otros lenguajes de programación , permite añadir
comentarios a su programa. El único propósito de un comentario es explicar algún
aspecto de un programa . Los comentarios deben informar o añadir información para
el lector , sobre todo en lugares donde el código del programa es complejo y difícil de
entender . Los comentarios no se ejecutan y nada a la computadora significan , pero
puede ser muy informativo para el lector humano.
Comentari
o
Texto explicativo que se escribe para el lector humano del código del
programa . Los comentarios no son instrucciones para la computadora
.
D-14