Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Incidenza - main.cpp

main.cpp

Caricato da: AldoBaldo
Scarica il programma completo

  1. /*//////////////////////////////////////////////////////////////////////////////
  2.  INCIDENZA - di Aldo Carpanelli - v 1.1.1, agosto 2015
  3.  
  4.  Il programma calcola l'incidenza di una certa grandezza in relazione a una
  5.  grandezza complessiva.
  6.  Per esempio, sappiamo dall'ISTAT che nel 2013 abbiamo avuto 3385 morti per
  7.  incidenti stradali; nello stesso anno, la popolazione nazionale residente
  8.  ammontava a 60782668 persone. Qual e' stata, dunque, l'incidenza della
  9.  mortalita' stradale sul totale della popolazione, e quale il rischio di morte
  10.  per incidente per ciascun Italiano? Il calcolo non e' certo complicato, ma
  11.  occorre ogni volta armarsi di carta e penna, o di una calcolatrice o di...
  12.  "Incidenza"!
  13.  Ah, giusto perché tu lo sappia, l'incidenza di quel tipo di mortalita' e' stata
  14.  dello 0.01%, mentre il rischio per ogni residente in Italia nel 2014 e' stato
  15.  di una probabilita' su 17956 circa.
  16.  Ho predisposto questo programma come mezzo per porre piccolo un freno alla
  17.  possibilita' di manipolare in modo sensazionalistico le cifre cosi'
  18.  vistosamente praticata dai mezzi di (in)formazione. Giusto per dire, hai
  19.  rischiato davvero cosi' tanto per via del virus ebola? Prendi "Incidenza",
  20.  "googla" qualche dato numerico e verifica in un attimo se qualcuno sta tentando
  21.  di prenderti per il naso oppure no.
  22. //////////////////////////////////////////////////////////////////////////////*/
  23.  
  24. #include <windows.h>
  25. #include "risorse.h"
  26. #include "incidenza.h"
  27.  
  28. /// ===> VARIABILI GLOBALI <====================================================
  29.  
  30. HINSTANCE gHInst = NULL;
  31. WNDPROC gWPOrig  = NULL;
  32.  
  33. /// ===> DEFINIZIONE DI FUNZIONI <==============================================
  34.  
  35. BOOL CALLBACK DlgMain( HWND hwnd, UINT uMsg, WPARAM wPar, LPARAM lPar ) {
  36.     switch( uMsg )     {
  37.         case WM_INITDIALOG:
  38.             if( !Inizializza(hwnd) ) {
  39.                 MessageBox( hwnd,
  40.                     "Impossibile inizializzare il programma. ",
  41.                     "Incidenza - errore!", MB_OK | MB_ICONHAND );
  42.                 PostQuitMessage( 1 );
  43.             }
  44.             return FALSE;
  45.  
  46.         case WM_COMMAND:
  47.             switch( LOWORD(wPar) ) {
  48.                 case IDC_TOTALE:
  49.                 case IDC_INTERESSATI:
  50.                     GestisciCampiImmissione( hwnd, wPar, lPar );
  51.                     break;
  52.  
  53.                 case IDC_DECIMALI:
  54.                     GestisciComboboxDecimali( hwnd, wPar, lPar );
  55.                     break;
  56.  
  57.                 case IDC_INFO:
  58.                     Info( hwnd );
  59.                     break;
  60.  
  61.                 case IDOK:
  62.                     Calcola( hwnd );
  63.                     break;
  64.             }
  65.             return TRUE;
  66.  
  67.         case WM_CLOSE:
  68.             EndDialog( hwnd, 0 );
  69.             return TRUE;
  70.     }
  71.  
  72.     return FALSE;
  73. }
  74.  
  75.  
  76. int APIENTRY WinMain(
  77.     HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nShowCmd) {
  78.     gHInst = hInst;
  79.  
  80.     return DialogBox(
  81.         hInst, MAKEINTRESOURCE(IDD_INCIDENZA), NULL, (DLGPROC)DlgMain);
  82. }