Pseudocódigo: una definición clara?

votos
5

El código siguiente es un ejemplo de lo que creo que calificar como pseudocódigo, ya que no se ejecuta en cualquier idioma, pero la lógica es la correcta.

string checkRubric(gpa, major)
    bool brake = false
    num lastRange
    num rangeCounter
    string assignment = unassigned
    array bus['business']= array('person a'=>array(0, 2.9), 'person b'=>array(3, 4))
    array cis['computer science']= array('person c'=>array(0, 2.9), 'person d'=>array(3, 4))
    array lib['english']= array('person e'=>array(0, 4))
    array rubric = array(bus, cis, lib)

foreach (rubric as fieldAr)
    foreach (fieldAr as field => advisorAr)
        if (major == field)
            foreach (advisorAr as advisor => gpaRangeAr)
                    rangeCounter = 0
                foreach (gpaRangeAr as gpaValue)
                    if (rangeCounter < 1)
                        lastRange = gpaValue
                    else if (gpa >= lastRange && gpa <= gpaValue)
                        assignment = advisor
                        brake = true
                        break
                    endif
                    rangeCounter++
                endforeach
                if (brake == true)
                    break
                endif
            endforeach
            if (brake == true)
                break
            endif
        endif
    endforeach
    if (brake == true)
        break
    endif
endforeach
return assignment

Durante el último par de semanas he estado tratando de crear una definición clara de lo que realmente es pseudocódigo. Es en relación con el programador o hay una sintaxis bien definida real? Digo pseudocódigo es cualquier código que no se ha ejecutado, ¿y tú? Gracias (enlaces a este tema de bienvenida)

Publicado el 22/03/2010 a las 03:43
fuente por usuario
En otros idiomas...                            


8 respuestas

votos
3

Sin vergüenza arrancado de Wikipedia :

Pseudocódigo es una descripción compacta e informal de alto nivel de un algoritmo de programación informática que utiliza las convenciones estructurales de un lenguaje de programación, pero está destinado para la lectura humana en lugar de la lectura mecánica. Pseudocódigo normalmente omite detalles que no son esenciales para la comprensión humana del algoritmo, tales como declaraciones de variables, código y subrutinas específica del sistema.

Hay una gran cantidad de código que no se ha ejecutado. Eso no quiere decir que es pseudocódigo. Su "psuedocode" tiene una gran cantidad de material extra que no programadores no van a entender. En lugar de ser pseudocódigo, su idioma "psuedocode" es muy, muy cerca de un lenguaje real.

Respondida el 22/03/2010 a las 03:51
fuente por usuario

votos
0

Mis dos centavos sobre esto:

Digo pseudocódigo es cualquier código que no se ha ejecutado, ¿y tú? Gracias (enlaces a este tema de bienvenida)

Eso no es lo que pienso cuando pensando en su definición. Un pseudocódigo son los pasos que su programa se llevará a cabo una tarea con más detalle que describe el algoritmo haría.

Una cosa en particular que me parece muy importante acerca de cómo escribir un pseudocódigo es que, tiene que ser entendido por todo el mundo con el fin de que cada individuo "puerto" a uno de idioma deseado. En otras palabras, no tiene por qué ser el lenguaje agnóstico.

Así como una crítica constructiva, no consideraría su ejemplo, como pseudocódigo, por diversas razones, pero, sobre todo porque, está utilizando la sintaxis y convenciones que se asemeja a un lenguaje de programación en particular. Digo Pseudocódigos deben ser del lenguaje de programación agnóstico con el fin de ser puerto para varios lenguajes de programación reales por diferentes personas.

EDIT: Probablemente una norma más me gustaría añadir a mi definición es que, tiene que parecerse a lenguaje humano de un lenguaje de programación. Al igual que en, iguales en lugar de ==, asignar en lugar de =. La razón detrás de esto es que, por ejemplo, operadores de asignación y la igualdad son diferentes en diferentes idiomas.

Respondida el 22/03/2010 a las 03:51
fuente por usuario

votos
7

No existe una definición fija de pseudocódigo. Es cualquier anotación que usted espera que su público entienda para obtener su punto de vista. La idea importante es que está destinado a los seres humanos para leer, no computadoras, por lo que no tiene que ser preciso. Puede incluir los detalles que son importantes para su exposición, y omitir los que no lo son.

Respondida el 22/03/2010 a las 03:52
fuente por usuario

votos
1

Pseudocódigo debería, en teoría, ser independiente aplicación. Presenta pasos lógicos en lenguaje claro de qué hacer. Está destinado a la interpretación humana, no ejecución de la máquina.

El ejemplo de OP es un poco más cerca de código real de pseudocódigo. Por ejemplo, ++no se encuentra en todos los idiomas. También podría tener un significado muy diferente en otros.

Respondida el 22/03/2010 a las 03:52
fuente por usuario

votos
1

Bueno, si no compilar código / vincular mi C ++, no va a ejecutar, por lo que no creo que "El código que no ejecute" es una definición aceptable.

Del mismo modo lenguajes de script no se ejecutan, a menudo se interpretan veces.

Mi definición de pseudo código sería:

"[Conciso] El código que es la sintaxis agnóstico, escrita para transmitir una función, comportamiento, o algoritmo.""

Respondida el 22/03/2010 a las 03:53
fuente por usuario

votos
1

Pseudo-código es ninguna explicación legible compacta, humana de un algoritmo o programa. Debido a que su programa no es legible para mí, yo diría que no es bastante pseudo-código. Aquí es un ejemplo de seudo-código:

suma def (x):
    resultado = 0
    para cada entrada en x:
        añadir la entrada actual a resultar
    resultado del informe

O bien, en un estilo ligeramente diferente:

sum (x):
   Sea X un conjunto
   Deje resultado ser un número entero que representa el resultado, inicialmente 0

   para el elemento de x:
       resultado + = item

   return result

Puede utilizar elementos de una sintaxis especial (y, de hecho, mi pseudo-código tiende a parecerse mucho a Python), pero tiene que ser comprensible por un público amplio y no debe ser obstruido por la sintaxis. Por ejemplo, yo uso "+ =", pero esto es debido a que es muy compacto y conveniente, no porque se requiere. Si has encontrado "endforeach" útil y conveniente en su exposición, que habría sido aceptable; Sin embargo, yo diría que tal cosa no tiene cabida en pseudo-código, ya que parece más que útil escatimado o explicativa.

Respondida el 22/03/2010 a las 04:01
fuente por usuario

votos
0

Pseudocódigo es lo que se escribe en la pizarra si desea transmitir sus ideas con rapidez y claridad. En la práctica, para mí, es muy parecido a un lenguaje de script sin tipo, pero con requisitos sintácticos mucho más flexible. Para mí se parece mucho a C porque, francamente, la mayoría de los programadores asimilen un lenguaje que es una variante de la sintaxis de C y así la intuición es más fácil para más personas (que solía parecerse a Pascal, pero eso es debido a que fue uno de los primeros lenguajes I aprendido en la escuela).

Respondida el 22/03/2010 a las 04:03
fuente por usuario

votos
1

Un esbozo de un programa, escrito en una forma que puede ser fácilmente convertida en sentencias de programación reales.

Pseudocódigo no se puede compilar ni ejecutado, y no hay reglas de formato o sintaxis reales. Se trata simplemente de un paso - una muy importante - en la producción del código final. El beneficio de pseudocódigo es que permite al programador concentrarse en los algoritmos sin preocuparse por todos los detalles sintácticas de un lenguaje de programación en particular.

Respondida el 29/05/2012 a las 06:42
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more