viernes, 11 de noviembre de 2016

ESTRUCTURA DE CONTROL REPETITIVAS

ESTRUCTURA DE CONTROL REPETITIVAS
1.       Hacer mientras que______(while)
2.       Hacer hasta que_________(do_while)
3.       Desde o para____________(for)

 Bucle
El buque es un conjunto de instrucciones que se repiten.
 Interacción
Es cada una de las veces que se ejecuta el bucle.
 Contador
Un contador es una variable cuyo valor incrementa o decrementa en una cantidad fija se utiliza en los siguientes casos.
Ø  Para contabilizar el número de veces que se desea una operación o grupo de operaciones.
Ø  Un contador toma un valor inicial antes de empezar sus funciones y se debe codificar en el siguiente formato:
  cont=cont +1
 cont=cont -1

Donde: cont es el nombre de tu variable contador.
Acumulador
Un acumulador se encarga de almacenar en una variable el resultado de una o varias operaciones matemáticas que se encuentran dentro de una sentencia repetitiva, para obtener un total acumulado.
Un acumulador se debe inicializar a cero (0) en caso de suma y en uno (1) en caso de producto y se codifica bajo el siguiente formato:
acum=acum+variable
acum=acum*variable
Donde: acum es el nombre de tu variable acumulador.

ESTRUCTURA mientras.

La estructura mientras que (while) es aquella en la que el número de repeticiones de bucle no se conoce por anticipado, y el cuerpo del buque se repite mientras se cumple una determinada condición. 
Ø  Condición es una expresión booleana (puede ver verdadera o falsa)  que se evalua al principio del bucle y antes de cada iteración de las sentencias.
Ø  Si la condición es verdadera, se ejecuta el bloque de sentencias y se vuelve al principio del bucle.
Ø  Si la condición es falsa, no se ejecuta el bloque de sentencias y se continúa con la siguiente sentencia del programa.




Una representacion grafica seria como sigue:


Pseudocódigo
Código C++
Mientras (condicon)  Hacer
     grupo de sentencias
FinMientras
while(condicion){
      grupo_de_sentecias
}




Explicación
·         Después de la sentencia: sentencia_n se entra a evaluar la condición  que esta junto a while, si es falsa se pasa el control del programa a la sentencia: sentencia_m (fuera de las llaves como indica la línea de color rojo) para continuar con las otras sentencias… Por lo tanto no se ingresaría ni una sola ves al grupo de sentencias dentro de las llaves del while.

·         En caso de que la condición junto a while sea verdadera se pasa el control del programa  al grupo de sentencias que se encuentran dentro de las llaves (como indica la línea de color verde),  para luego regresar (como indica la línea azul) a evaluar la condición esto se repite mientras la condición sea verdadera por lo tanto en el grupo de sentencias que esta dentro de la llaves de:  while se debe de modificar la condición para que en alguna vez la condición evaluada sea falso y salga del bucle para continuar con la sentencia_ m y las otras que continúan.

·         Por eso se dice que el bucle while se ejecuta cero o mas veces.

·         Si la condición nunca llega a ser falsa, tenemos un bucle infinito.

·         La condición se denomina invariante del bucle.

ESTRUCTURA mientras.

La estructura mientras que (while) es aquella en la que el número de repeticiones de bucle no se conoce por anticipado, y el cuerpo del buque se repite mientras se cumple una determinada condición. 
Ø  Condición es una expresión booleana (puede ver verdadera o falsa)  que se evalua al principio del bucle y antes de cada iteración de las sentencias.
Ø  Si la condición es verdadera, se ejecuta el bloque de sentencias y se vuelve al principio del bucle.
Ø  Si la condición es falsa, no se ejecuta el bloque de sentencias y se continúa con la siguiente sentencia del programa.



Una representacion grafica seria como sigue:

Pseudocódigo
Código C++
Mientras (condicon)  Hacer
     grupo de sentencias
FinMientras
while(condicion){
      grupo_de_sentecias
}



Explicación
·         Después de la sentencia: sentencia_n se entra a evaluar la condición  que esta junto a while, si es falsa se pasa el control del programa a la sentencia: sentencia_m (fuera de las llaves como indica la línea de color rojo) para continuar con las otras sentencias… Por lo tanto no se ingresaría ni una sola ves al grupo de sentencias dentro de las llaves del while.

