Matematica Informatica Programmazione il Controllo degli Errori

... trapaninfo.it Tweet

Matematica Informatica Programmazione il Controllo degli Errori














Matematica Informatica Programmazione il Controllo degli Errori

INFORMATICA - PROGRAMMAZIONE IL CONTROLLO DEGLI ERRORI

DONATE

INFORMATICA - PROGRAMMAZIONE: IL CONTROLLO DEGLI ERRORI

IL PROBLEMA DELL'INSERIMENTO DI DATI ERRATI

Se l'utente inserisce dei dati errati alle richieste del programma si possono verificare degli errori di esecuzione oppure il programma può produrre dei risultati privi di significato. L'utente potrebbe inserire dei valori non ammessi o non previsti dal procedimento, o valori apparentemente ammessi ma che causano errori di calcolo, oppure potrebbe commettere semplicemente degli errori di scrittura. Il programma deve quindi effettuare gli opportuni controlli per individuare e segnalare i casi di errore. Se l'errore non viene segnalato dal programma, ma causa un errore durante l'esecuzione, il programma si blocca dando un messaggio di sistema; questa situazione anomala può mettere in crisi l'utente che non si rende conto del motivo di quanto è successo. Se invece il programma riesce comunque a terminare, può dare in output risultati non corretti e l'utente potrebbe non accorgersene nemmeno. ESEMPIO 20 Questo programma permette di eseguire un'operazione a scelta tra l'addizione e la sottrazione; richiede all'utente due operandi e il simbolo dell'operazione da eseguire; come simbolo di operazione è possibile inserire soltanto uno dei caratteri "+" o "-". Il programma deve quindi controllare quale carattere viene inserito alla richiesta del simbolo di operazione ed eseguire l'operazione soltanto se l'inserimento è corretto. Descrizione delle variabili

+----------------------------------------------------------------+
¦  NOME     ¦   TIPO      ¦      I/O         ¦    SIGNIFICATO    ¦
+-----------+-------------+------------------+-------------------¦
¦  NUMERO1  ¦numero intero¦      input       ¦ primo operando    ¦
¦  NUMERO2  ¦numero intero¦      input       ¦ secondo operando  ¦
¦OPERAZIONE ¦alfanumerico ¦      input       ¦ simbolo di        ¦
¦           ¦(1 carattere)¦                  ¦ operazione: valori¦
¦           ¦             ¦                  ¦ ammessi "+" e "-" ¦
¦ RISULTATO ¦numero reale ¦       output     ¦ risultato         ¦
¦           ¦             ¦                  ¦ dell'operazione   ¦
¦           ¦             ¦                  ¦ richiesta         ¦
+----------------------------------------------------------------+
Trapani Flow chart Esempio 20 (prima parte) Trapani Flow chart Esempio 20 (seconda parte) Pseudocodifica (vedi Figura) 1 inizio 2 emissione richiesta primo operando 3 lettura NUMERO1 4 emissione richiesta secondo operando 5 lettura NUMERO2 6 emissione richiesta simbolo operazione 7 lettura OPERAZIONE 8 se OPERAZIONE = "+" o "-" 9 se OPERAZIONE = "+" allora 10 RISULTATO = NUMERO1 + NUMERO2 11 fine se 12 se OPERAZIONE = "-" allora 13 RISULTATO = NUMERO1 - NUMERO2 14 fine se 15 emissione RISULTATO 16 altrimenti 17 emissione messaggio errore 18 fine se 19 fine da 2 a 5 Inserimento degli operandi. 6-7 Inserimento del simbolo di operazione; si possono inserire solo i caratteri "+" o "-". 8 Controllo che il carattere inserito sia uno dei due simboli ammessi. da 9 a 15 Istruzioni da eseguire se il simbolo inserito è corretto. da 9 a 11 Esecuzione dell'addizione se il simbolo inserito è il "+". da 12 a 14 Esecuzione della sottrazione se il simbolo inserito è il "-". 15 Emissione del risultato dell'addizione o della sottrazione. 17 Se il carattere inserito non è corretto non viene eseguita nessuna operazione e viene segnalato un messaggio di errore.

