Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Il nuovo Deebot X12 OmniCyclone abbina un sistema di raccolta dello sporco senza sacchetto, un rullo di lavaggio esteso e la tecnologia FocusJet per intervenire più efficacemente sulle macchie più persistenti. Un robot completo e preciso che aiuta a tenere puliti i pavimenti di casa con il minimo sforzo
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2 implementa un mocio a nastro che esegue una pulizia dettagliata del pavimento di casa, in abbinamento ad un potente motore di aspirazione della polvere: un prodotto ideale per gestire in autonomia e con grande efficacia le necessità di pulizia dei pavimenti di casa
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
MSI FORGE GK600 TKL WIRELESS: switch lineari hot-swap, tripla connettività, display LCD e 5 strati di fonoassorbimento. Ottima in gaming, a 79,99 euro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-10-2007, 19:57   #1
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Ciclo FOR per lettere

Ciao gente, parlo di PHP, ma può valere anche per altri linguaggi...

Sto facendo un ciclo FOR così:
Codice PHP:
for($char="A"$char!="Z"$char++) 
ma giustamente mi prende tutte le $char da "A" a "Y", ovvero la lettera prima della "Z"...
ho provato allora a mettere
Codice PHP:
for($char="A"$char!="]"$char++) 
visto che in ASCII il simbolo "]" è quello direttamente successivo alla "Z", ma mi va in timeout la pagina...

Come fare??
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2007, 20:08   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da Teju Guarda i messaggi
visto che in ASCII il simbolo "]" è quello direttamente successivo alla "Z", ma mi va in timeout la pagina...
No, quello appena dopo la 'Z' è '['
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2007, 20:14   #3
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Quote:
Originariamente inviato da andbin Guarda i messaggi
No, quello appena dopo la 'Z' è '['
Sì, scusa, ho messo la "[", ma cmq nn va...
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2007, 20:47   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Parlando di PHP non va perché il tipo di dato su cui si opera è un string. E fare un ++ su un string ha dei risultati, per così dire, un po' .... buffi.
Se si ha "Z", fare ++ dà come risultato "AA".

Si potrebbe fare:
Codice:
for ($i=65; $i<=90; $i++)
{
    $ch = chr ($i);
}
e sarebbe già meglio.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2007, 08:56   #5
Teju
Member
 
L'Avatar di Teju
 
Iscritto dal: Mar 2007
Messaggi: 284
Quote:
Originariamente inviato da andbin Guarda i messaggi
Parlando di PHP non va perché il tipo di dato su cui si opera è un string. E fare un ++ su un string ha dei risultati, per così dire, un po' .... buffi.
Se si ha "Z", fare ++ dà come risultato "AA".

Si potrebbe fare:
Codice:
for ($i=65; $i<=90; $i++)
{
    $ch = chr ($i);
}
e sarebbe già meglio.
Grazie, con il chr() funziona, però stavo pensando: se mettevo un
Codice PHP:
for($char="A"$char!="AA"$char++) 
in linea teorica è uguale, no?

Giusto per curiosità a fine progetto proverò!
__________________
T -> <- C

.: Vado.li - oltre ogni frontiera!!
.: Ho fatto affari recentemente su HWU Forum con: CloudsITA;
Teju è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2007, 09:52   #6
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da Teju Guarda i messaggi
Codice PHP:
for($char="A"$char!="AA"$char++) 
Sì, così sarebbe anche corretto.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2007, 10:12   #7
Ziosilvio
Moderatore
 
L'Avatar di Ziosilvio
 
Iscritto dal: Nov 2003
Messaggi: 16214
Quote:
Originariamente inviato da andbin Guarda i messaggi
Parlando di PHP non va perché il tipo di dato su cui si opera è un string. E fare un ++ su un string ha dei risultati, per così dire, un po' .... buffi.
Se si ha "Z", fare ++ dà come risultato "AA".
"Buffi"?
Non più di tanto: è semplicemente l'ordinamento lessicografico sull'alfabeto inglese maiuscolo. Prima la stringa vuota, poi tutte le stringhe di lunghezza 1 in ordine alfabetico, poi tutte le stringhe di lunghezza 2 in ordine alfabetico, poi...
Quote:
Si potrebbe fare:
Codice:
for ($i=65; $i<=90; $i++)
{
    $ch = chr ($i);
}
e sarebbe già meglio.
Oppure... esiste, in PHP, una funzione che restituisce il codice ASCII di un carattere?
In Python c'è, si chiama ord, e uno per fare un ciclo su tutte le maiuscole scrive:
Codice:
for c in range(ord('A'),ord('Z')+1):
    # ciclo su c
__________________
Ubuntu è un'antica parola africana che significa "non so configurare Debian" Chi scherza col fuoco si brucia.
Scienza e tecnica: Matematica - Fisica - Chimica - Informatica - Software scientifico - Consulti medici
REGOLAMENTO DarthMaul = Asus FX505 Ryzen 7 3700U 8GB GeForce GTX 1650 Win10 + Ubuntu
Ziosilvio è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet Ecovacs Deebot X12 OmniCyclone: lava grazie a Fo...
Narwal Flow 2: la pulizia di casa con un mocio a nastro Narwal Flow 2: la pulizia di casa con un mocio a...
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Huawei punta sul canale europeo: per il ...
Ubuntu 26.04: le GPU guadagnano il 17% i...
La Commissione UE registra l'iniziativa ...
SSD troppo cari? La soluzione alla crisi...
Anteprima mondiale Hyundai IONIQ 3: segm...
Fintool sbarca su Microsoft 365: arrivan...
Hanno chiesto 1 dollaro per salvare un M...
Arriva AgentExchange, il marketplace di ...
Blizzard fa chiudere Turtle WoW: perché ...
Claude Desktop e la modifica silenziosa ...
Blue Origin ha mostrato gli interni del ...
Linux alla pari di Windows in gioco: con...
Il rientro del secondo stadio del razzo ...
Il controller ufficiale Microsoft per Xb...
DJI Power 1000 Mini: la power station da...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:06.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v