·         En caso de que la condición junto a while sea verdadera se pasa el control del programa  al grupo de sentencias que se encuentran dentro de las llaves (como indica la línea de color verde),  para luego regresar (como indica la línea azul) a evaluar la condición esto se repite mientras la condición sea verdadera por lo tanto en el grupo de sentencias que esta dentro de la llaves de:  while se debe de modificar la condición para que en alguna vez la condición evaluada sea falso y salga del bucle para continuar con la sentencia_ m y las otras que continúan.

·         Por eso se dice que el bucle while se ejecuta cero o mas veces.

·         Si la condición nunca llega a ser falsa, tenemos un bucle infinito.

·         La condición se denomina invariante del bucle.

ESTRUCTURA desde-para.

La estructura PARA es utilizada en aquellos algoritmos en los que se conoce previamente e numero de veces que se deben repetir la ejecución de un bloque de instrucciones. Esta estructura corresponde a las denominadas estructuras repetitivas fijas y especialmente diseñadas para simplificar la escritura de los siclos controlados por un contador.
Léxico: para – hacer
Sintaxis:
  1. PARA Variable desde Vinicio HASTA Vfin HACER
  2. INICIO
  3. Bloque de instrucciones del bucle
  4. FIN // Algunos autores también utilizan:
  5.  
  6. DESDE Variable = Vinicio HASTA Vfin HACER
  7. INICIO
  8. Bloque de instrucciones de bucle
  9. FIN
Nosotros utilizaremos la primera forma.
Semántica
La variable se denomina variable de control del bucle y hace el papel de contador de la estructura repetitiva. La primera vez que se ejecuta la sentencia PARA, el valor inicial (Vinicio) se asigna a la variable de control, luego el bloque de instrucciones del bucle se ejecuta repetidamente y en cada repetición la variable contador del bucle se incrementa automáticamente en 1; hasta alcanzar el valor final (Vfinal), luego el control del programa continua en la siguiente instrucción a la estructura repetitiva.
Consideremos el siguiente ejemplo para aclarar esta idea.
  1. Para Contador Desde 1 Hasta 5 Hacer
  2. Inicio
  3. Escribir ‘PERU’
  4. Fin
Cada vez que se ejecuta la instrucción escribir ‘PERU’, la variable de control Contador se incrementa automáticamente en 1, de manera que se escribirá 5 veces la cadena de caracteres ‘PERU’
El anterior ejemplo es funcionalmente equivalente a las siguientes instrucciones.
  1. Contador = 1
  2. Mientras Contador <= 5 Hacer
  3. Inicio
  4. Escribir ‘PERU’
  5. Contador = Contador + 1
  6. Fin
Como se puede ver, comparativamente con la sentencia mientras la estructura para no requiere de instrucciones para inicializar el contador, para verificar la condición y para incrementar el contador, éstas son inherentes a su semántica.
La estructura para no es de propósito general, por lo que al momento de usarla se debe recordar lo siguiente:
  • La variable de control del siclo no puede cambiarse desde dentro del ciclo, pero si puede utilizarse.
  • Después de ejecutarse el bloque de instrucciones de proceso, la variable de control se incrementa en 1 automáticamente.
  • Se debe verificar que al momento de iniciarse el ciclo El valor inicial de la variable de control debe ser menor o igual al valor final que debe de tomar
  • No se debe poner una condición adicional de terminación del ciclo.

ESTRUCTURA hacer-mientras.

La primera estructura de repetición que vamos a conocer es la estructura mientras-hacer. En esta estructura, un conjunto de instrucciones se va a repetir mientras que se cumpla una determinada condición. Esta estructura sigue esta sintaxis:

mientras (condición) hacer
   sentencias
fin_mientras

En esta estructura, lo primero que sucede es que se evalúa la condición (que es una expresión booleana). Si el resultado es falso, entonces no se toma ninguna acción y el algoritmo sigue su camino hacia las sentencias que estén después del ciclo. Es decir, el ciclo es ignorado. Pero si la expresión resulta verdadera, entonces se ejecutan las sentencias que forman el cuerpo del ciclo, después de lo cual se vuelve a evaluar la condición. Este proceso se repite vez tras vez mientras la condición sea verdadera.

