Anda di halaman 1dari 10

Universidad Central de Venezuela

Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
Laboratorio # 1
Introduccin al Ambiente Linux
Introduccin al Lenguaje de Programacin Java,
Acciones y Tipos de Datos Elementales en Java

PARTE TERICA:
I. Sistema Operativo Linux
Los Sistemas Operativos son los encargados de aportar mecanismos y reglas
bsicas de funcionamiento dentro de los computadores. Esto permite poder ejecutar
diversas tareas o programas de forma correcta y que a la vez puedan acceder a los
recursos sin interferir en el correcto funcionamiento del computador.
En la actualidad existe una gran cantidad de Sistemas Operativos, por ejemplo para los PC
uno de los sistemas operativos ms difundidos es Microsoft Windows, tambin se pueden
encontrar sistemas tales como Solaris, OS/2, BeOS, Microsoft DOS y LINUX.
Conceptos bsicos de:
1. Que es Linux?
2. Distribuciones de Linux.
3. Comandos en Linux.
4. Sintaxis de los comandos bsicos.
5. Algunos comandos bsicos de Linux.
6. Editores de Texto.
7. Permisologa.
Para obtener informacin sobre los conceptos bsicos puede visitar los siguientes
sitios:
1. http://www.wikilearning.com/introduccion-wkccp-4230-1.htm
2. http://es.wikipedia.org/wiki/Linux
3. http://www.aprendelinux.es/que_es_linux.php
4. y por supuesto a travs de buscadores como Google o Yahoo pueden conseguir ms
informacin.

II. Ubuntu
Ubuntu es una distribucin de Linux basado en Debian, enfocado a computadores de
escritorio aunque tambin proporciona soporte para servidores.
Ubuntu concentra su objetivo en la facilidad de uso, la libertad en la restriccin de
uso, los lanzamientos regulares (cada 6 meses) y la facilidad en la instalacin.
Debido a su facilidad de uso, para los laboratorios se recomienda trabajar con la
distribucin Ubuntu 6.10, la cual se puede descargar de http://ubuntu.softonic.com/linux
Tambin pueden conseguir informacin de Ubuntu en http://www.ubuntu-es.org

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
III. Mquina Virtual de Java:
La JVM (Java Virtual Machine) es una mquina abstracta de software que permite
trabajar o interactuar con el microprocesador real del computador, de ah el nombre de
mquina virtual (VM). Los programas desarrollados para la JVM se crean utilizando el
lenguaje de programacin Java. Este lenguaje, como otros lenguajes de algo nivel, tienen
una sintaxis que no est enfocada a un procesador especfico. Como en otros lenguajes de
alto nivel, el cdigo fuente Java se compila utilizando una herramienta de compilacin pero
su salida difiere de la de los compiladores tradicionales.
Las aplicaciones creadas por lenguajes de alto nivel, al contrario de Java, crean un
programa ejecutable para el sistema operativo o microprocesador que hay por debajo. Por
el contrario, Java crea un programa ejecutable diseado para la JVM.
Ya que la JVM es una Mquina Virtual, comparte las mismas caractersticas que los
microprocesadores, respecto a tener registros, pilas, punteros de instrucciones, un juego
de instrucciones, y dems. Este diseo crea una VM (Virtual Machine) que posee las
caractersticas de una mquina hardware real, y como una mquina, la JVM pude ejecutar
programas en su propio lenguaje.
Para poder trabajar con el lenguaje de programacin JAVA en Ubuntu, es
necesario instalar una versin de la Mquina Virtual de Java que se puede descargar del
sitio de Microsoft Sun Microsystem a travs del enlace
https://sdlc2a.sun.com/ECom/EComActionServlet;jsessionid=74DE6F194D49E6456F18D3
0FBC339B35 .
Una vez dentro de este sitio descarga a tu computadora la versin de JRE
etiquetada como Linux self-extracting file.
Descomprime este archivo haciendo doble clic sobre l e indicado en que carpeta se
debe guardar su contenido, por ejemplo, puedes crear una carpeta llamada java en el
directorio /usr con el siguiente comando:
> sudo mkdir /usr/java
Luego de descomprimir el archivo en usr/java ejecuta los siguientes comandos:
> cd /usr/java
> sudo chmod a+x jdk-1_5_0_10-linux-i586.bin
Ejecuta luego el instalador:
> sudo ./jdk-1_5_0_10-linux-i586.bin
Una vez hecho esto, tan slo hay que aceptar la licencia (enter para avanzar y al
final yes). Ahora tendremos una carpeta llamada jdk1.5.0_10 depende de la versin de jdk
existente en cada momento, es posible que cambie el nombre del archivo .bin y de la
carpeta creada al hacer la instalacin, as que deberis comprobar que coincide el nombre
con lo que ponis en la instruccin.

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
IV. Lenguaje de Programacin Java:
Java es un lenguaje de programacin de alto nivel, que fue desarrollado por Sun
Microsystems a principios de los 90. Entre las caractersticas que ofrece este lenguaje se
encuentran:
Es Simple
Es Orientado a Objetos
Es Robusto
Es Seguro
Es Portable
Es Interpretado
Programacin en Java
A continuacin se describe la estructura bsica de un programa en Java, haciendo
analoga con la notacin pseudoformal:
Algoritmo Principal
[Secuencia de Operaciones]
FinAlgoritmo