+----------------------------------------------------------------+
¦ Esempi di esecuzione                                           ¦
¦                                                                ¦
¦ Inserire il primo operando                                     ¦
¦ ? 12                                                           ¦
¦ Inserire il secondo operando                                   ¦
¦ ? 34                                                           ¦
¦ Inserire il simbolo di operazione (+, -)                       ¦
¦ ? +                                                            ¦
¦ Il risultato è    46                                           ¦
¦                                                                ¦
¦ Inserire il primo operando                                     ¦
¦ ? 3                                                            ¦
¦ Inserire il secondo operando                                   ¦
¦ ? 18                                                           ¦
¦ Inserire il simbolo di operazione (+, -)                       ¦
¦ ? x                                                            ¦
¦ Operazione non prevista                                        ¦
+----------------------------------------------------------------+
Commenti Non sarebbe corretta una soluzione di questo tipo: inizio emissione richiesta primo operando lettura NUMERO1 emissione richiesta secondo operando lettura NUMERO2 emissione richiesta simbolo operazione lettura OPERAZIONE se OPERAZIONE = "+" allora RISULTATO = NUMERO1 + NUMERO2 fine se se OPERAZIONE = "-" allora RISULTATO = NUMERO1 - NUMERO2 fine se emissione RISULTATO fine Infatti, anche se le operazioni vengono eseguite solo se è stato introdotto esattamente uno dei 2 simboli previsti, il risultato viene stampato in ogni caso; se il simbolo inserito non è corretto viene emesso per la variabile RISULTATO un valore casuale che dipende dallo stato della memoria; il programma quindi non avverte l'utente che si è verificato un errore e il risultato potrebbe anche essere preso per buono.

IL CONTROLLO DI VALORI PARTICOLARI O COMPRESI IN INTERVALLI DI DEFINIZIONE

Il dato da inserire può avere soltanto pochi valori ammessi (per esempio i caratteri "S" o "N" per una risposta, o i numeri da 1 a 5 per la scelta di una tra 5 voci di menu), oppure molti valori, ma all'interno di un intervallo (per esempio i numeri da 1 a 365 per i giorni dell'anno, o quelli tra 0 e 100 per l'età di una persona), oppure può essere un valore qualsiasi di un intervallo che però ne esclude alcuni (qualsiasi numero intero tranne lo zero o qualsiasi carattere tranne il punto). Il programma deve controllare che il dato inserito sia valido in modo che l'esecuzione proceda correttamente.

LA POSSIBILITA' DI CORREGGERE GLI ERRORI

Se l'inserimento di un dato non corretto fa terminare il programma con un messaggio di errore, per proseguire bisogna rieseguire da capo il programma, inserendo i dati corretti. Se un programma è complesso e chiede di inserire molti dati questo procedimento non è adatto; ogni volta che si commette un errore si dovrebbe ricominciare da capo, commettendo facilmente altri errori. Per evitare questo inconveniente, il programma deve permettere di correggere il dato quando riscontra un errore nell'inserimento. In questo caso per il controllo non basta una struttura condizionale del tipo inizio lettura dato controllo dato se dato non corretto allora lettura dato fine se elaborazione dato fine infatti anche il secondo dato introdotto potrebbe essere errato; è necessario invece utilizzare per la lettura del dato un ciclo che termina soltanto quando il dato introdotto è corretto. inizio ripeti lettura dato controllo dato finché il dato è corretto elaborazione dato fine ESEMPIO 21 Questo programma, come il precedente, permette di eseguire un'operazione a scelta tra l'addizione e la sottrazione; richiede all'utente due operandi e il simbolo dell'operazione da eseguire; come simbolo di operazione è possibile inserire soltanto uno dei caratteri "+" o "-". Questa versione del programma, però, se il carattere inserito come simbolo di operazione non è uno di quelli ammessi, permette di correggerlo; non è quindi necessario rilanciare il programma ed inserire nuovamente anche gli operandi. Trapani Flow chart Esempio 21 (prima parte) Trapani Flow chart Esempio 21 (seconda parte) Pseudocodifica (vedi Figure) 1 inizio 2 emissione richiesta primo operando 3 lettura NUMERO1 4 emissione richiesta secondo operando 5 lettura NUMERO2 6 ripeti 7 emissione richiesta simbolo operazione 8 lettura OPERAZIONE 9 finché OPERAZIONE = "+" o OPERAZIONE = "-" 10 se OPERAZIONE = "+" allora 11 RISULTATO = NUMERO1 + NUMERO2 12 fine se 13 se OPERAZIONE = "-" allora 14 RISULTATO = NUMERO1 - NUMERO2 15 fine se 16 emissione RISULTATO 17 fine da 2 a 5 Inserimento degli operandi. da 6 a 9 Inserimento del simbolo di operazione; si possono inserire solo i caratteri "+" o "-". La richiesta del simbolo di operazione viene ripetuta finché non viene inserito un simbolo ammesso. Il programma può continuare solo quando il dato inserito è corretto. da 10 a 16 Esecuzione dell'operazione richiesta e stampa del risultato; queste istruzioni vengono eseguite solo dopo aver inserito un simbolo corretto. da 10 a 12 Esecuzione dell'addizione se il simbolo inserito è il "+". da 13 a 15 Esecuzione della sottrazione se il simbolo inserito è il "-". 15 Emissione del risultato dell'addizione o della sottrazione.

