¿Supiste lo que acaba de lanzar LagriHost? Sí, como lo estabas esperando, ahora vendemos Web Hosting y Dominios. Conoce más :)


Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
TUTORIAL 6.- Programación: Asignaciones y desarrollo del primer algoritmo
#1
0
Hasta el momento ya hemos examinado un poco los algoritmos en artículos anteriores, pero hasta el momento ha sido casi solo teoría, así que ya vamos a desarrollar el primer algoritmo.

Asignaciones

Es la forma en la cual se asigna un valor a una variable o constante, en pseudocodigo lo representamos con una flecha que señala a la izquierda (<-).

Ejemplos:

nota <- 8;

c <- a + b;

real <- 9.76;

letra <- ‘f’;

cubo <- a*a*a;

Como puedes ver la asignación en pseudocodigo es algo sencillo.

Convenciones para escribir algoritmos con pseudocodigo
  • Primero escribiremos el nombre del algoritmo con letras mayúsculas y las palabras separadas por guiones bajos. Ejemplo: SUMA_ENTEROS.
  • Seguido de esto, explicaremos lo que hace el algoritmo de forma resumida, escrito entre llaves {}.
  • A continuación, explicamos las variables y constantes, escrito también entre llaves {}.
  • Finalmente, escribimos todos los pasos que ejecuta el algoritmo.
Desarrollando el primer algoritmo

Problema
Se nos solicita hacer un programa que permita ingresar 5 notas, correspondientes a 5 bimestres en un año y que calculemos el promedio obtenido en un año escolar.

1. Análisis

Recordando las etapas del desarrollo de un algoritmo, recordemos que lo primero es analizar el problema para poder resolverlo.

Nos piden que ingrese 5 notas, entonces, usaremos 5 variables, ya que van a guardar notas de examen, sabemos que esas notas pueden tener una parte decimal, entonces, lo que necesitamos es un tipo de dato real, las 5 variables serán real.

Y requieren que se calcule el promedio de estas notas, ese resultado lo guardaremos en otra variable, que también sera de tipo real, ya que el promedio también tiene decimales.

2. Construyendo el algoritmo

Lo primero que haremos es, escribir el nombre, ya que calcula el promedio de notas, se llamara PROMEDIO_NOTAS.

Ahora debemos resumir lo que hace el algoritmo:

{Algoritmo que permite ingresar 5 notas y calcular promedio de un alumno}

Antes de continuar, expliquemos las variables:

{Las variables nota1, nota2, nota3, nota4, nota5 y prom, son de tipo real}

Ahora, recordando, un algoritmo tiene 3 módulos, modulo 1: ingreso de datos, modulo 2: cálculos requeridos y modulo 3: presentación de los resultados. Escribiré módulos para que se entienda mejor, pero en el desarrollo en si del algoritmo no se escribe la identificación de cada modulo.

Modulo 1: Ingreso de datos

ESCRIBIR “Promedio de notas”
ESCRIBIR “Ingresa nota1 “
LEER nota1
ESCRIBIR “Ingresa nota2 “
LEER nota2
ESCRIBIR “Ingresa nota3 “
LEER nota3
ESCRIBIR “Ingresa nota4 “
LEER nota4
ESCRIBIR “Ingresa nota5 “
LEER nota5


Modulo 2: Cálculos requeridos

HACER prom <- (nota1 + nota2 + nota3 + nota4 + nota5)/5

Modulo 3: Presentación de resultados

ESCRIBIR “El promedio del alumno es “, prom

La tercera parte del desarrollo del algoritmo, que seria probarlo, lo trataremos en la siguiente entrada.

Muy bien, ya con esto hemos resuelto nuestro primer algoritmo, bastante sencillo, pero con ello ya podemos entender un poco la lógica de programación.

Siempre los invito a pasarse por mi web: Bitácora Informática
Nunca consideres el estudio como una obligación, sino como una oportunidad para penetrar en el bello y maravilloso mundo del saber. Albert Einstein

No olvides visitar mi web sobre informática... Bitácora Informática

Una nueva comunidad, un nuevo concepto, te esperamos... Tangaria

