Вы находитесь на странице: 1из 12

Instituto Tecnolgico de Toluca Ingeniera en Sistemas Computacionales. Programacin de Sistemas. Propuesta de lenguaje.

Integrantes:
Ricardo Maya Iglecias. Isael Mundo lvarez. Jorge Alejandro Mondragn Morales

Propuesta del Lenguaje Nombre: IsMaJo Objetivo: Desarrollo de un lenguaje orientado a objetos con el fin de la reutilizacin de cdigo para un mayor aprovechamiento, usara la metodologa de la programacin orientada a objetos por lo tanto deber permitir
la ejecucin del programa en diversos sistemas operativos.

Alfabeto:

Token 1.- Cadena C

Q1

Q2

Q3
C

2.- Comentario

Q6
/

Q4

Q5
* C * /

Q7

Q8

Q9

3.- Identificador

l/d

Q10
10

Q11

. 4.- Nmero +

Q23
d d . d

Q22
+ d d

Q12
d

Q14
. -

Q15

Q16

Q13

Q21

. 5.- Carcter

Q17

Q18

Q19

Q20

6.- Op. Relacionales

Q25
=

Q26
< =

Q24

= >

Q27

= =

Q29

Q28

Tokens
Palabras reservadas Identificadores Comentarios Operadores Aritmticos Operadores relacionales Operadores lgicos Caracteres especiales Incremento/Decremento

Tabla de errores

package CargaImagen; // @author Ricardo import java.awt.*; public class Frame extends JFrame { JLabel barraEstado,imagen; JPanel im,bar; Container contenedor; JButton abrir; JFileChooser fc; int rgb = 0, x = 0, y = 0, pixel=0, alpha,rojo,verde,azul; public Frame(){ super( "Carga de Imagenes" ); ImageIcon image = new ImageIcon("allison.jpg"); im = new JPanel(); bar = new JPanel(); barraEstado = new JLabel(); imagen = new JLabel(image); im.setBackground(Color.red); im.add(imagen); abrir = new JButton("Cargar Imagen"); abrir.addActionListener(this); contenedor = getContentPane(); bar.add(abrir); contenedor.add(bar, BorderLayout.PAGE_START);

contenedor.add(im, BorderLayout.CENTER); contenedor.add(barraEstado, BorderLayout.PAGE_END); addMouseListener( this ); addMouseMotionListener( this ); setVisible( true ); pack(); } public int getPixel() {return pixel;} public void setPixel(int pixel) {this.pixel = pixel;} public int getX() {return x;} public void setX(int x) {this.x = x;} public int getY() {return y;} public void setY(int y) {this.y = y;} public void actionPerformed(ActionEvent e) { if (e.getSource() == abrir) { JFileChooser fileChooser=new JFileChooser(); FileNameExtensionFilter filter=new FileNameExtensionFilter("jpg","JPG"); fileChooser.setFileFilter(filter); int seleccion=fileChooser.showSaveDialog(fileChooser); if(seleccion==JFileChooser.APPROVE_OPTION){ try { File fichero = fileChooser.getSelectedFile(); ImageIcon icono = new ImageIcon(fichero.getPath()); BufferedImage image = ImageIO.read(fichero); imagen.setIcon(icono); setPixel(image.getRGB(getX(), getY())); pack(); } catch (IOException ex) { } } } } public void mouseClicked( MouseEvent evento){ setX(evento.getX()); setY(evento.getY()-70); alpha = (getPixel() >> 24) & 0xff; rojo = (getPixel() >> 16) & 0xff; verde = (getPixel() >> 8) & 0xff; azul = (getPixel()) & 0xff; barraEstado.setText( "X: " + getX() + "\t Y: " + getY() + " " + "alpha: " + alpha + " R: " + rojo + " G: " + verde + " B: " + azul); } public static void main( String args[] ){ Frame aplicacion = new Frame();

aplicacion.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); } } Palabra Package CargarImagen //@author Ricardo Import Java Awt x y alpha Rojo verde azul Public Class Frame Extends JFrame JLabel BarraEstado Imagen JPanel Im Bar , Container Contenerdor JButton Abrir JFileChooser ( ) [ ] Super Carga de Imagenes ImegenIcon = Allison.jgp setBackground Color Red Token Palabra Reservada Identificador Comentario Palabra Reservada Identificador Identificador Identificador Identificador Identificador Identificador Identificador Identificador Palabra Reservada Palabra Reservada Identificador Palabra Reservada Tipo de Dato Tipo de dato Identificador Identificador Tipo de dato Identificador Identificador Carcter especial Tipo de dato Identificador Tipo de dato Identificador Tipo de dato Separador Separador Separador Separador Palabra reservada Cadena Identificador Carcter de asignacin Cadena Palabra reservada Identificador Identificador

Add addActionListener getContentPane BorderLayout PAGE_STAR CENTER PAGE_END addMouseListener addMouseMotionListener This setVisible Pack Int getPixel Return setPixel getX setX getY setY Void actioPerformed ActionEvent E getSource == JFileChooser fileChooser FileNameExtensionFilter filter getRGB BufferedImage setIcon icono IOException ex mouseClicked Evento "X: " "\t Y: " " " "alpha: " " R: " " G: " " B: " main String

Palabra reservada Palabra reservada Palabra reservada Identificador Palaba reservada Palabra reservada Palabra reservada Palabra reservada Palabra reservada Palabra reservada Palabra reservada Palabra reservada Tipo de dato Identificador Palabra reservada Identificador Identificador Identificador Identificador Identificador Palabra reservada Palabra reservada Palabra reservada Identificador Palabra reservada Operador de igualdad Identificador Identificador Identificador Identificador Tipo de dato Identificador Identificador Palabra reservada Identificador Identificador Identificador Cadena Cadena Cadena Cadena Cadena Cadena Cadena Palabra reservada Tipo de dato

args[] aplicacion setDefaultCloseOperation EXIT_ON_CLOSE { } ; +

Palabra reservada Identificador Palabra reservada Palabra reservada Separador Separador Separador Operador Aritmetico

Matriz de Transicin
L Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12 Q13 Q14 Q15 Q16 Q17 Q18 Q19 Q20 Q21 Q22 Q23 Q24 Q25 Q26 Q27 Q28 Q29 Q2 D Q2 Q2 Q3 / Q2 Q5 Q6 Q6 Q7 Q9 * Q2 . Q2 Q2 Q2 C Q2 ret + Q2 = Q2 Q2 < Q2 > Q2

Q6 Q7

Q6 Q7

Q6 Q7

Q7 Q6 Q8

Q6 Q7

Q6 Q7

Q6 Q7

Q6 Q7

Q7

Q6 Q7

Q6 Q7

Q6 Q7

Q6 Q7

Q6 Q7

Q11 Q11

Q11 Q14 Q14 Q14 Q16 Q16

Q15 Q15 Q15

Q13 Q21

Q22

Q18 Q19 Q20

Q15

Q23 Q27 Q29 Q29 Q29 Q29 Q25 Q28 Q26

TABLA DE ERRORES : # de Error 1 2 3 4 5 6 7 8 9 10 Lexema Error Error Error Error Error Identificador CADENA NO VALIDA COMENTARIO NO VALIDO ID NO VALIDO NMERO NO VALIDO O.RELACIONAL NO VALIDO OPERADOR NO VALIDO INCREMENTO NO VALIDO DECREMENTO NO VALIDO ESPERABA COMILLA SENCILLA ESPERABA LETRA

Вам также может понравиться