public class Principal


{
public static void main(String[] args){
[Secuencias de operaciones]
}
}

La primera lnea permite la inclusin de archivos de cabecera que extienden


las funcionalidades del programa.
El cdigo fuente se guarda en un archivo con el mismo nombre que la clase
pblica contenida adems de la extensin .java. En el ejemplo anterior, la
clase se llama Principal, por lo que el cdigo fuente debe guardarse en el
fichero Principal.java.
Comentarios
Los comentarios permiten explicar de forma simple y en lenguaje natural el cdigo,
para que otras personas o el mismo programador entiendan o recuerden de manera sencilla
lo que sucede o se quiere en el programa. Los comentarios son ignorados por el compilador
del lenguaje, ya que estos no son parte de la lgica del cdigo.
Comentarios de mltiples lneas: Este tipo de comentario comienzan con /*
y finalizan con */.
Comentario de una lnea: Este tipo de comentario comienzan con // y
terminan al final de la lnea.
public class Principal{
public static void main(String[] args){
/* Esto es un comentario de varias
lneas de cdigo */
// Esto es un comentario de una sola lnea
}
}

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
Tipos de datos bsicos
Los tipos de datos permiten definir variables que almacenan la informacin
necesaria, asociando dicha informacin a un dominio de valor y operaciones sobre dicho
valor. Java cuenta con los siguientes tipos de datos:
Enteros:
Nombre
byte
short
int
long

Longitud
8 bits 1 byte
16 bits o 2 byte
32 bits o 4 bytes
64 bits o 8 bytes

Rango
-27 a 27-1
-215 a 215-1
-231 a 231-1
-263 a 263-1

Real:
Nombre
float
double

Longitud
32 bits o 4 bytes
64 bits o 8 bytes

Rango
-3.40292347E+38 a +3.40292347E+38
-1.7976931348631570E+308 a
+1.7976931348631570E+308

Caracteres:
Nombre
char

Longitud
8 bits o 1 bytes

Nombre
boolean

Valores
Trae false

Lgicos:

Declaracin de variables
Las variables son porciones de memoria que almacenan un valor y este puede ser
modificado. La declaracin de una variable se lleva a cabo mediante la combinacin de un
identificador, un tipo de dato y si se quiere un valor inicial. Tambin se puede crear una
lista de variables asociadas a un mismo tipo de dato.
Tipo_de_dato nombre_variable;
Tipo_de_dato nombre_variable = valor_inicial;
Tipo_de_dato nombre_variable1 = valor_inicial, nombre_variable2;
Ejemplo:
public class Principal{
public static void main(String[] args){
int a = 0, b, c=1;
float d;
char c = 2;
}
}
Operadores Bsicos en Java

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion

Operacin

Pseudo-formal

Java

Suma

Resta

Multiplicacin

Divisin

Div

div

Mod

mod

Mayor que

>

>

Mayor o igual que

>=

>=

Menor que

<

<

Menor o igual que

<=

<=

Igual que

==

==

Diferente que

!=

Y lgico

&&

O Lgico

||

NO Lgico

NO

Prioridad de los Operadores en Java


Parntesis

()

Multiplicacin/Divisin
Adicin/Sustraccin
Relacionales

*, /, %
+, <>, >=, <=

Igualdad

==, !=

Y Lgico

&&

O Lgico

||

Asignacin

Entrada/Salida
Para escribir en java, se procede de la siguiente manera:

Para mostrar un mensaje:


System.out.println(Hola Mundo);

Para mostrar el valor de una variable:


Tipo_de_dato X;
System.out.println(X);

Para mostrar un mensaje junto al valor de una variable:


Tipo_de_dato X;
System.out.println(El total es: + X);

Para leer de consola, se debe agregar como primera lnea del archivo la instruccin

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
import java.io.*;.
Esta lnea indica que las instrucciones de entrada/salida sern utilizadas.

Leer valor de tipo Caracter:

char caracter = (char) System.in.read();

Leer valor de tipo String:

String linea;
try {

BufferedReader
InputStreamReader(System.in));
linea = bf.readLine();
}catch(Exception e){
e.printStackTrace();
}

new

BufferedReader(new

BufferedReader
bf
=
InputStreamReader(System.in));
entero = Integer.parseInt(bf.readLine());
}catch(Exception e){
e.printStackTrace();
}

new