+----------------------------------------------------------------+
¦ Esempi di esecuzione                                           ¦
¦                                                                ¦
¦ Inserire il primo operando                                     ¦
¦ ? 37                                                           ¦
¦ Inserire il secondo operando                                   ¦
¦ ? 12                                                           ¦
¦ Inserire il simbolo di operazione (+, -)                       ¦
¦ ? -                                                            ¦
¦ Il risultato è    25                                           ¦
¦                                                                ¦
¦ Inserire il primo operando                                     ¦
¦ ? 25                                                           ¦
¦ Inserire il secondo operando                                   ¦
¦ ? 7                                                            ¦
¦ Inserire il simbolo di operazione (+, -)                       ¦
¦ ? /                                                            ¦
¦ Inserire il simbolo di operazione (+, -)                       ¦
¦ ? x                                                            ¦
¦ Inserire il simbolo di operazione (+, -)                       ¦
¦ ? +                                                            ¦
¦ Il risultato è    32                                           ¦
+----------------------------------------------------------------+
Commenti Se si inserisce un simbolo non previsto, il programma continua a richiedere il simbolo di operazione fino a quando viene inserito un simbolo corretto. Il programma (o le istruzioni del manuale) devono spiegare chiaramente quali siano i valori ammessi per una richiesta in modo che l'utente non debba procedere per tentativi. ESEMPIO 22 Questo programma ripete un procedimento (in questo caso la lettura e scrittura di un dato, ma che potrebbe essere di qualsiasi tipo) finché l'utente risponde con il carattere "n" alla domanda di continuazione. Se la risposta alla domanda di continuazione è qualsiasi altro carattere (anche "N" maiuscolo) il ciclo viene ripetuto ancora. Si potrebbe verificare anche il caso contrario: il programma prosegue solo quando si risponde "s" alla domanda di continuazione; qualsiasi altro carattere fa terminare il programma. Un errore non correggibile nell'inserimento della risposta ad un test di continuazione di un ciclo può richiedere di dover rieseguire il programma (con una lunga ripetizione del procedimento poiché potrebbero essere già stati inseriti molti dati). La risposta alla domanda di continuazione deve quindi essere controllata e se non è uno dei simboli ammessi deve essere permesso ripetere l'inserimento della risposta. Descrizione delle variabili

+----------------------------------------------------------------+
¦  NOME    ¦    TIPO      ¦      I/O         ¦    SIGNIFICATO    ¦
+----------+--------------+------------------+-------------------¦
¦  DATO    ¦ numero intero¦   input/output   ¦  dato da stampare ¦
¦ RISPOSTA ¦ alfanumerico ¦     input        ¦  risposta alla    ¦
¦          ¦ (1 carattere)¦                  ¦  domanda di       ¦
¦          ¦              ¦                  ¦  continuazione;   ¦
¦          ¦              ¦                  ¦  le risposte      ¦
¦          ¦              ¦                  ¦  possibili sono   ¦
¦          ¦              ¦                  ¦  "s" o "n"        ¦
+----------------------------------------------------------------+
Trapani Flow chart Esempio 22 Pseudocodifica (vedi Figura) 1 inizio 2 ripeti 3 emissione richiesta dato 4 lettura DATO 5 emissione DATO 6 ripeti 7 emissione richiesta di continuazione 8 lettura RISPOSTA 9 finché RISPOSTA = "s" o RISPOSTA = "n" 10 finché RISPOSTA = "n" 11 fine da 2 a 10 Ripetizione del procedimento finché la risposta alla domanda di continuazione è il carattere "n". da 3 a 5 Procedimento da ripetere; lettura e stampa di un numero. da 6 a 9 Richiesta della risposta alla domanda di continuazione del procedimento; si ripete la richiesta della risposta finché non viene inserito uno dei due caratteri ammessi "s" o "n".