¿Recuerdan el ejemplo que citamos en la lección anterior? en dicho ejemplo, necesitabamos leer el valor de 10 números para calcular su suma. Usando la estructura mientras-hacer, el ejemplo quedaría de este modo:

algoritmo Suma
var
   entero: contador, numero, suma
inicio
   suma <- 0
   contador <- 1
   mientras (contador <= 10) hacer
      escribir("Escribe un número:")
      leer(numero)
      suma <- suma + numero
      contador ++
   fin_mientras
   escribir("La suma de los números dados es: " + suma)
fin

En este algoritmo, lo primero que hacemos es inicializar las variables suma y contador. Dado que suma será la variable donde vamos a almacenar el resultado de la suma de todos los números, la inicializamos en cero. Por otro lado, la variable contador será la que nos ayude a determinar cuando nuestro ciclo mientras va a detenerse. Como la condición indica que el contador debe llegar a 10, lo inicializamos en 1 para permitir la primera vuelta del ciclo. Una vez que inicializamos las variables, evaluamos la condición (contador <= 10). Como la primera vez esta condición resulta verdadera, ejecutamos el cuerpo del ciclo. Dicho cuerpo está formado por cuatro sentencias: en las primeras dos nos ocupamos de leer el número que vamos a sumar; en la tercera, nos ocupamos de acumular el valor dado en la variable suma (es decir, a suma le asignamos el valor que ya tenía la variable mas el valor del número dado); finalmente, la sentencia contador++ se encarga de incrementar en 1 el valor de la variable contador, de modo que, ahora, su valor es 2 y entonces volvemos a evaluar la condición. Este proceso se repetirá hasta que la variable contador tenga un valor de 11, en cuyo caso la condición resultará falsa y el cuerpo del ciclo ya no se ejecutará de nuevo.

jueves, 10 de noviembre de 2016

PSEUDOCODIGO PARA SUMAR 100 NÚMEROS

PSEUDOCODIGO PARA SUMAR 100 NÚMEROS

  1. Leer N
  2. Inicializar el algoritmo con N=0
  3. Creación del bucle while:
  • Mientras N< ó = 100 se suma N+1 para dar una nueva N, para posteriormente establecer la suma total (de los n números) como: SUMA= suma +N (previamente establecida).

  • Siempre que se cumpla N mayor ó igual a 100 repetir dicha acción. Cuando n deje de ser igual o menor que 50, fin del bucle.


    4. Fin de bucle while
    5. Escribir la suma

Variable acumulador

Es similar al contador. Se inicializa en cero y en cada repetición se incrementa en diferentes valores. El resultado final es que la variable acumula la suma de los valores añadidos en cada repetición.

package com.edu4java.javatutorials;
import javax.swing.JOptionPane;

public class WhileCounterAcumulator {
 public static void main(String[] args) {
  int counter = 0;
  int accumulator = 0;
  while (counter < 5) {
   counter = counter + 1;
   accumulator = accumulator + Integer.parseInt(JOptionPane
    .showInputDialog("Ingresar el " + counter + "º número"));
  }
  JOptionPane.showMessageDialog(null, "La suma de los 5 números es " + accumulator);
 }
}

Variable contador

Cuando trabajamos con bucles repetitivos, muchas veces estamos interesados en saber en que repetición estamos. Para contar las repeticiones, se suele usar una variable que es llamada contador.
La técnica es:
  1. Inicializar una variable a cero o uno antes del ciclo repetitivo.
  2. Dentro del ciclo repetitivo, incrementar en uno la variable.
package com.edu4java.javatutorials;

public class WhileCounter {
 public static void main(String[] args) {
  int counter = 0;
  while (counter < 5) {
   counter = counter + 1;
   System.out.println(counter);
  }
 }
}

miércoles, 12 de octubre de 2016

EJEMPLO yUML


EJEMPLO yUML


EJEMPLO yUML


EJEMPLO yUML


yUML

yUML es una aplicación que nos permite crear diagramas UML online. Los diagramas UML conforman un lenguaje usado extensivamente en metodologías de desarrollo de sistemas de software.

