Bienvenidos a un nuevo curso. Ahora estoy en el ciclo de grado superior: Desarrollo de aplicaciones multiplataforma. Y voy a ser parte del experimento de la formación dual. Estaré haciendo practicas durante un año, y a la vez finalizando la formación.

Deseadme suerte.

lunes, 28 de septiembre de 2015

Tema 1: Diseño de un programa

0

14/10/2015


Fase de análisis:  Requisitos previos, condiciones que necesita el programa. // Se debe tener clara su finalidad y a quien va dirigido, que debe incluir y que tareas debe realizar.
En el análisis debemos identificar:
  • En qué ordenador se ejecutará el software.
  • A quién va dirigido.
  • Cuales serán los datos de entrada.
  • Cuales serán los datos de salida.
  • Cuales serán las operaciones a realizar.
Fase de diseño del algoritmo: Desarrolla el algoritmo que representa de forma temporal cómo abordar el problema inicial.
  • Usaremos diagramas de flujo u organigramas.
  • También usaremos pseudocódigo.
  • Es una especificación detallada que facilita posteriormente la programación en un lenguaje de programación concreto.
Fase de programación (codificación): Se utiliza un lenguaje de programación en particular.

Ejemplo:
Pseudicódigo:
     PROGRAMA: notaAsignatura
     ENTORNO: Nota es un  número entero.
     ALGORITMO: 
          escribir "introduce nota"
          leer nota
          si nota < 5
                entonces escribir SUSPENSO
         si no 
               escribir "Aprobado"
          fin si
          fin programa 
Código: 
Public void nota Asignatura ()
{
     int nota;
    printf ("Introduce una nota");
    scanf ("%i", nota);
    If (nota <5)
     {
          printf("suspenso");
     }
     else
     {
          printf("Aprobado");
     }
}


Fase de pruebas y depuración:
Depuración: Proceso de detección de errores en tiempo de ejecución y corrección de los mismos.

Fase de documentación:
Es necesario que el usuario final conozca los requisitos que debe poseer el hardware, cómo podemos ejecutar el software (formato de ejecución o posibles parámetros a usar), o cuáles son los valores de entrada que acepta.

Ejercicio:
Supongamos que una empresa se pone en contacto con nosotros y nos pide realizar un software que debe detectar si un numero introducido es par o no. Solo se pueden comprobar los 100 primeros números. 

Respuesta del profesor

Fase de análisis

- Tipos de datos que se deben usar
- Que salida se debe obtener
1.- El programa solicita un número. Solo se pueden comprobar los 100 primeros números. El 0 no es un valor valido. 
2.- En caso de que el número sea par se visualizara en la pantalla "El número introducido es par".
3.- En caso de que el número sea impar se visualizará en pantalla "El número introducido es impar".
4.- Si el número a comprobar es el 0 se visualizara por pantalla el mensaje "valor incorrecto. El 0 no es valido".
5.- Si el número introducido es menor que 0 ó mayor que 100 se mostrara en pantalla "Número introducido fuera de rango. Rango de número valido entre 1 - 100"

Fase de diseño

(1) PROGRAMA: numeroPAR
(2) ENTORNO: numero, modulo son números enteros
(3) ALGORITMO: 
     (4) Escribir "Introduce un número"
     (5) Leer Numero
     (6) Si numero = 0 entonces 
           (7) escribir "valor incorrecto. El 0 no es un valor válido"
     (8) Si numero < 0 || numero > 100 entonces
           (9) escribir "Número introducido fuera de rango. Rango valido 1-100"
     (10) Si no
           (11) Modulo = Resto del numero/2
           (12) Si modulo =0 entonces
                (13) escribir "El número introducido es par"
           (14) Si no
                (15) escribir "El número introducido es impar"
            (16) fin si
      (17) fin si
      (18) Fin programa

 Fase de codificación

Public void esPar ()
{
     int num, mo;
    printf ("Introduce un número: ");
    scanf ("%i", &num);
    if (num == 0)
    {
          printf("valor incorrecto. El 0 no es un valor válido") 
     }
    else if (num <0 || num > 100)
    {
         printf("Número introducido fuera de rango. Rango valido 1-100");
    }
    else
    {
          mo=num mod 2;
     }
     if (modulo == 0)
     {
          printf("El número introducido es par");
     }
     else
     {
          printf("El número introducido es impar");
     }
}

Related Posts:

0 comentarios:

Publicar un comentario

Etiquetas actuales

BD (67) DEF (64) PROG (64) SQL (44) Java (29) PRACTICAS (20) php (18) DI (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) HTML (13) SGE (12) ERP (9) CONSULTAS (8) css (8) Linux (5) XML (5) Android (4) PDM (4) C (3) NetBeans (3) PSP (3) SMARTY (3) comandos (3) HOOK (2) POST (2) XSD (2) cURL (2) JS (1) MEDIA-QUERYS (1) PDO (1) RESPONSIVE (1) TPL (1) TRADUCCIÓN (1) app_inventor (1)

Todas las etiquetas

EJER (78) BD (67) DEF (64) PROG (64) SQL (44) c# (40) Programación (39) Ficheros (36) Java (29) bases de datos (21) PRACTICAS (20) lenguajes de marcas (19) AD (18) Entorno de desarrollo (18) php (18) PROCEDIMIENTOS (17) DI (16) FORM (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) lenguaje C (16) E/R (14) HTML (13) SGE (12) Sistemas informáticos (10) ERP (9) CONSULTAS (8) TRANSACCIONES (8) TRIGGER (8) VISUAL BASIC (8) css (8) FUNCIONES (7) html5 (6) Ada (5) EXAMEN (5) Linux (5) XML (5) estructuras (5) Android (4) DISEÑO (4) INTERFAZ (4) LOG (4) OpenBravo (4) PDM (4) ACTUALIZAR (3) C (3) DIAGRAMA (3) Directorios (3) NEW (3) NOR (3) NetBeans (3) OLD (3) PSP (3) SMARTY (3) comandos (3) css3 (3) AISLAMIENTOS (2) C++ (2) CONTROLERRORES (2) ELIMINAR (2) HOOK (2) INSERTAR (2) INST (2) MULTITABLA (2) POST (2) RECURSIVIDAD (2) SUBCONSULTAS (2) VISTAS (2) XSD (2) cURL (2) punteros (2) AJENA (1) BLOQUEOS (1) Byte (1) CREACION (1) CRM (1) Configuración (1) Controles (1) Datos (1) GOTFOCUS (1) IMAGENES (1) INDICES (1) JS (1) Lenght (1) MEDIA-QUERYS (1) Mingw (1) MonoDeveloped (1) OPTIMISTA (1) PDO (1) PESIMISTA (1) RESPONSIVE (1) SPEAK (1) Scanner (1) Serializacion (1) Streams (1) System (1) TPL (1) TRADUCCIÓN (1) USUARIOS (1) UseSystemPasswordChar (1) app_inventor (1) char (1) examenes (1) libreoffice (1) make (1) redes (1)