/*//////////////////////////////////////////////////////////////////////////////
INCIDENZA - di Aldo Carpanelli - v 1.1.1, agosto 2015
Il programma calcola l'incidenza di una certa grandezza in relazione a una
grandezza complessiva.
Per esempio, sappiamo dall'ISTAT che nel 2013 abbiamo avuto 3385 morti per
incidenti stradali; nello stesso anno, la popolazione nazionale residente
ammontava a 60782668 persone. Qual e' stata, dunque, l'incidenza della
mortalita' stradale sul totale della popolazione, e quale il rischio di morte
per incidente per ciascun Italiano? Il calcolo non e' certo complicato, ma
occorre ogni volta armarsi di carta e penna, o di una calcolatrice o di...
"Incidenza"!
Ah, giusto perché tu lo sappia, l'incidenza di quel tipo di mortalita' e' stata
dello 0.01%, mentre il rischio per ogni residente in Italia nel 2014 e' stato
di una probabilita' su 17956 circa.
Ho predisposto questo programma come mezzo per porre piccolo un freno alla
possibilita' di manipolare in modo sensazionalistico le cifre cosi'
vistosamente praticata dai mezzi di (in)formazione. Giusto per dire, hai
rischiato davvero cosi' tanto per via del virus ebola? Prendi "Incidenza",
"googla" qualche dato numerico e verifica in un attimo se qualcuno sta tentando
di prenderti per il naso oppure no.
//////////////////////////////////////////////////////////////////////////////*/
#include <windows.h>
#include "risorse.h"
#include "incidenza.h"
/// ===> VARIABILI GLOBALI <====================================================
HINSTANCE gHInst = NULL;
WNDPROC gWPOrig = NULL;
/// ===> DEFINIZIONE DI FUNZIONI <==============================================
BOOL CALLBACK DlgMain( HWND hwnd, UINT uMsg, WPARAM wPar, LPARAM lPar ) {
switch( uMsg ) {
case WM_INITDIALOG:
if( !Inizializza(hwnd) ) {
MessageBox( hwnd,
"Impossibile inizializzare il programma. ",
"Incidenza - errore!", MB_OK | MB_ICONHAND );
PostQuitMessage( 1 );
}
return FALSE;
case WM_COMMAND:
switch( LOWORD(wPar) ) {
case IDC_TOTALE:
case IDC_INTERESSATI:
GestisciCampiImmissione( hwnd, wPar, lPar );
break;
case IDC_DECIMALI:
GestisciComboboxDecimali( hwnd, wPar, lPar );
break;
case IDC_INFO:
Info( hwnd );
break;
case IDOK:
Calcola( hwnd );
break;
}
return TRUE;
case WM_CLOSE:
EndDialog( hwnd, 0 );
return TRUE;
}
return FALSE;
}
int APIENTRY WinMain(
HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nShowCmd) {
gHInst = hInst;
return DialogBox(
hInst, MAKEINTRESOURCE(IDD_INCIDENZA), NULL, (DLGPROC)DlgMain);
}