#2
0
Cada vez se hace más difícil según mi punto de vista, pero muy buenos tutoriales Sonrisa
Reglas de LagriHost | WIKI/Ayuda-FAQ | Nuestro Equipo | Solicita tu Hosting en 7 Pasos
No doy soporte por MP! Para eso esta el foro Guiño


[Imagen: banner-colabora.gif][Imagen: 8mt2wBp.jpg]

#3
0
Aqui desarrolle un Pseudocodigo Matematico de diversas funciones

Código:
// Este ejemplo muestra el uso de expresiones, operadores y funciones matematicas

Proceso Matematicas


   EligeSalir<-Falso
   Escribir 'Ingresar Numero:'
   Leer N
   Repetir
      Escribir ' '
      Escribir 'Presione una tecla para continuar'
          Esperar Tecla
          Limpiar Pantalla
      Escribir 'Elija una opción:'
      Escribir '  1 - Seno, Coseno, ArcoTangente'
      Escribir '  2 - Lograritmo Natural, Funcion Exponencial'
      Escribir '  3 - Truncar, Redondear'
      Escribir '  4 - Raiz Cuadrada'
      Escribir '  5 - Valor Absoluto'
      Escribir '  6 - Separar parte entera y decimal'
      Escribir '  7 - Hallar Factorial'
      Escribir '  8 - Averiguar si es primo'
      Escribir '  9 - Ingresar Otro Numero'
      Escribir '  0 - para Salir'
      Escribir ' '
      Leer Op
      Segun Op Hacer
         1:
            Escribir 'Seno:',Sen(N)
            Escribir 'Coseno:',Cos(N)
            Escribir 'ArcTangente:',Atan(N)
         2:
            Si N<=0
               Entonces Escribir 'El numero debe ser mayor a cero!'
               Sino
                  Escribir 'Log Nat.:',ln(N)
                  Escribir 'Func Expon.:',exp(N)
            FinSi
         3:
            Escribir 'Turncar:',trunc(N)
            Escribir 'Redondear:',redon(N)
         4: Escribir 'Raiz Cuad.:',rc(N)
         5: Escribir 'Valor Abs.:',abs(N)
         6:
            Escribir 'Parte Entera:',Trunc(n)
            Escribir 'Parte Decimal:',n-Trunc(n)
         7:
            Si N<>Trunc(N)
               Entonces
                  Escribir 'El numero debe ser entero!'
               Sino
                  Si abs(N)>50
                     Entonces Escribir 'Resultado muy grande!'
                     Sino
                        r<-1; f<-1
                        Mientras f<=abs(N) Hacer
                           Si N<0
                              Entonces r<-(-f)*r
                                    Sino r<-f*r
                           FinSi
                           f<-f+1
                        FinMientras
                        Escribir 'Factorial:',r
                  FinSi
            FinSi
         8:
            Si N<>Trunc(N) Entonces
               Escribir 'El numero debe ser entero!'
            Sino
               Si N<0  entonces
                  Nu<-N*(-1)
               sino
                  Nu<-N
               FinSi
               Si N/2=trunc(Nu/2) Entonces
                  Escribir 'Numero Primo:',Nu=2
                  Si Nu<>2 Entonces
                     Escribir N,'=2x',N/2
                  FinSi
               Sino
                  EsPrimo<-Nu<>1
                  Nu<-RC(Nu)
                  f<-3
                  Mientras f<=Nu Y EsPrimo Hacer
                     Si N/F=trunc(N/F) Entonces
                        EsPrimo<-Falso
                     FinSi
                     f<-f+2
                  FinMientras
                  Escribir 'Numero Primo:',EsPrimo
                  Si N>1 Y NO EsPrimo Entonces
                     Escribir N,'=',f-2,'x',N/(f-2)
                  FinSi
               FinSi
            FinSi
         9:
            Escribir 'Ingrese Numero:'
            Leer N
         0: EligeSalir<-Verdadero
         De Otro Modo:
            Escribir 'Opcion No Valida!'
      FinSegun
   Hasta que EligeSalir
FinProceso
♪Desde hoy las emisoras las detesto, por estar tocando cancioncitas de amor♫
♪ La television hace daño! que mueran las novelas de amor♫

#4
0
Bueno ya llegaron al tema de algoritmos rebusque un viejo problema de promedios que me habian dejado años atras que era algo similar....


Código PHP:
Inicio 

          
// Declaración de variables 
          