BufferedReader(new

new

BufferedReader(new

bf

Leer valor de tipo Entero:

int entero;
try {

Leer valor de tipo Real:

float real;
try {

BufferedReader
bf
InputStreamReader(System.in));
real = Float.parseFloat(bf.readLine());
}catch(Exception e){
e.printStackTrace();
}

Compilar un programa:

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
Es indispensable que el Archivo fuente se almacene con la extensin .java
Para compilar un programa en java desde la lnea de comandos, se debe ejecutar la
siguiente sentencia ubicndose en el directorio donde se encuentra almacenado el archivo
fuente (.java).

> javac NombreArchivo.java

Ejecutar un programa:
Para ejecutar un programa desde la lnea de comandos, se debe realizar la siguiente
sentencia ubicndose en el directorio donde se encuentra almacenado el archivo .fuente

> java NombreArchivoEjecutable

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
PARTE PRCTICA:
1.

Inicie su computador en una distribucin de Linux, o en su defecto, instala en


Windows una herramienta que simule el ambiente Linux.

2. Abra la consola de Linux y proceda a introducir los siguientes comandos.

ls el cual lista el contenido del directorio actual. Pruebe ahora con dir o ll.
Y resalte las diferencias entre los tres comandos.

cd [dir] el cual Cambia de directorio especificado por dir.

pwd el cual imprime la ruta del directorio en el que nos encontramos.

sudo el cual ejecuta un comando como usuario raiz ("root"), significa


"super user do"(Super usuario hacer).
chmod permisos fich el cual cambia los permisos de un archivo (fich).
Ejm: > chmod +x miArchivo

cp fich1...fichN dir el cual Copia los archivos especificados en dir.


Ejm: > cp archivo1 archivo2 /

mv fich1 ...fichN dir el cual Mueve los archivos a un directorio.


Ejm > mv archivo.txt directorio1

mv fich1 fich2 el cual Renombra un archivo.


Ejm: > mv archivo.txt archivo2.txt

mkdir dir: el cual crea un directorio.


Ejm: > mkdir directorio1

rm fich el cual Borra un archivo.


Ejm: > rm archivo1

rm -r dir el cual borra todo un directorio.


Ejm: > rm -r directorio1

man comando el cual ayuda sobre el comando.


Ejm: > man pwd

clear el cual borra la pantalla.


Ejm: > clear

less fich el cual muestra el contenido de un fichero.


Ejm: > less hola.txt

touch fich el cual crea un archivo vacio llamado fich.


Ejm: > touch hola.cpp

passwd el cual cambia la contrasea.

vi fich el cual edita un archivo.

ifconfig el cual permite configurar una interfase de Red y ver el "status"


de sta.

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
3. Navegue por los directorios para as familiarizarse con los mismos.
4. Cree un archivo y edtelo usando el editor vi para ello tome en cuenta los siguientes
comandos:

Presione a o i para entrar en el modo edicin.

Presione la tecla esc para volver al modo comando.

En el modo comando puede utilizar las siguientes instrucciones:

Inserta una linea en blanco debajo de la actual.

u Deshacer la ltima opcin. Cabe destacar que en vi, a diferencia de otros


editores se pueden deshacer infinitos cambios, ya que esta opcin no tiene
lmite.

Control + r Rehace la ltima accin deshecha con "u".

:w Guardar.

:w! Fuerza a guardar (Recomiendo, personalmente, a usar siempre esta


opcin en lugar de :w).

:q Salir.

:q! Fuerza a salir sin guardar.

:x Guardar y salir.

:e tufichero Abre tufichero.

:dd Elimina la linea sobre la que est el cursor.

/cadena Busca 'cadena' en el texto sobre el que trabajamos.

:%s/cadena/nueva_cadena Se usa para sustituir 'cadena' por


'nueva_cadena' en el texto (muy til).

:r tufichero Volcar el contenido de tufichero sobre la posicin actual del


cursor.

!comando Insertar la salida de un comando ejecutado. Por ejemplo si


hacemos !ls insertar la salida de ls en nuestro fichero.

. (S, es un punto). Repetir el ltimo comando usado.


5. Dado los valores previos de las variables, realice un programa en Java que le
permita evaluar las siguientes expresiones e imprima por pantalla su resultado:
Valores Previos:
Entero d = 10;
Entero h = 15;
Entero j = 25;
Lgico p = verdadero;
Lgico q = falso;
Lgico r = false;
Operaciones:

(d * 5) % j + h;
(d mod h) + h;
p y (q o (no(r) o p))
(d + 15 == j) o (j 10 * 2 == d * 3)
(q y r) o (no(p) y q)
no(no(p o q) y (nop y noq)

Universidad Central de Venezuela


Facultad de Ciencias
Escuela de Computacin - ALGORITMOS Y PROGRAMACIN

www.ciens.ucv.ve/algoritmosyprogramacion
6. Dado un valor entero, suministrado por teclado, realizar las siguientes
conversiones:
Entero
654321
13578
123
654789

Conversin
123456
85317
312
765894

GDAyP Marzo 2008

10

Anda mungkin juga menyukai