Torna indietro   Hardware Upgrade Forum > Software > Programmazione

ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm
ASUS e HIFIMAN uniscono le forze per creare ROG Kithara, cuffie gaming con driver magnetici planari da 100mm, design open-back e microfono MEMS full-band. Una proposta che ambisce a coniugare fedeltà per audiofili e performance ludiche, disponibili a 319 euro
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-11-2010, 22:42   #1
Jushiro
Junior Member
 
Iscritto dal: Jul 2010
Messaggi: 1
[Java] Programma banale... qual è il problema ?

Questo è il codice:
Codice:
import javax.swing.*;
public class pacchan{
public static void main (String[] args){
 String a = JOptionPane.showInputDialog("Sutringo desu!");
 int l=a.length();
 int i=0;
 boolean pal=true;
 while ((i<l) || (pal==false)){
  int b,c;
  b=a.charAt(i);
  c=a.charAt((l-i));
  if (b==c){
   i++;
  }else{
   pal=false;
   System.out.println("BAKA!");
   }
  }
  System.out.println("oki!");
 }
}
La compilazione va senza problemi, ma dopo che inserisco la stringa da tastiera mi da:
Codice:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 4
	at java.lang.String.charAt(String.java:686)
	at pacchan.main(pacchan.java:10)
Dove ho sbagliato ?

Ultima modifica di Jushiro : 13-11-2010 alle 22:46.
Jushiro è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2010, 23:10   #2
Smjert
Member
 
Iscritto dal: Jul 2006
Messaggi: 109
Hai sbagliato la condizione del while, quel check di pal==false manda il programma in loop se la parola non è palindroma.

Infatti se la parola non è palindroma pal rimane == false e anche se i non è più minore di l, il check su pal è valido.
Semmai devi controllare i < l && pal==false.
Smjert è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2010, 17:16   #3
mad_hhatter
Senior Member
 
L'Avatar di mad_hhatter
 
Iscritto dal: Oct 2006
Messaggi: 1105
Quote:
Originariamente inviato da Jushiro Guarda i messaggi
Questo è il codice:
Codice:
import javax.swing.*;
public class pacchan{
public static void main (String[] args){
 String a = JOptionPane.showInputDialog("Sutringo desu!");
 int l=a.length();
 int i=0;
 boolean pal=true;
 while ((i<l) || (pal==false)){
  int b,c;
  b=a.charAt(i);
  c=a.charAt((l-i));
  if (b==c){
   i++;
  }else{
   pal=false;
   System.out.println("BAKA!");
   }
  }
  System.out.println("oki!");
 }
}
La compilazione va senza problemi, ma dopo che inserisco la stringa da tastiera mi da:
Codice:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 4
	at java.lang.String.charAt(String.java:686)
	at pacchan.main(pacchan.java:10)
Dove ho sbagliato ?
charAt(l-i), con i = 0, significa charAt(l), ma l'ultimo carattere della stringa è in posizione l-1.
mad_hhatter è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm ASUS ROG Kithara: quando HIFIMAN incontra il gam...
Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
La serie TV di God of War trova il suo B...
Le auto elettriche conquistano quasi un ...
SK hynix investe 21,6 trilioni di won ne...
NVIDIA pronta a elevare il gaming su Lin...
Multa da 14 milioni per Reddit: il Regno...
1Password aumenta i prezzi da marzo 2026...
OpenClaw fuori controllo: inbox cancella...
Il lancio della nuova serie Galaxy S26 è...
TV Toshiba 4K a prezzi folli: il QLED 65...
Sony svela i requisiti PC di Death Stran...
Addio GPU? MatX promette un chip 10 volt...
Amazon taglia i prezzi dei dispositivi F...
Amazon, stop del Garante alla raccolta d...
LEGO Game Boy a 45,99€ su Amazon: la con...
Kit Logitech MK950 Signature Slim a 79,9...
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: 12:13.


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