real nota1nota2nota3promedio 

          
// Entrada de datos 
          
Leer nota1nota2nota3 

          
// Si amerita, añade 2 puntos a nota3 
          
sinota3 >= 10 ){ 
             
nota3 nota3 
             si
nota3 20 
                  
nota3 20 
           

          
// Determina el promedio 
          
promedio = (nota1+nota2+nota3)/

          
// Salida de resultados 
          
Imprimir promedio 
Fin 

Saludos
Si te gusto algun tema puedes darle 1+ a mi Reputacion


#5
0
(15-08-2014, 03:36 AM)•»Ŝєʀaρɦɪήə«• escribió: Aqui desarrolle un Pseudocodigo Matematico de diversas funciones

Código:
// Este ejemplo muestra el uso de expresiones, operadores y funciones matematicas

Proceso Matematicas


   EligeSalir<-Falso
   Escribir 'Ingresar Numero:'
   Leer N
   Repetir
      Escribir ' '
      Escribir 'Presione una tecla para continuar'
          Esperar Tecla
          Limpiar Pantalla
      Escribir 'Elija una opción:'
      Escribir '  1 - Seno, Coseno, ArcoTangente'
      Escribir '  2 - Lograritmo Natural, Funcion Exponencial'
      Escribir '  3 - Truncar, Redondear'
      Escribir '  4 - Raiz Cuadrada'
      Escribir '  5 - Valor Absoluto'
      Escribir '  6 - Separar parte entera y decimal'
      Escribir '  7 - Hallar Factorial'
      Escribir '  8 - Averiguar si es primo'
      Escribir '  9 - Ingresar Otro Numero'
      Escribir '  0 - para Salir'
      Escribir ' '
      Leer Op
      Segun Op Hacer
         1:
            Escribir 'Seno:',Sen(N)
            Escribir 'Coseno:',Cos(N)
            Escribir 'ArcTangente:',Atan(N)
         2:
            Si N<=0
               Entonces Escribir 'El numero debe ser mayor a cero!'
               Sino
                  Escribir 'Log Nat.:',ln(N)
                  Escribir 'Func Expon.:',exp(N)
            FinSi
         3:
            Escribir 'Turncar:',trunc(N)
            Escribir 'Redondear:',redon(N)
         4: Escribir 'Raiz Cuad.:',rc(N)
         5: Escribir 'Valor Abs.:',abs(N)
         6:
            Escribir 'Parte Entera:',Trunc(n)
            Escribir 'Parte Decimal:',n-Trunc(n)
         7:
            Si N<>Trunc(N)
               Entonces
                  Escribir 'El numero debe ser entero!'
               Sino
                  Si abs(N)>50
                     Entonces Escribir 'Resultado muy grande!'
                     Sino
                        r<-1; f<-1
                        Mientras f<=abs(N) Hacer
                           Si N<0
                              Entonces r<-(-f)*r
                                    Sino r<-f*r
                           FinSi
                           f<-f+1
                        FinMientras
                        Escribir 'Factorial:',r
                  FinSi
            FinSi
         8:
            Si N<>Trunc(N) Entonces
               Escribir 'El numero debe ser entero!'
            Sino
               Si N<0  entonces
                  Nu<-N*(-1)
               sino
                  Nu<-N
               FinSi
               Si N/2=trunc(Nu/2) Entonces
                  Escribir 'Numero Primo:',Nu=2
                  Si Nu<>2 Entonces
                     Escribir N,'=2x',N/2
                  FinSi
               Sino
                  EsPrimo<-Nu<>1
                  Nu<-RC(Nu)
                  f<-3
                  Mientras f<=Nu Y EsPrimo Hacer
                     Si N/F=trunc(N/F) Entonces
                        EsPrimo<-Falso
                     FinSi
                     f<-f+2
                  FinMientras
                  Escribir 'Numero Primo:',EsPrimo
                  Si N>1 Y NO EsPrimo Entonces
                     Escribir N,'=',f-2,'x',N/(f-2)
                  FinSi
               FinSi
            FinSi
         9:
            Escribir 'Ingrese Numero:'
            Leer N
         0: EligeSalir<-Verdadero
         De Otro Modo:
            Escribir 'Opcion No Valida!'
      FinSegun
   Hasta que EligeSalir
FinProceso

Seraphine, gracias por el aporte, esta muy bien el algoritmo....
- - - Actualizado - - -
(15-08-2014, 08:46 AM)BizarroL escribió: Bueno ya llegaron al tema de algoritmos rebusque un viejo problema de promedios que me habian dejado años atras que era algo similar....


Código PHP:
Inicio 

          
// Declaración de variables 
          
real nota1nota2nota3promedio 

          
// Entrada de datos 
          
Leer nota1nota2nota3 

          
// Si amerita, añade 2 puntos a nota3 
          
sinota3 >= 10 ){ 
             
nota3 nota3 
             si
nota3 20 
                  
nota3 20 
           

          
// Determina el promedio 
          
promedio = (nota1+nota2+nota3)/

          
// Salida de resultados 
          
Imprimir promedio 
Fin 

Saludos

Muy bien @BizarroL muy parecido al que acabo de presentar...
Nunca consideres el estudio como una obligación, sino como una oportunidad para penetrar en el bello y maravilloso mundo del saber. Albert Einstein

No olvides visitar mi web sobre informática... Bitácora Informática

Una nueva comunidad, un nuevo concepto, te esperamos... Tangaria

#6
0
Todos entienden menos yo Triste
Reglas de LagriHost | WIKI/Ayuda-FAQ | Nuestro Equipo | Solicita tu Hosting en 7 Pasos
No doy soporte por MP! Para eso esta el foro Guiño


[Imagen: banner-colabora.gif][Imagen: 8mt2wBp.jpg]

#7
0
(15-08-2014, 05:57 PM)Kevinex escribió: Todos entienden menos yo Triste

Que dudas tienes @Kevinex ??
Nunca consideres el estudio como una obligación, sino como una oportunidad para penetrar en el bello y maravilloso mundo del saber. Albert Einstein

No olvides visitar mi web sobre informática... Bitácora Informática

Una nueva comunidad, un nuevo concepto, te esperamos... Tangaria

#8
0
@Kevinex si tienes dudas publicala amigo te ayudaremos a desarrollar tu pseudocodigo con mucho gusto Sonrisa

Anexo:

Si puedes decarga el "PseInt" es un software freeware con licencia gratuita y multidioma Muy recomendado por Colegas profesores de programacion...
♪Desde hoy las emisoras las detesto, por estar tocando cancioncitas de amor♫
♪ La television hace daño! que mueran las novelas de amor♫

#9
0
Si gustan puedo colocar algunos problemas para ir calentando xD hasta llegar a tipos de casos con retorno o sin retorno Guiño
Si te gusto algun tema puedes darle 1+ a mi Reputacion


#10
0
(16-08-2014, 12:47 AM)BizarroL escribió: Si gustan puedo colocar algunos problemas para ir calentando xD hasta llegar a tipos de casos con retorno o sin retorno Guiño

Muy bien @BizarroL seria algo bueno, pero en este post, deben ser ejercicios solo de entrada y salida, sin condicionales, ni ciclos, ya que aun no llegamos allí.
Nunca consideres el estudio como una obligación, sino como una oportunidad para penetrar en el bello y maravilloso mundo del saber. Albert Einstein

No olvides visitar mi web sobre informática... Bitácora Informática

Una nueva comunidad, un nuevo concepto, te esperamos... Tangaria



Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Cuanto cobrar en desarrollo web Samo30 8 1,214 21-10-2014, 02:01 AM
Último mensaje: Samo30
  Tutorial 8.- Programación: Estructura de selección, Si, entonces Sino Samo30 2 1,267 22-08-2014, 05:47 PM
Último mensaje: Samo30
  Tutorial 7.- Programación: Verificando algoritmos con Pseint Samo30 6 1,422 17-08-2014, 02:30 AM
Último mensaje: Samo30
  Tutorial 5.- Programación: Constantes, variables y operadores Samo30 4 850 15-08-2014, 03:03 AM
Último mensaje: Samo30
  Tutorial 4.- Programación: Tipos de datos en algoritmos Samo30 3 648 14-08-2014, 11:33 PM
Último mensaje: Eloy



Usuarios navegando en este tema:
1 invitado(s)


Forum software by © MyBB Theme © Kevinex & iAndrew 2018