+----------------------------------------------------------------+
¦ Esempi di esecuzione                                           ¦
¦                                                                ¦
¦ Inserire il dato                                               ¦
¦ ? 6                                                            ¦
¦ Il dato inserito è   6                                         ¦
¦ Ci sono ancora dati?                                           ¦
¦ ? s                                                            ¦
¦ Inserire il dato                                               ¦
¦ ? 78                                                           ¦
¦ Il dato inserito è   78                                        ¦
¦ Ci sono ancora dati?                                           ¦
¦ ? n                                                            ¦
¦                                                                ¦
¦ Inserire il dato                                               ¦
¦ ? 19                                                           ¦
¦ Il dato inserito è   19                                        ¦
¦ Ci sono ancora dati?                                           ¦
¦ ? S                                                            ¦
¦ Ci sono ancora dati?                                           ¦
¦ ? x                                                            ¦
¦ Ci sono ancora dati?                                           ¦
¦ ? s                                                            ¦
¦ Inserire il dato                                               ¦
¦ ? 45                                                           ¦
¦ Il dato inserito è   45                                        ¦
¦ Ci sono ancora dati? n                                         ¦
+----------------------------------------------------------------+

LA POSSIBILITA' DI INTERRUZIONE DEL CICLO DI CONTROLLO

Non sempre è sufficiente che il programma permetta di correggere il dato finché si inserisce un valore corretto; se l'utente continua a immettere valori errati il programma non riesce a proseguire; per far terminare comunque il programma non resterebbe altro da fare che interromperlo brutalmente (sul personal, in genere, si possono interrompere i programmi usando la combinazione di tasti Ctrl C o Ctrl Break; su sistemi più grossi si possono inviare comandi dalla consolle del sistema per interrompere un processo indesiderato). La soluzione migliore è che il programma preveda anche la possibilità di terminare quando viene inserito un certo valore; perché questo metodo sia utile, comunque, deve essere segnalato in modo evidente all'utente. Lo schema del programma dovrà quindi essere del tipo: inizio ripeti lettura dato controllo dato finché il dato è corretto o è il segnale di uscita se non è il segnale di uscita allora elaborazione fine se fine ESEMPIO 23 Anche questo programma permette di eseguire un'operazione a scelta tra l'addizione e la sottrazione; richiede all'utente due operandi e il simbolo dell'operazione da eseguire; i simboli delle operazioni ammesse sono "+" e "-". Se il carattere inserito come simbolo di operazione non è uno di quelli ammessi, permette di correggerlo; permette però anche di far terminare il programma inserendo il simbolo "#". Descrizione delle variabili

