Precondición, postcondición

552 views
Skip to first unread message

angel

unread,
Jan 22, 2010, 7:18:23 PM1/22/10
to ProgramacionAvanzadaURBE2010
Dé un ejemplo concreto de precondición y postcondición en algún
proceso o situación de la vida real.

jairo.maldonado

unread,
Jan 24, 2010, 3:54:26 PM1/24/10
to ProgramacionAvanzadaURBE2010
On 23 ene, 01:18, angel <agper...@gmail.com> wrote:
> Dé un ejemplo concreto de precondición y  postcondición en algún
> proceso o situación de la vida real.

Precondiciones: Condiciones que definen el estado antes de la
ejecución de un programa.
Postcondiciones: Condiciones que definen el estado después de la
ejecución de un programa.
DATOS DEL USUARIO
Precondicion:
Ingresar ID_usuario
Ingresar Nombre_usuario
Postcondicion
Se almacena ID_usuario en Historial_usuario
Se almacena Nombre_usuario en Historial_usuario
Se lee Nombre_usuario de Historial_usuario
Se lee ID_usuario de Historial_usuario

RICARDO ROMERO

unread,
Jan 24, 2010, 5:45:49 PM1/24/10
to ProgramacionAvanzadaURBE2010

On 22 ene, 20:18, angel <agper...@gmail.com> wrote:
> Dé un ejemplo concreto de precondición y  postcondición en algún
> proceso o situación de la vida real.

Precondiciones y postcondiciones
Con frecuencia un programador debe comunicar de
forma precisa qué logra una función, sin indicación
alguna de cómo la función hace su trabajo.
¿Puede usted pensar en una
situación dónde esto ocurriría?
Ejemplo
Usted es el jefe de un
equipo de programadores
y quiere que uno de sus
programadores escriba
una función para una
parte de un proyecto.
AQUI ESTÁN LOS
REQUERIMIENTOS PARA
UNA FUNCIÓN QUE
NECESITO QUE TÚ
ESCRIBAS
NO ME IMPORTA
QUE MÉTODO LA
FUNCIÓN USE, EN
TANTO ESTOS
REQUERIMIENTOS
SEAN SATISFECHOS.

Precondiciones y postcondiciones
Una forma de especificar tales requerimientos es con
un par de declaraciones acerca de la función.
La declaración precondición indica qué debe ser cierto
antes de que la función sea llamada.
La declaración postcondición indica qué debe ser
cierto cuando la función finaliza su trabajo.

Ejemplo
void write_sqrt( double x)
// Precondición: x >= 0.
// Postcondición: La raíz cuadrada de x ha
// sido escrita en la salida estándar.
Ejemplo
void write_sqrt( double x)
// Precondición: x >= 0.
// Postcondición: La raíz cuadrada de x ha
// sido escrita en la salida estándar.

La precondición y la
postcondición aparecen como
comentarios en su programa.

Ejemplo
void write_sqrt( double x)
// Precondición: x >= 0.
// Postcondición: La raíz cuadrada de x ha
// sido escrita en la salida estándar.

La precondición y la
postcondición aparecen como
comentarios en su programa.
Ë En este ejemplo, la precondición
requiere que
x >= 0
sea verdad independientemente
de dónde la función sea llamada.

Ejemplo
¿Cuáles de estas llamadas a
función cumplen con la
precondición?
write_sqrt( -10 );
write_sqrt( 0 );
write_sqrt( 5.6 );

Ejemplo
¿Cuáles de estas llamadas a
función cumplen con la
precondición?
write_sqrt( -10 );
write_sqrt( 0 );
write_sqrt( 5.6 );
Las segunda y tercera llamada están bien, ya
que el argumento es mayor o igual a cero.

Ejemplo
¿Cuáles de estas llamadas a
función cumplen con la
precondición?

write_sqrt( -10 );
write_sqrt( 0 );
write_sqrt( 5.6 );
Pero la primera viola la precondición, ya que
el argumento es menor que cero...

Ejemplo
void write_sqrt( double x)
// Precondición: x >= 0.
// Postcondición: La raíz cuadrada de x ha
// sido escrita en la salida estándar.

La precondición y la
postcondición aparecen como
comentarios en su programa.
La postcondición siempre indica
el trabajo que la función ha
realizado. En este caso, cuando
la función retorna, la raíz
cuadrada de x ha sido escrita.

Otro ejemplo
bool is_vowel( char letter )
// Precondición: letter es una letra en mayúscula o
// minúscula (en el rango 'A' ... 'Z' o 'a' ... 'z') .
// Postcondición: El valor retornado por la
// funcción es verdadero si letter es una vocal;
// de otra forma el valor retornado por la función
// es falso.

Carlos Gomez

unread,
Jan 24, 2010, 11:28:29 PM1/24/10
to programacionav...@googlegroups.com

Las precondiciones y postcondiciones estan presentes en nuestro dia a dia. Un ejemplo de ellas es cuando necesitamos sacar el Factorial de un numero "X" (X!).

El factorial de un número sólo está definido para valores positivos (o cero). Por tanto, un programa que sea concebido para calcular el factorial de un número exigirá que dicho número sea mayor o igual que cero, a esto se le conoce como Precondición;  el resultado de un factorial es siempre un entero mayor o igual que 1. De este modo un programa que calcula el factorial de un número X tendría como postcondiciones que el resultado debe ser un entero y que éste debe ser mayor o igual que 1.

Jose Gabriel

unread,
Jan 25, 2010, 5:39:46 PM1/25/10
to ProgramacionAvanzadaURBE2010
Las precondiciones son un conjunto de condiciones que deben ser
ciertas antes de iniciar el caso de uso. Es muy común que la
precondición sea el resultado exitoso de un caso de uso anterior

Las poscondiciones indican el estado final de las cosas después de que
el caso de uso termine exitosamente a través de cualquiera de sus
flujos. No son acciones del sistema sino resultados de acciones

Fernando

unread,
Jan 25, 2010, 5:45:01 PM1/25/10
to ProgramacionAvanzadaURBE2010
Precondición:

-Tiene que cumplirse como requisito para ejecutar el método al que
está asociada.
-En general se pueden expresar varias fórmulas lógicas. La
Precondición es el AND de todas las formulas.
Ejemplo:

si (A>0 AND B> 0);

A*B=X;

Postcondición:
Tienen que cumplirse como garantía de lo que la función ha ejecutado.

Guardar X en Resultado.

Reply all
Reply to author
Forward
0 new messages