Aunque existen herramientas tipo desktop (de escritorio) que nos permiten crear estos diagramas, tales como Power Designer y Rational Rose (ambos propietarios), la ventaja que nos otorga yUML es que no necesitamos instalar nada en nuestro ordenador, además que es gratuito y no requiere registro.
La posible complejidad en el uso de esta herramienta estibaría en el modo de notación existente para crear los diagramas, ya que se necesita de una lógica anidada de sintaxis en la cual podemos perdernos si no hacemos las adecuaciones del caso (uso correcto de las llaves).
Por citar un ejemplo, el código necesario para generar el diagrama UML que se muestra como encabezado de este post sería:
[Customer]-(Login), [Customer]-(Logout), (Login)<(Register), (Login)<(Request Password Reminder)
Este mismo código se usa para generar la imagen que podrá ser insertada, desde la página de yUML, es decir:
<img src="http://yuml.me/diagram/scruffy/usecase/[codigo_yUML]">
<img src="http://yuml.me/diagram/usecase/[codigo_yUML]">
El primer código es para dar un diagrama estilo grunge, medio desaliñado, mientras que el segundo es uno más cuadriculado y recto.

Un problema con esta herramienta es que aún no nos permite descargar la imagen como una opción. Si te confunde la sintaxis puedes reviar más ejemplos de clases y decasos de uso.

domingo, 9 de octubre de 2016

ALGORITMO.

PROBLEMA 8.
La suma de 2 números cualquieras se deben pedir y si no tiene los 2 números no se pueda sumar.






ALGORITMO.

PROBLEMA 7.
Para determinar el cambio de una persona al adquirir  un producto.


ALGORITMO.

PROBLEMA 6.
Calcula el Volumen de un cubo.


 

PSEUDOCODIGO Y ALGORITMO.

PROBLEMA 5.
Salida al Cine.

Inicio.

1.-Tener dinero.
2.-Mirar la cartelera.
3.-Comprar Boletos.
4.-Comprar Palomitas.
5.-Entrar a la película
6.-Ver la película.

Fin.

ALGORITMOS.


PSEUDOCODIGO Y ALGORITMO.

PROBLEMA 4.
Elabore un algoritmo  para calcular e imprimir el precio de un terreno del cual se tienen los siguientes datos: Largo, Ancho y Precio por metro Cuadrado.
Si el terreno tiene mas de 400 metros cuadrados se hace un descuento del 10 %.

 Inicio.

1.-Pedir datos de entrada.
  Float Largo.
  Float Ancho.
    Float Precioxm
2.-Guardar
Float Ancho
Float Largo
Float Precioxm
3.-Areaterreno=Ancho*Largo
4.-Si Areaterreno >400 entonces 
   Precioterreno=(Areaterreno+Precioxm)*.9
sino
Precioterreno=Areaterreno*Precioxm
5.-Imprimir
Precioterreno

Fin.

ALGORITMO.


PSEUDOCODIGO Y ALGORITMOS.

PROBLEMA 3.
Hacer una Taza de Te.
  
Inicio.

1.-Decidir el te.
2.-Poner agua a calentar.
3.-Poner la taza con agua hirviendo.
4.-Introducir el te.
5.-Echarle azúcar.
6.-Tomarlo.

Fin.

ALGORITMO.


PSEUDOCODIGO Y ALGORITMO.

PROBLEMA 2.
Calcular el Área y Perímetro de un Cuadrado de Lado 6.

Inicio

1.-Área del cuadrado con valor "6".
  Area=Lado*Lado;
2.-Perímetro  del cuadrado con valor "6".
  Per=Lado+Lado+Lado+lado;
3.-Imprimir resultado.
 Impri= Area,per.

Fin.

ALGORITMO.



PSEUDOCODIGO Y ALGORITMOS.

PROBLEMA 1 
Calcula el área de un Circulo.
Inicio 
1.-Ingresa valor de radio.
2.-Guarda Num ingresado en la variable Radio.
3.-Calular Areacir.
   Areacir=pi*(Radio*Radio).
4.-Imprimir Valor Areacir.
Fin.


ALGORITMO.



AM_YAMILETHE_A3

Especificaciones de Entrada.
¿Que datos son de Entrada?
¿Cuantos datos se introducirán?
¿Cuantos son datos de entrada Validos?

Especificaciones de Salida. 
¿Cuales son los datos de salida?
¿Cuantos dato de salida se producirán?
¿Que precisión tendrán los resultados?
¿Se debe imprimir una cabecera?




AM_YAMILETHE_A2

Datos de una cuenta bancaria (Datos generales de una cuenta bancaria)
+ String Nombre, edad,dirección,correo,teléfono.

