Mi sto dannando con il meteo postato il 07/10/2015 01:02:38 nel forum programmazione, gdrcd, open source, hosting
Salve tutti, sto cercando di sistemare un problema con il meteo della land, vorrei impostare un massimo di temperatura che di tanto in tanto mi impazzisce e mi arrivano 52 gradi ( probabilmente essendo io ancora non esperto di programmazione ho toppato qualcosa ) c'è un modo per risolvere?
vi posto qui quello che ho attualmente tralasciando vento, lune che funziona tutto a meraviglia e la prima parte che è solo l'apertura del css
<?
$ore=strftime("%H");
$minuti=strftime("%M");
$mese=strftime("%m");
$giorno=strftime("%j");
$caso=((floor($giorno/3))%2)+1;
switch ($mese)
{
case 1: $minima=0; break;
case 2: $minima=4; break;
case 3: $minima=8; break;
case 4: $minima=12; break;
case 5: $minima=16; break;
case 6: $minima=12; break;
case 7: $minima=24; break;
case 8: $minima=22; break;
case 9: $minima=20; break;
case 10: $minima=20; break;
case 11: $minima=4; break;
case 12: $minima=0; break;
}
if($ore<14){$gradi=$minima+(floor($ore/3)*$caso);}
else{ $gradi=$minima+(4*$caso)-((floor($ore/3)*$caso))+(3*$caso);}
$caso=($giorno+($ora/4))%12;
switch ($caso)
{
case 0: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento debole di Scirocco (S-E)" align="center">"; break;
case 1: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento debole di Maestrale (N-O)" align="center">"; break;
case 2: $meteo="<img src="img/meteo/variabile.png" width="25" height="32" title="Variabile. Vento forte di Libeccio (S-O)" align="center">"; break;
case 3: $meteo="<img src="img/meteo/variabile.png" width="25" height="32" title="Variabile. Vento debole di Grecale (N-E)" align="center">"; break;
case 4: $meteo="<img src="img/meteo/pioggia.png" width="25" height="32" title="Pioggia. Vento Assente" align="center">"; break;
case 5: $meteo="<img src="img/meteo/nuvoloso.png" width="25" height="32" title="Nuvoloso. Vento forte di Mezzogiorno (S)" align="center">"; break;
case 6: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento forte di Mezzogiorno (S)" align="center">"; break;
case 7: $meteo="<img src="img/meteo/variabile.png" width="25" height="32" title="Variabile. Vento forte di Maestrale (N-O)" align="center">"; break;
case 8: $meteo="<img src="img/meteo/pioggia.png" width="25" height="32" title="Pioggia. Vento debole di Maestrale (N-O)" align="center">"; break;
case 9: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento debole di Libeccio (S-W)" align="center">"; break;
case 10: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento forte di Grecale (N-E)"align="center">"; break;
case 11: $meteo="<img src="img/meteo/temporale.png" width="25" height="32" title="Temporale. Vento forte di Maestrale (N-O)" align="center">"; break;
case 12: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento Assente" align="center">"; break;
case 13: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento forte di Scirocco (S-E)" align="center">"; break;
case 14: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento debole di Ponente (O)" align="center">"; break;
case 15: $meteo="<img src="img/meteo/variabile.png" width="25" height="32" title="Variabile. Vento deboe di Levante (E)" align="center">"; break;
case 16: $meteo="<img src="img/meteo/pioggia.png" width="25" height="32" title="Pioggia. Vento debole di Mezzogiorno (S)" align="center">"; break;
case 17: $meteo="<img src="img/meteo/nuvoloso.png" width="25" height="32" title="Nuvoloso. Vento debole di Scirocco (S-E)" align="center">"; break;
case 18: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento forte di Ponente (O)" align="center">"; break;
case 19: $meteo="<img src="img/meteo/neve.png" width="25" height="32" title="Neve. Vento fortissimo di Tramontana (N)" align="center">"; break;
case 20: $meteo="<img src="img/meteo/pioggia.png" width="25" height="32" title="Pioggia. Vento forte di Levante (E)" align="center">"; break;
case 21: $meteo="<img src="img/meteo/nuvoloso.png" width="25" height="32" title="Nuvoloso. Vento Assente" align="center">"; break;
case 22: $meteo="<img src="img/meteo/sereno4.png" width="25" height="32" title="Sereno. Vento debole di Mezzogiorno (S)"align="center">"; break;
case 23: $meteo="<img src="img/meteo/tempesta.png" width="25" height="32" title="Tempesta. Vento fortissimo di Maestrale (N-O)" align="center">"; break;
}
$_SESSION['Meteo_S'] = $meteo;
grazie dell'attenzione. e spero che qualcuno ci capisca più di me e possa aiutarmi.
Pagine → 1
07/10/2015 09:57:08
potresti diminuire il valore di $caso cambiando la formula oppure potresti diminuire il valore di minima oppure potresti creare un valore di massima e poi sviluppare un codice che peschi un numero tra minima e massima
07/10/2015 10:47:11
il problema sta quando usi questa roba:
floor($ore/3)*$caso)
Perche'? Nel peggiore dei casi $ore sara' 23, poi lo dividi per 3 ce fa 7 (prendi il floor) e poi lo moltiplichi per caso che, nel peggiore dei casi fa 3. Tutta sta cosa puo' arrivare a 21 che, sommate con quelle minime, arriva a un numero allucinante.
Nella mia land io uso un approccio totalmente diverso per il meteo.
Un consiglio che ti posso dare e' quello di cambiare TOTALMENTE approccio. Imposta dei valori di temperatura minima (gia' fatto) e massima e, anziche' fare tutta sta roba, estrai un numero causale da una distribuzione di Gauss. Qui trovi una funzione che ti fa questa cosa:
http://www.eboodevelopment.com/php-random-number-generator-with-normal-distribution-bell-curve/
Passi min e max e la deviazione standard: piu' ampia e' la deviazione standard, piu' grande sara' lo scostamento di temperatura. Da quel che ho capito, min e max non sono valori vincolanti, ma il generatore di numeri puo' (con una certa probabilita') prendere valori al di fuori del range.
A presto
07/10/2015 15:17:19
intanto grazie, vedo se riesco a fare le soluzioni che proponete, vedrò di spulciare la guida di gdr cd e cosa riesco a produrre.
Però almeno mi avete chiarito un dubbio che l'errore fosse sull'algoritmo e non da altre parti.
Discussione seguita da
Pagine → 1
Rispondi alla Discussione + Segui Discussione Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
Cleveland City: Nuove Guide nello Staff!
eriophora ha aperto un annuncio di ricerca: La Cour des Miracles ricerca Tester
World of Tanks → Lanciati in epiche battaglie spalla a spalla con altri giocatori. Conquista la supremazia nel mondo dei Carri Armati!
New Orleans: Nuovo Video Land!
losnodo ha risposto alla discussione: Programmatore Offresi!
joeilcondor si è accreditato come gestore di Betsu No Tamashi
Portus: Harry Potter Gioco di Ruolo: DCAO: il vero nemico non è la magia oscura
Hero Wars → Costruisci la tua squadra di eroi leggendari e domina il campo di battaglia! Strategia, tattica e potenza si scontrano in questo RPG ricco di azione!
Apocalypse Requiem: Detroit: Release Nuova Versione
Another Year Of Disaster: A Whole Year of Disaster! 🎉
exv_staff ha aperto un annuncio di ricerca: Exclusive Villa GdR ricerca Giocatore
World of Tanks: Aggiornamento 2.0.1: Linee ridisegnate
Storie di Agarthi → Un Varco si apre davanti a te, un mondo tra i mondi è a portata di mano. Lasciati alle spalle le certezze, inizia l'avventura!
Il genere Battaglie Galattiche raggiunge i 400 giochi catalogati!
RAID Shadow Legends: Evento "Febbre del Drop"
frost ha risposto alla discussione: Gioco investigativo e politico
I dati del generatore di rank sono stati aggiornati!
War Thunder → Aviazione, veicoli corazzati e flotte militari della seconda guerra mondiale. Parteciperai a tutte le principali battaglie!
Tana del Ladro - Intervista al gestore di La Tana del Ladro lo storico play by chat su Dungeons and Dragons!
Giochi Nuovi - Lista degli ultimi giochi online inseriti sul portale!
Yahoo Leak! - Yahoo: rubate mail e password di mezzo miliardo di persone. Cosa fare?
Revelio Hogwarts GdR - Intervista alla gestrice del play by forum potteriano Revelio Hogwarts GdR
Lust & Blade - Intervista al gestore di Lust and Blade il play by chat storico ambientato in una Polonia medievale
Il Paiolo Magico - Intervista alla gestrice del play by forum a tema potteriano Il Paiolo Magico!
Guadagnare con i Gdr - Articolo che spiega come racimolare qualche soldino con la propria comunità