+----------------------------------------------------------------+
¦  NOME    ¦    TIPO      ¦      I/O         ¦    SIGNIFICATO    ¦
+----------+--------------+------------------+-------------------¦
¦  NUMERO1 ¦ numero intero¦      input       ¦ primo operando    ¦
¦  NUMERO2 ¦ numero intero¦      input       ¦ secondo operando  ¦
¦OPERAZIONE¦ alfanumerico ¦      input       ¦ simbolo di        ¦
¦          ¦ (1 carattere)¦                  ¦ operazione: valori¦
¦          ¦              ¦                  ¦ ammessi "+", "-" e¦
¦          ¦              ¦                  ¦ "#"               ¦
¦ RISULTATO¦ numero reale ¦      output      ¦ risultato della   ¦
¦          ¦              ¦                  ¦ operazione        ¦
¦          ¦              ¦                  ¦ richiesta         ¦
+----------------------------------------------------------------+
Trapani Flow chart Esempio 23 Pseudocodifica (vedi Figura) 1 inizio 2 emissione richiesta primo operando 3 lettura NUMERO1 4 emissione richiesta secondo operando 5 lettura NUMERO2 6 ripeti 7 emissione richiesta simbolo operazione 8 lettura OPERAZIONE 9 finché OPERAZIONE = "+" o OPERAZIONE "-" o operazione = "#" 10 se OPERAZIONE > "#" allora 11 se OPERAZIONE = "+" allora 12 RISULTATO = NUMERO1 + NUMERO2 13 fine se 14 se OPERAZIONE = "-" allora 15 RISULTATO = NUMERO1 - NUMERO2 16 fine se 17 emissione RISULTATO 18 fine se 19 fine da 2 a 5 Inserimento degli operandi. da 6 a 9 Inserimento del simbolo di operazione; si possono inserire i caratteri "+", "-" o "#". La richiesta del simbolo di operazione viene ripetuta finché non viene inserito un simbolo ammesso. Il programma può continuare solo quando il dato inserito è corretto. 8 Controllo se il carattere inserito è il simbolo che richiede la terminazione del programma senza esecuzione dell'operazione. Se il carattere inserito è "#" il programma termina senza eseguire altre istruzioni. da 11 a 17 Istruzioni da eseguire se il simbolo inserito è "+" o "-". da 11 a 13 Esecuzione dell'addizione se il simbolo inserito è il "+". da 14 a 16 Esecuzione della sottrazione se il simbolo inserito è il "-". 15 Emissione del risultato dell'addizione o della sottrazione.

