so-un-bot/Ingegneria del Software/0722_25/quest.txt
2023-01-02 01:33:38 +01:00

7 lines
No EOL
518 B
Text

Pre-condizioni, invarianti e post-condizioni di un programma possono essere definiti usando la macro del C assert() (in <assert.h>). In particolare, assert(expre) non fa nulla se l'espressione expre vale TRUE (cioè non è 0), stampa un messaggio di errore su stderr e abortisce l'esecuzione del programma altrimenti.
Si consideri la funzione C
int f(in x, int y) { ..... }
Quale delle seguenti assert esprime la pre-condizione che entrambi gli argomenti di f sono non-negativi ed almeno uno di loro è positivo ?