Nombre(String).
Edad(Int).
Dirección(String).
Correo(String).
Teléfono(Int).

Numero de botones de una Camisa.
+ Int botones.

Altura de un edificio.
+ Float Altura.

Numero de pasajeros de un avión.
+ Int Pasajeros.

El Resultado de hacer una apuesta.
+ Bloonear Ganar,perder.

Nombre de identificadores.
+ 20013 (No).
+ Puerta21 (Si).
+ _CoCHe (Si).
+ _Platillo_(Si).
+ _*_*_*_* (No).
+ 47ejercicios (No).
+ aEroNaVE (Si).
+ Costa rica (No)
+ *LOL* (No).
Perrito(Si).




Resolución de problemas mediante computadoras:
*Codificar el algoritmo en programa.
*Ejecución del programa.

Análisis de algoritmos
*Tiempo de ejecución.
*Cantidad de memoria (espacio)

Tipos de datos básicos.
Las variables y contantes deben definir un tipo.
una vez definido el tipo, no se puede cambiar de opinión, el tipo define el comportamiento de los operadores.

Tipo de Datos Nulos.
VOID
*Indica "Nada".
*Es una variable sin tipo definido.
*Cuando una función o programa no retorna ningún resultado final.

Tipos de Datos Numéricos.
*Decimal.
*Binaria .
*Enteros.
*Reales.

Modificadores.
*Signed: Reserva un bit para el signo.
*Unsigned: Define solo valores positivos.
*Long: Utiliza el mayor tamaño posible.
*Short: Utiliza el menor tamaño disponible.



jueves, 6 de octubre de 2016

AM_YAMILETHE_A1

¿Que aspecto de la creación  de software están incluidos en todos los modelos de desarrollo?
La entrada y salida de problemas, como los van a ir solucionando poco a poco asta llegar al programa que nos están pidiendo el clientes para para su empresa o uso personal.
Análisis, Diseño, Implementacion, Evaluación.
¿Cual es el problema principal del modelo de desarrollo de software en cascada?
El mayor problema del diseño de cascada es que no puedes volver atrás a editar  algo que al cliente no le halla gustado.
¿Que tienen en común los modelos de  desarrollo es espiral y evolutivos?
Que los dos desarrollan el sistema adecuado para que el cliente quede feliz con lo entregado.


"Modelos del ciclos desarrollo"

*Modelo cascada: También  conocido como modelo clásico, modelo tradicional o modelo lineal  secuencial. El método de cascada es considerado como el enfoque clásico para el ciclo de vida del un desarrollo de sistemas, se puede decir que es método puro que implica un desarrollo rígido.  
-Análisis de requerimientos: consiste en reunión  las necesidades del producto y casi siempre su cálida  es texto.
-Diseño: describe la estructura interna del producto y suele sentarse con diagramas  de texto.
-Implementacion: significa programación. Producto de esta etapa es el código en cualquier nivel, incluido el producto por sistemas de generación automática.
*Modelo Espiral: El modelo espiral se divide en un numero de actividades de marco de trabajo, también conocida REGIONES DE TAREAS, cada una de las regiones esta compuestos por un conjunto de tareas de trabajo llamado CONJUNTO DE TAREA  que se adaptan a las características del proyecto que va a emprenderse a todos los casos se aplican actividades de protección.
*Modelo Evolución: Son modelos en el desarrollo de una implantación  del sistemas inicial exponerla a los comentarios de usuarios, refinar la en N versiones hasta que desarrolle el sistemas adecuado.

Como se desarrolla el Software.


Análisis de software es el proceso automatizado de analizar el comportamiento del software. Existen dos tipos principales de análisis, el análisis estático de software y el análisis dinámico de software. Estas técnicas de análisis intentan encontrar y mejorar en un software cuestiones de correctitudoptimización y seguridad.

El diseño del software se encuentra en el núcleo técnico de la respectiva ingeniería y se aplica de manera independiente al modelo de software que se utilice.

Una implementación es la instalación de una aplicación informática, realización o la ejecución de un plan, idea, modelo científico, diseño, especificación, estándar, algoritmo o política.

Evaluación. En el ámbito educativo, la evaluación es un ejercicio acostumbrado por ser un componente fundamental dentro del proceso de enseñanza aprendizaje.