+----------------------------------------------------------------+
¦ Esempi di esecuzione                                           ¦
¦                                                                ¦
¦ Inserire il primo operando                                     ¦
¦ ? 46                                                           ¦
¦ Inserire il secondo operando                                   ¦
¦ ? 27                                                           ¦
¦ Inserire il simbolo di operazione (+, -, # per interrompere)   ¦
¦ ? +                                                            ¦
¦ Il risultato è    73                                           ¦
¦ Inserire il primo operando                                     ¦
¦ ? 34                                                           ¦
¦ Inserire il secondo operando                                   ¦
¦ ? 55                                                           ¦
¦ Inserire il simbolo di operazione (+, -, # per interrompere)   ¦
¦ ? x                                                            ¦
¦ Inserire il simbolo di operazione (+, -, # per interrompere)   ¦
¦ ? /                                                            ¦
¦ Inserire il simbolo di operazione (+, -, # per interrompere)   ¦
¦ ? +                                                            ¦
¦ Il risultato è    89                                           ¦
¦ Inserire il primo operando                                     ¦
¦ ? 68                                                           ¦
¦ Inserire il secondo operando                                   ¦
¦ ? 32                                                           ¦
¦ Inserire il simbolo di operazione (+, -, # per interrompere)   ¦
¦ ?  /                                                           ¦
¦ Inserire il simbolo di operazione (+, -, # per interrompere)   ¦
¦ ? /                                                            ¦
¦ Inserire il simbolo di operazione (+, -, # per interrompere)   ¦
¦ ? #                                                            ¦
+----------------------------------------------------------------+

IL PROBLEMA DELLA CONFERMA DEI DATI

Il programma può controllare se i valori inseriti non corrispondono a valori ammessi; non è possibile in nessun modo però controllare se l'utente abbia commesso un errore nello scrivere un dato, cioè se abbia inserito un dato ancora valido ma non corrispondente a quello che voleva effettivamente inserire. L'unica soluzione a questo problema è riemettere i dati inseriti dall'utente e chiedergli di confermarne i valori. Se l'utente conferma l'inserimento il programma prosegue, altrimenti permette la correzione dei dati e ne chiede nuovamente la conferma. inizio ripeti emissione richiesta dati inserimento dati emissione richiesta conferma lettura risposta finché risposta = "s" elaborazione fine ESEMPIO 24 Questo programma richiede tre numeri e ne esegue la moltiplicazione. Il risultato viene calcolato soltanto dopo che l'utente ha confermato i valori inseriti. Descrizione delle variabili

+----------------------------------------------------------------+
¦  NOME    ¦    TIPO      ¦      I/O         ¦    SIGNIFICATO    ¦
+----------+--------------+------------------+-------------------¦
¦ A, B, C  ¦ numeri interi¦   input/output   ¦ valori da         ¦
¦          ¦              ¦                  ¦ moltiplicare      ¦
¦ PRODOTTO ¦ numero reale ¦      output      ¦ prodotto dei      ¦
¦          ¦              ¦                  ¦ valori inseriti   ¦
¦ RISPOSTA ¦ alfanumerico ¦      input       ¦ conferma          ¦
¦          ¦ (1 carattere)¦                  ¦ della correttezza ¦
¦          ¦              ¦                  ¦ dei dati          ¦
+----------------------------------------------------------------+
Trapani Flow chart Esempio 24 (prima parte) Trapani Flow chart Esempio 24 (seconda parte) Pseudocodifica (vedi Figura) 1 inizio 2 ripeti 3 emissione richiesta valori 4 lettura A 5 lettura B 6 lettura C 7 emissione A B C 8 emissione richiesta conferma 9 lettura RISPOSTA 10 finché risposta = "s" 11 PRODOTTO = A * B * C 12 emissione PRODOTTO 13 fine da 2 a 10 Inserimento dei fattori da moltiplicare. L'inserimento viene ripetuto finché l'utente non conferma i dati inseriti. da 3 a 6 Inserimento dei tre fattori da moltiplicare. 7 Emissione dei valori inseriti perché l'utente possa controllarne la correttezza. 8-9 Richiesta della conferma dei dati. 11 Calcolo del prodotto; viene eseguito soltanto dopo che i dati sono stati confermati. 12 Emissione del risultato.

+----------------------------------------------------------------+
¦ Esempi di esecuzione                                           ¦
¦                                                                ¦
¦ Inserire tre numeri interi                                     ¦
¦ ? 4                                                            ¦
¦ ? 15                                                           ¦
¦ ? 6                                                            ¦
¦ I dati inseriti sono   4  15  6                                ¦
¦ I dati sono corretti? (s/n)                                    ¦
¦ ? s                                                            ¦
¦ Il prodotto è              360                                 ¦
¦ Inserire tre numeri interi                                     ¦
¦ ? 7                                                            ¦
¦ ? 13                                                           ¦
¦ ? 25                                                           ¦
¦ I dati inseriti sono   7  13  25                               ¦
¦ I dati sono corretti? (s/n)                                    ¦
¦ ? n                                                            ¦
¦ Inserire tre numeri interi                                     ¦
¦ ? 7                                                            ¦
¦ ? 3                                                            ¦
¦ ? 25                                                           ¦
¦ I dati inseriti sono   7  3  25                                ¦
¦ I dati sono corretti? (s/n)                                    ¦
¦ ? s                                                            ¦
¦ Il prodotto è   525                                            ¦
+----------------------------------------------------------------+
Commenti Tenendo conto di quello che è stato detto negli esempi precedenti bisognerebbe anche controllare che la risposta alla domanda di conferma sia un dato valido ("s" o "n").

GLI ERRORI DOVUTI ALLA RAPPRESENTAZIONE FINITA DEI NUMERI

Il fatto che i numeri siano rappresentati con un numero finito di bit, e che quindi soltanto i valori di un certo intervallo siano ammessi, può causare degli errori di esecuzione al momento dell'inserimento dei valori o durante le operazioni di calcolo.

I NUMERI IN INPUT

Se in una variabile numerica al momento dell'input viene inserito un valore esterno all'intervallo di definizione si verifica un errore di esecuzione. Non è semplice evitare che si verifichino errori di questo tipo. Un modo potrebbe essere quello di utilizzare per l'immissione un dato di un tipo più ampio e poi convertire il valore al tipo desiderato; per esempio si potrebbe inserire un numero intero in una variabile di tipo reale e verificare se tale valore è compreso nell'intervallo di definizione dei numeri interi, o addirittura utilizzare una variabile alfanumerica e poi controllare che il dato inserito possa essere considerato un valore numerico.

CONTROLLO CHE UNA STRINGA SIA UN VALORE NUMERICO

Per stabilire che i caratteri inseriti in un campo alfanumerico possano costituire un valore numerico bisogna controllare che soddisfino queste condizioni: - tutti i caratteri sono solamente cifre numeriche o il punto decimale; il primo carattere può essere anche il segno + o -; - può esserci un solo punto decimale. Per poter utilizzare il dato introdotto in operazioni di calcolo bisogna poi trasformare il dato in un valore numerico; il valore del dato introdotto può essere calcolato moltiplicando ogni cifra, della parte intera o decimale, per una opportuna potenza di dieci e sommando tutti i prodotti ottenuti; se il segno è negativo si deve invertire il valore ottenuto (alcuni linguaggi offrono funzioni per convertire le stringhe in numeri e viceversa).

I NUMERI NEI CALCOLI

Anche se i valori iniziali sono compresi nell'intervallo di definizione ci possono essere degli errori dovuti al fatto che, attraverso dei calcoli, si ottengono dei valori non ammessi. Per i numeri interi si potrebbe controllare, prima di eseguire l'operazione, che il risultato sia ancora un valore interno all'intervallo considerato. Per esempio, se l'intervallo di definizione dei numeri interi va da -32768 a 32767 e si deve calcolare il cubo di un numero, bisogna che il valore di partenza sia compreso tra -32 e 31. Se si deve calcolare la somma di due numeri interi bisogna effettuare un controllo in modo relativo tra i i dati da sommare. Se il primo dato è positivo, il secondo deve essere minore della differenza tra il valore massimo e il primo dato. Se il primo dato è negativo, il secondo deve essere maggiore della differenza tra il valore minimo e il primo dato. Questo controllo vale anche in procedimenti ripetuti, per esempio per una somma di più valori. Molto più complesso diventa il problema del controllo degli errori utilizzando numeri floating point. Non tutti i numeri reali sono rappresentabili come numeri di macchina anche all'interno dell'intervallo di definizione, a causa del numero limitato di cifre utilizzabili (precisione del numero); perdere alcune cifre significative della mantissa (parte decimale di un logaritmo) porta ad errori di arrotondamento che si possono verificare al momento dell'inserimento dei dati o per effetto di operazioni aritmetiche e che possono portare a risultati errati.

DONATE

eXTReMe Tracker

Shiny Stat

free counters

GBM W3C

Ai sensi dell'art. 5 della legge 22 aprile 1941 n. 633 sulla protezione del diritto d'autore, i testi degli atti ufficiali dello Stato e delle amministrazioni pubbliche, italiane o straniere, non sono coperti da diritti d'autore. Il copyright, ove indicato, si riferisce all'elaborazione e alla forma di presentazione dei testi stessi. L'inserimento di dati personali, commerciali, collegamenti (link) a domini o pagine web personali, nel contesto delle Yellow Pages Trapaninfo.it (TpsGuide), deve essere liberamente richiesto dai rispettivi proprietari. In questa pagina, oltre ai link autorizzati, vengono inseriti solo gli indirizzi dei siti, recensiti dal WebMaster, dei quali i proprietari non hanno richiesto l'inserimento in trapaninfo.it. Il WebMaster, in osservanza delle leggi inerenti i diritti d'autore e le norme che regolano la proprietà industriale ed intellettuale, non effettua collegamenti in surface deep o frame link ai siti recensiti, senza la dovuta autorizzazione. Framing e Deep Link: che cosa è lecito - Avvocato Gabriele FAGGIOLI. Il webmaster, proprietario e gestore dello spazio web nel quale viene mostrata questa URL, non è responsabile dei siti collegati in questa pagina. Le immagini, le foto e i logos mostrati appartengono ai legittimi proprietari. La legge sulla privacy, la legge sui diritti d'autore, le regole del Galateo della Rete (Netiquette), le norme a protezione della proprietà industriale ed intellettuale, limitano il contenuto delle Yellow Pages Trapaninfo.it Portale Provider Web Brochure e Silloge del web inerente Trapani e la sua provincia, ai soli dati di utenti che ne hanno liberamente richiesto l'inserimento. Chiunque, vanti diritti o rileva che le anzidette regole siano state violate, può contattare il WebMaster. Note legali trapaninfo.it contiene collegamenti a siti controllati da soggetti diversi i siti ai quali ci si può collegare non sono sotto il controllo di trapaninfo.it che non è responsabile dei loro contenuti. trapaninfo.it

Check google pagerank for trapaninfo.it