domingo, 24 de noviembre de 2013

We have made a first foray into Java but it is essential we continue talking about fundamental concepts of OOP: objects and classes. These terms seem familiar resultarnos.
 
In daily life we can think of objects as an apple or a book and we can distinguish kinds of things such kinds of plants . However, the term programming and the term object class does not keep an exact correlation with the meaning of these words in everyday life . We can find some similarities and even make didactic analogies. But always try to find equivalences between objects and classes in programming classes and objects of daily life because that exact match does not exist and will lead to confusion. When writing a program in an object-oriented language we try to model a real-world problem thinking of objects that are part of the problem and are interrelated . We now give a first definition of object and class, we have to go as we move into the qualifying course .

RE: existing entity in the computer memory that has properties ( attributes or data itself stored by the object) and a specific available operations ( methods).

Class: abstraction that defines a type of object specifying which properties ( attributes) and operations will be available .


superclass            clases                     object


                                                    Taxi enrollment  PLO-6589
vehicle     {   taxi       {      Taxi enrollment  MDE-8576
                                                    Taxi enrollment   FRS-4692



In this example we have considered the problem consists of three vehicle types : taxi, bus and tram , and those guys call them classes. What would we do in Java to define a class ? Display its properties and operations ( methods) available, for example :

Class Taxi {

properties:

identifying Registration

District in which it operates

Type diesel or gasoline engine

Coordinates at which is located

 Available operations :

                                                Assign an enrollment

                                                Assign a district

                                                Assign an engine type

                                                Locate on coordinates

}


Having thus defined the cab mean that every object type Taxi we believe will have an identification plate , a district in which it operates , a type of motor and coordinates in which it is located. The creation of an object would be something like : "Creating an object with tuition Taxi BFG- 7452 , North district , type of Diesel engine and coordinates Unknown . "

The use of an operation on an object would be something like : "Taxi BFG- 7452 -> Locate coordinates (X = 128223 , Y = 877533 ) " . The operations are called methods in Java , see how they are defined below.

We say that an object is an instance of a class . For example the taxi registration BFG- 7452 is an instance of the class Taxi . Several objects (eg taxis) of the same class say are multiple instances of the class . We shall see that both a class and an object in Java can represent things other than what we have now explained, but all in good time .


Hemos realizado una primera incursión en Java pero para proseguir se nos hace indispensable hablar de conceptos fundamentales de la programación orientada a objetos: objetos y clases. Estos términos parecen resultarnos familiares


En la vida diaria podemos pensar en objetos como una manzana o un libro y podemos distinguir clases de cosas: por ejemplo clases de plantas. Sin embargo, en programación el término objeto y el término clase no guardan una correlación exacta con el significado de estas palabras en la vida diaria. Podemos buscar ciertas similitudes e incluso hacer analogías didácticas. Pero no trates de buscar siempre equivalencias entre objetos y clases en programación con objetos y clases de la vida diaria porque esa correspondencia exacta no existe y te llevará a confusión. Al escribir un programa en un lenguaje orientado a objetos tratamos de modelar un problema del mundo real pensando en objetos que forman parte del problema y que se relacionan entre sí. Daremos ahora una primera definición de objeto y clase, que tendremos que ir matizando conforme avancemos en el curso.

Objeto: entidad existente en la memoria del ordenador que tiene unas propiedades (atributos o datos sobre sí mismo almacenados por el objeto) y unas operaciones disponibles específicas (métodos).

Clase: abstracción que define un tipo de objeto especificando qué propiedades (atributos) y operaciones disponibles va a tener.

 


En este ejemplo hemos considerado que el problema consta de tres tipos de vehículo: taxi, autobús y tranvía, y que esos tipos los denominamos clases. ¿Qué haríamos en Java para definir una clase? Indicar sus propiedades y operaciones (métodos) disponibles, por ejemplo:

Clase Taxi {
Propiedades:
Matrícula identificativa
Distrito en el que opera
Tipo de motor diesel o gasolina
Coordenadas en las que se ubica
 Operaciones disponibles:
                                                Asignar una matrícula
                                                Asignar un distrito
                                                Asignar un tipo de motor
                                                Ubicar en unas coordenadas
}


El haber definido así el taxi significará que todo objeto de tipo Taxi que creemos tendrá una matrícula identificativa, un distrito en el que opera, un tipo de motor y unas coordenadas en las que se ubica. La creación de un objeto sería algo así como: “Crear un objeto Taxi con matrícula BFG-7452, distrito Norte, tipo de motor Diesel y coordenadas Desconocidas.”

El uso de una operación sobre un objeto sería algo así como: “Taxi BFG-7452 --> Ubicar en coordenadas (X = 128223, Y = 877533)”. Las operaciones en Java se denominan métodos, veremos cómo se definen más adelante.

Decimos que un objeto es una instancia de una clase. Por ejemplo el taxi matrícula BFG-7452 es una instancia de la clase Taxi. Varios objetos (p.ej. taxis) de una misma clase decimos que constituyen instancias múltiples de la clase. Más adelante veremos que tanto una clase como un objeto en Java pueden representar otras cosas además de lo que ahora hemos explicado, pero todo a su tiempo.

viernes, 22 de noviembre de 2013

Separators in Java


Java has 6 types of separators, these are:

[] Brackets: Used to declare these arrangements and values​​.

  {} Braces: Used to define a block of code and create an array with initial values.

() Parentheses: Used to call methods, define the origin of some expression, establish conditions under control structures, among other functions.

  ; The semicolon: Used to chain statements inside a for loop and separate simple sentences.

  , Comma: is used to separate variables in the declaration of the same type

  . The point: It is used to remove a variable or method of a reference variable

Los separadores en Java

Java posee 6 tipos de separadores, estos son:
[] Los corchetes: Se utilizan para declarar arreglos y valores de éstos.

 {} Las llaves: Se utilizan para definir un bloque de código y crear un arreglo con sus valores iniciales.

() Los paréntesis: Se utilizan para llamar métodos, definir la procedencia de alguna expresión, establecer condiciones en las estructuras de control, entre otras funciones.

 ; El punto y coma: Se utiliza para encadenar sentencias dentro de un ciclo for y separar sentencias simples.

 , La coma: Se utiliza para separar variables en la declaración de un mismo tipo

 . El punto: Se utiliza para separar una variable o método de una variable de referencia

Comments on Java


Comments in java programs serve to explain the lines of code, these comments are "invisible" to the compiler and therefore do not affect the program.

Comments to a single line of text: To use this type of comment should be placed a double slash (/ /) at the beginning of the line.

Review of one or more lines: To use this type of comment should place a + slash asterisk (/ *) at the beginning of the first line of text and an asterisk + slash (* /) at the end of the last line of text.

Comentarios en Java

Los comentarios en programas java sirven para explicar las lineas de código, éstos comentarios son "invisibles" para el compilador y por ende no influyen en el programa.
Comentario para una sola linea de texto: Para utilizar este tipo de comentario se debe colocar un doble slash (//) al principio de la linea.

Comentario de una o más lineas: Para utilizar este tipo de comentario se debe colocar un slash+asterisco (/*) al principio de la primera linea de texto y un asterisco+slash (*/) al final de la última linea de texto.

miércoles, 20 de noviembre de 2013

pseudocode

It is a specification language algorithms. The use of such language makes final encoding step (ie , the translation to a programming language ) relatively easy.
The pseudocode born as a language similar to natural language and was a basically represent mediopara control structures structured programming. A first draft is considered , since the pseudo must subsequently translated to a programming language .
The advantage of pseudocode is that in use in the planning of a program , the programmer can concentrate on the logic and control structures and not worry about the rules of a specific language . It is also easy to modify the pseudocode if you discover errors or anomalies in the logic of the program, besides all this is easy translation into languages ​​such as Pascal , C or Basic.
The pseudocode used to represent successive actions reserved words ( similar to their counterparts in programming languages ​​) , such as start, end , if - then-else , while , repeat - until .... etc.
sequence
initiation

    
action1

    
share2

    
.

    
.

    
.

    
action n
end
decision
simple
if condition then

    
action1

    
share2

    
.

    
.

    
.

    
action n
double
if condition then

    
action1

    
share2

    
.

    
.

    
.
otherwise

    
action1

    
share2
iteration
fixed
for var. Initial whole until the end do

    
action1

    
share2

    
.

    
.

    
.

    
action n
Conditional to top
while condition do

    
action1

    
share2

    
.

    
.

    
.

    
action n
Conditional end
repeat

    
action1

    
share2

    
.

    
.

    
.

    
action n
Until condition
selection
selector cases

    
value1 : action1

    
share2

    

    
value2 : action1

    
share2

    
...

    
value n : action1

    
share2

PSEUDOCODIGO



Es un lenguaje de especificación de algoritmos. El uso de tal lenguaje hace el paso de codificación final (esto es, la traducción a un lenguaje de programación) relativamente fácil.
El pseudocódigo nació como un lenguaje similar al lenguaje natural y era un mediopara representar básicamente las estructuras de control de programación estructurada. Se considera un primer borrador, dado que el pseudocódigo tiene que traducirse posteriormente a un lenguaje de programación.
La ventaja del pseudocódigo es que en su uso en la planificación de un programa, el programador se puede concentrar en la lógica y en las estructuras de control y no preocuparse de las reglas de un lenguaje específico. Es también fácil modificar el pseudocódigo si se descubren errores o anomalías en la lógica del programa, además de todo esto es fácil su traducción a lenguajes como Pascal, C o Basic.
El pseudocódigo utiliza para representar las acciones sucesivas palabras reservadas (similares a sus homónimos en los lenguajes de programación), tales como inicio, fin, si-entonces-sino, mientras, repita-hasta….etc

Secuencia
Inicio
acción1
acción2
.
.
.
acción n
Fin
Decisión
Simple
si condición entonces
acción1
acción2
.
.
.
acción n

Doble
si condición entonces
acción1
acción2
.
.
.
en caso contrario
acción1
acción2
Iteracción
Fija
para var. Entera inicial hasta final hacer
acción1
acción2
.
.
.
acción n


Condicional al inicio
mientras condición hacer
acción1
acción2
.
.
.
acción n


Condicional al final
repita
acción1
acción2
.
.
.
acción n
Hasta que condición



Selección
casos selector de
valor1 : acción1
acción2
 
valor2 : acción1
acción2
...
valor n : acción1
acción2

ARQUITECTURA DE SOFTWARE

Un computador desde la perspectiva del software, esta :
Un sistema operativo.
Un conjunto de lenguajes a diferente nivel con los cuales se comunica con el usuario y con sus dispositivos. Entre estos están los lenguajes de máquina, los  ensambladores y los de alto nivel.
Un conjunto de aplicaciones de software.
Un conjunto de herramientas de software.

1.2.2.1       Definiciones Básicas
Software: El hardware por si solo no puede haga nada, pues es necesario que exista el software, que es un conjunto de instrucciones que le dicen al hardware que haga .
Lenguaje de programación: Es un conjunto de reglas y estándares que es utilizado para escribir programas de computadoras que puedan ser entendidos por ellas. .
Programa: Es la representación de algún algoritmo en un lenguaje de programación específico.

1.2.2.2       Lenguaje de Máquina

Es el único lenguaje que entiende el hardware (máquina) y usa exclusivamente el sistema binario. Este lenguaje es específico para cada hardware (procesador, dispositivos, etc.).
El programa es almacenado en memoria y es tanto códigos de instrucción como datos. La estructura de una instrucción en lenguaje máquina es la siguiente:
CODIGO ARGUMENTO(S)












1.2.2.3       Lenguaje Ensamblador

Es un lenguaje que usa mnemónicos (palabras cortas escritas con caracteres alfanuméricos), para codificar las operaciones. Los datos y/o direcciones son codificados generalmente como números en un sistema hexadecimal. Generalmente es específico (aunque no único) para cada lenguaje de máquina.
La estructura de una instrucción en este lenguaje es la siguiente: 
MNEMONICO ARGUMENTO(S)
Un ENSAMBLADOR es un software, generalmente escrito en lenguaje de máquina, que es capaz de traducir de lenguaje ensamblador a lenguaje de máquina, mientras que un CARGADOR es un software que almacena en memoria el programa en lenguaje de máquina generado por el ensamblador.

1.2.2.4 Lenguaje de Alto Nivel

Lenguaje basado en una estructura gramatical que permite el anidamiento de instrucciones (instrucciones dentro de instrucciones). Cuenta con un conjunto de palabras reservadas (escritas en lenguaje natural), para codificar estructuras de control y/o instrucciones. Estos lenguajes permiten el uso de símbolos aritméticos y/o relacionales para describir cálculos matemáticos, y generalmente  representan las cantidades numéricas mediante sistema decimal.
Gracias a su estructura gramatical, estos lenguajes permiten al programador olvidar el direccionamiento de memoria (donde cargar datos y/o instrucciones en la memoria), ya que este se realiza mediante el uso de conceptos como el de variable; De esta manera, permiten la realización de programas independiente del Hardware.
Los COMPILADORES e INTERPRETES son software capaz de traducir de un lenguaje de alto nivel al lenguaje ensamblador específico de una máquina. Los primeros toman todo el programa en lenguaje de alto nivel, lo pasan a lenguaje ensamblador y luego lo ejecutan. Los últimos toman instrucción por instrucción, la traducen y la van ejecutando.

1.2.2.5 Sistema Operativo

Es el software encargado de administrar los recursos del sistema, para esto ofrece un conjunto de primitivas (funciones y procedimientos) a otro software, que le permiten a este ultimo ser tan independiente de la arquitectura de hardware como le sea posible. Se dice que un software es para el sistema operativo <nombre>, si utiliza las primitivas que el sistema operativo <nombre> proporciona. Adicionalmente, un sistema operativo ofrece un conjunto de comandos a los humanos sean o no programadores, para interactuar con la máquina.
Los sistemas operativos pueden ser escritos en lenguaje de alto nivel, como UNIX que fue escrito en C, en lenguaje ensamblador y/o en lenguaje máquina. Algunos de los sistemas operativos más conocidos son UNIX, LINUX, Microsoft Windows.

1.2.2.6 Aplicaciones y Herramientas

Una APLICACION es un software construido para que el computador realice una tarea específica y con el cual no se puede construir otro software. Ejemplos de aplicaciones son los procesadores de texto como Microsoft Word y Word Perfect y las hojas electrónicas de cálculo como Microsoft Excel y Lottus.
Una HERRAMIENTA es un software construido especialmente para el desarrollo de nuevo software, (tanto de aplicaciones como de herramientas). Ejemplos de herramientas son los compiladores como Turbo C y Turbo Pascal, las herramientas CASES y los ambientes integrados de desarrollo.

 


En el Anexo A se expone el concepto de sistema de numeración, y en el Anexo B se muestra como el sistema de numeración binario es utilizado para representar datos en un computador digital.



En el Anexo A se expone el concepto de sistema de numeración, y en el Anexo B se muestra como el sistema de numeración binario es utilizado para representar datos en un computador digital

PRUEBAS DE ESCRITORIO

La prueba de escritorio es una herramienta útil para entender que hace un determinado algoritmo, o para verificar que un algoritmo cumple con la especificación sin necesidad de ejecutarlo.
Básicamente, una prueba de escritorio es una ejecución ‘a mano’ del algoritmo, por lo tanto se debe llevar registro de los valores que va tomando cada una de las variables involucradas en el mismo.

A continuación se muestra un ejemplo de prueba de escritorio del siguiente algoritmo: suma :entero
entrada :entero menor :entero
leer entrada menor = entrada suma = 0 mientras (entrada != 0) haga si (entrada < menor) entonces menor =entrada fin_si suma = suma + entrada leer entrada fin_mientras escribirvalor Menor: escribir menor escribir Suma: escribir suma


INSTRUCCIÓN
entrada
menor
 suma
Pantalla
leer entrada
10
     
menor = entrada  
10
   
suma :=0    
0
 
suma :=suma + entrada    
10
 
leer entrada
7
     
menor = entrada  
7
   
suma :=suma + entrada    
17
 
leer entrada
9
     
suma :=suma + entrada    
26
 
leer entrada
0
     
Escribir valor menor:      
Valor Menor
Escribir menor      
7
Escribir Suma:      
Suma:
Escribir suma      
26

martes, 19 de noviembre de 2013

EDUCATION AND TRAINING TO MAKE OUT ... AGAIN

The Exit Do statement is used to trigger a forced exit of a loop Do ... Repeat While . The program flow jumps to the statement immediately following the Repeat While loop termination brand . In the case of nested loops only loop SalirHacerafecta is in the process when it comes to this output instruction. Use before or after a bucleHacer ... Repeat While no effect to be meaningless .

SalirHacer can be found at any point between the Do and Repeat While . Normally go after evaluating a situation that evolves as does the loop, and that is the trigger for the output.

Having SalirHacer order will allow us to introduce a variant of the instruction Do ... RepetirMientras . This variant is the same instruction but while the output condition . The syntax is the familiar :

do
Instruction 1
Instruction 2
.
.
.
Instruction n
repeat


It is clear that within the loop must be an outlet through a SalirHacer because otherwise the number of repeats would be infinite .

Example of using SalirHacer and Do ... Repeat.

1. Home [ Message if succeeds secret number - aprenderaprogramar.com ]

Two . Read Secretcode [ secret number value ]

Three . do

Show " Enter PIN number "

Order Number

If Number = Secretcode Then

Show " Welcome. Your key will operate 685 297 "

Quit Making

YesNo

Show " wrong number "

i = i 1

If i> 19 Then

Show " Exceeded number of available evidence. Access Denied "

Quit Making

endif

endif

repeat

April . end
INSTRUCCIÓN SALIRHACER E INSTRUCCIÓN HACER … REPETIR

La instrucción SalirHacer se usa para provocar una salida forzada de un bucle Hacer ... Repetir Mientras. El flujo del programa salta a la instrucción inmediatamente posterior al Repetir Mientras que marca la terminación del bucle. En el caso de bucles anidados SalirHacerafecta únicamente al bucle que está en proceso cuando se llega a esa instrucción de salida. Su uso antes o después de un bucleHacer ... Repetir Mientras no tiene ningún efecto al carecer de sentido.


SalirHacer puede encontrarse en cualquier punto intermedio entre el Hacer y Repetir Mientras. Normalmente irá después de evaluar una situación que evoluciona a medida que lo hace el bucle, y que es la desencadenante de la salida.

Disponer de la orden SalirHacer nos va a permitir introducir una variante de la instrucción   Hacer ... RepetirMientras. Dicha variante es esa misma instrucción pero sin la condición de salida Mientras. La sintaxis es la ya conocida:

Hacer
Instrucción 1
Instrucción 2
.
.
.
Instrucción n
Repetir


Queda claro que dentro del bucle habrá de existir una vía de salida a través de un SalirHacer, ya que en caso contrario el número de repeticiones sería infinito.


Ejemplo de uso de SalirHacer y de Hacer ... Repetir.



1.  Inicio [Mensaje si se acierta número secreto - aprenderaprogramar.com]

2.  Leer Secretcode [Valor del número secreto]

3.  Hacer

Mostrar “Introduzca número secreto”

Pedir Numero

Si Numero = Secretcode Entonces

Mostrar “Bienvenido. Su clave para operar será 685297”

SalirHacer

SiNo

Mostrar “Número erróneo”

i = i + 1

Si i > 19 Entonces

Mostrar “Excedido número de pruebas disponibles. Acceso denegado”

SalirHacer

FinSi

FinSi

Repetir

4.  Fin





Téngase en cuenta que este programa puede ser construido sin demasiada dificultad usando un Hacer ... Repetir Mientras sin necesidad de usar SalirHacer.

En este algoritmo aparte de la “salida obligatoria” que todo bucle Hacer... Repetirdebe tener, se ha incluido otra de seguridad. Algunos sistemas informáticos trabajan en continuo con repeticiones indefinidas. Piénsese por ejemplo en un ordenador a cargo de una red de cajeros automáticos: recibe datos, realiza procesos y vuelve a la “situación de espera”. En estos casos no hay salida excepto para circunstancias muy específicas controladas por el usuario.

Como venimos haciendo con las instrucciones anteriores propondremos:
·        Evitar el uso de SalirHacer siempre que sea posible.
  ·        Recordar lo expuesto en la introducción a la modificación directa del flujo de programas.



lunes, 18 de noviembre de 2013

exercise in pseudocode

1. Make an algorithm to generate the following series given the number of terms to generate (n).

1, -2 / 3, 3/9, 4/27, 5/81 .............

R / /

Integer n;

Integer D = 1;

Whole DV = 1;

Whole Cont = 1;

While (Cont <= n)

{

       if (D mod 2 = 0)

      {

         print (D * (-1) / DV)

     }

  but

{

  print (D / DV)



}

  Cont = Cont + 1;

  D = cont;

DV = DV * 3

}

ejercicio en pseudocodigo

1. Realizar un algoritmo que genere la siguiente serie dada la cantidad de terminos a generar (n).

1, -2/3, 3/9, 4/27, 5/81.............

R//

Entero n;
Entero D = 1;
Entero DV = 1;
Entero Cont = 1;

Mientras (Cont <= n)
{
      si (D mod 2 = 0)
     {
        imprimir (D*(-1)/DV)

    }
 sino
{
 imprimir (D / DV)
 
}

 Cont = Cont + 1;
 D = cont;
DV = DV*3


EJERCICIO

En un complejo industrial se desea incentivar a los encargados de turnos de producción. A cada encargado le corresponde un turno. Hay 18 turnos, y por cada uno de ellos 40 operarios. Para evaluar a los encargados se ha hecho una encuesta entre los trabajadores. Se les ha pedido que evalúen a su encargado de 0 a 10 siendo el 5 el aprobado. Los resultados están almacenados en un array tipo Nota(turno, operario) donde turno indica el número de turno y operario el número de operario dentro del turno.
Desarrollar el pseudocódigo y diagrama de flujo para un algoritmo que determine en qué turnos todos los operarios del mismo han aprobado al encargado.


SOLUCIÓN
Organización de variables:



Variable
Descripción - Uso
i, j
Uso como contadores
Nota(i,j)
Array de variables que almacenan la puntuación otorgada al encargado por el operario nº j del turno nº i
Haysuspensos
Interruptor que vale verdadero si algún operario del turno suspende al encargado y falso en caso contrario
 

Pseudocódigo:

1. Inicio [Evaluación de encargados aprenderaprogramar.com]
2. Desde i = 1 hasta 18 Hacer
2.1 Desde j = 1 hasta 40 Hacer
Leer Nota(i,j)
Si Nota(i,j) < 5 Entonces
Haysuspensos = Verdadero
FinSi
Siguiente
2.2 Si Haysuspensos = Falso Entonces
Mostrar “Todos los operarios del turno”, i, “han aprobado al encargado”
FinSi
2.3 Haysuspensos = Falso
Siguiente
3. Fin



Comentarios: Nótese cómo el uso de un interruptor simplifica una evaluación de múltiples condicionantes.

La evaluación propuesta es equivalente a:
 
Si Nota(i,j) < 5 ó Nota(i,j+1) < 5 ó Nota(i,j+2) < 5 ó ... ó Nota(i,40) < 5 Entonces
Haysuspensos = Verdadero
FinSi


Obviamente con los recursos que conocemos ya no tiene sentido pensar en este tipo de enumeración de condiciones.

Otro aspecto interesante es que cuando se han extraído las conclusiones derivadas del estado del interruptor y se va a empezar un nuevo ciclo, hay que “apagar” el interruptor. En caso contrario nos enfrentamos a conclusiones erróneas, de las que se pueden derivar los ya consabidos malfuncionamientos, errores, bloqueos, etc. Por tanto, precaución frente a este tipo de olvidos pues es también de los habituales. En un programa largo y complejo, puede hacerse difícil dar con el interruptor que está fallando.


 
 
 
Ilustración: Utilizamos una instrucción Desde ... Siguiente cuando el número de iteraciones es definido. A su vez un interruptor nos sirve para obtener información de lo que ha ocurrido durante el proceso de datos.

 Diagrama de flujo


 

viernes, 15 de noviembre de 2013

OPERATING SYSTEM WHAT IS BEST FOR PROGRAMMING WITH JAVA?

One of the advantages of Java is that it is cross-platform: you can use any operating system such as Windows, Linux, Macintosh, etc.. We will refer more often to Windows system to be the most used, but you can use either one or the other without any problem.


JAVA SOFTWARE IS FREE?

Consider Java free software is not entirely correct. But perhaps not consider proprietary software is. We could then consider Java as a technology semi-liberated. We will not get into the discussion of whether the policy that follows the Java developer is suitable or not, or what category of free or not free software could be classified.


We're staying with the practical side. In this sense, we can access everything you need to program in Java for free: compiler, virtual machine, class library, etc.. are freely available. We develop our programs in Java, and even have great development environments free professional type. Only very advanced programmers and pure free software enthusiasts may find "unpleasant" can not access the source code of the Java API and create your own Java distributions. People who want to learn Java or develop Java programs generally have more than enough with all the free opportunities exist around this technology. So, you have no concern because you can learn Java with many tools and utilities available for free. 
¿ES JAVA SOFTWARE LIBRE?
 
Considerar Java software libre no es del todo correcto. Pero considerarlo software propietario quizás tampoco lo es. Podríamos considerar entonces Java como una tecnología semi-liberada. No vamos a entrar en la discusión de si la política que sigue la empresa desarrolladora con Java es adecuada o no, ni en qué categoría de software libre o no libre podría clasificarse.

 
Nos vamos a quedar con el lado práctico. En este sentido, podemos acceder a todo lo necesario para programar en Java de forma gratuita: compilador, máquina virtual, biblioteca de clases, etc. están disponibles gratuitamente. Podemos desarrollar nuestros programas en Java, e incluso disponer de magníficos entornos de desarrollo de tipo profesional de forma gratuita. Solo a los programadores muy avanzados y amantes del software libre puro les puede resultar “desagradable” no poder acceder al código fuente del API de Java y crear sus propias distribuciones de Java. Las personas que quieren aprender Java o desarrollar programas con Java en general tendrán más que suficiente con todas las posibilidades gratuitas que existen en torno a esta tecnología. Así pues, no tengas ninguna preocupación pues se puede aprender Java con muchísimas herramientas y utilidades disponibles de forma gratuita.
 
 
¿QUÉ SISTEMA OPERATIVO ES MEJOR PARA PROGRAMAR CON JAVA?
 
Una de las ventajas de Java es que es multiplataforma: puedes usar cualquier sistema operativo como Windows, Linux, Macintosh, etc. Nosotros haremos referencia con mayor frecuencia a Windows por ser el sistema más usado, pero puedes usar indistintamente uno u otro sin ningún problema.
EXERCISE
Are extracted file data in "packets" of 100. If the number of data extracted with value greater than 600 and less than 700 is greater than 100 , display the message " meet schedule," indicating the number of extracted data against the total extracted fulfilling . Otherwise, continue to extract data packets ( considered unlimited ) . Raise it in pseudocode and flowchart.


Note: Consider that the data is in an array Data (1 ) Data ( 2) Data ( ... )
SOLUTION
pseudocode :
1. Home [ p100 Data Extraction aprenderaprogramar.com ]
Two . n = 1
Three . As Expected = False Make
3.1 Since i = n to n + 99 Make
Read Data ( i)
If Data ( i ) > 600 and Dato ( i ) < 700 Then
j = j + 1
endif
following
3.2 If j > 100 Then
Expected = True
endif
3.3 If Expected = True Then
Show " schedule is met having extracted" , j, " total data " , n + 99 , "data"
YesNo
Show "Removing a new package "
n = n + 100
endif
repeat
April . end
Comments: Expected boolean functions as a switch to control the main loop as well as decision making through Si ... Then. While their use is unavoidable , use expressions as Expected = True always be lighter and less cumbersome than using algebraic relations more or less complex .
In this algorithm prescindiríamos switch follows:


We modify line 3 : While j < = 100 Make


· We changed the line 3.2 to :
If j > 100 Entoces
Show " schedule is met having extracted" , j, " total data " , n + 99 , "data"
YesNo
Show "Removing a new package "
n = n + 100
endif
· We remove the line 3.3
This option is as valid as the previous one, but more difficult to follow and interpret.

deja un comentario