Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Problema con occorrenza in una frase

    Salve a tutti ho il seguente problema.
    avrei bisogno di un aiuto.

    devo risolvere il seguente
    codice:
    *Scrivere un'applicazione che legga 2 frasi.
     *Succesivamente stampi il numero totale delle lettere,
     *la strina più lunga ed infine il numero complessivo delle occorrenze
     *della lettera 'a' ('A') nella frase più lunga.
    ho fatto il seguente script
    codice:
     import java.io.*;
     import prog.io.*;
    
    public class Esercizio4_1Mio {
    
        public static void main(String[] args) {
        	
        	
        	ConsoleInputManager in =new ConsoleInputManager();
        	ConsoleOutputManager out= new ConsoleOutputManager();
        	
        	String Prima=in.readLine("Inserisci la PRIMA FRASE: ");
        	String Seconda=in.readLine("Inserisci la SECONDA FRASE:  ");
        	
        	String PrimaPiuSeconda=Prima+Seconda;
        	int TotaleLettere=PrimaPiuSeconda.length();
        	
        	int LunghezzaPrima=Prima.length();
        	int Lunghezzaseconda=Seconda.length();
        	
        	if (LunghezzaPrima>Lunghezzaseconda){
        	
        		System.out.println("La frase piu lunga è: "+Prima);
        		int ContaLettera=0;
        		for(int i=0; i<=(Prima.length()); i++){
        			
        			if 	((Prima.charAt(int i)='a') ||  (Prima.charAt(int i)='A'))
        				ContaLettera=ContaLettera+1;
        			
        			
        		}
        		System.out.println("L'OCCORRENZA DELLA LETTERA E': "+ContaLettera);
        		
        		}
        	else{
        
        		System.out.println("La frase piu lunga è: "+Seconda);
        		System.out.println("La frase piu lunga è: "+Prima);
        		int ContaLettera=0;
        		for(int i=0; i<=(Prima.length()); i++){
        			
        			if 	(Prima.charAt(i)='a' ||  Prima.charAt(i)='A')
        				ContaLettera=ContaLettera+1;
        			
        			
        		      }
        				System.out.println("L'OCCORRENZA DELLA LETTERA E': "+ContaLettera);
        		}
        	
        	
        }
        
        
    }
    ma mi da i seguenti errori e non ne vengo a capo
    codice:
    C:\Documents and Settings\admin\Desktop\java\Esercizio4_1Mio.java:40: '.class' expected
                    if  ((Prima.charAt(int i)='a') ||  (Prima.charAt(int i)='A'))
                                           ^
    C:\Documents and Settings\admin\Desktop\java\Esercizio4_1Mio.java:40: ';' expected
                    if  ((Prima.charAt(int i)='a') ||  (Prima.charAt(int i)='A'))
                                            ^
    C:\Documents and Settings\admin\Desktop\java\Esercizio4_1Mio.java:40: '.class' expected
                    if  ((Prima.charAt(int i)='a') ||  (Prima.charAt(int i)='A'))
                                                                         ^
    C:\Documents and Settings\admin\Desktop\java\Esercizio4_1Mio.java:40: ';' expected
                    if  ((Prima.charAt(int i)='a') ||  (Prima.charAt(int i)='A'))
                                                                          ^
    4 errors
    Sapete come posso correggerlo?

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: Problema con occorrenza in una frase

    Originariamente inviato da 19pantarei75
    ho fatto il seguente script
    I programmi Java non sono "script".

    Originariamente inviato da 19pantarei75
    codice:
        			if 	((Prima.charAt(int i)='a') ||  (Prima.charAt(int i)='A'))
        				ContaLettera=ContaLettera+1;
    1. L'operatore di uguaglianza è ==, tu stai usando un assegnamento.
    2. Quando chiami un metodo devi solo passare l'argomento, senza indicare il tipo.
    3. Probabilmente c'è dell'altro.
    4. Segui le convenzioni di Java per nomi di classi, oggetti e metodi.

    edit:
    codice:
        		for(int i=0; i<=(Prima.length()); i++){
    Ti darà StringIndexOutOfBoundsException, togli quel <= e metti solo <. E togli anche le parentesi dalla condizione di uscita, sono totalmente inutili.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Te lo sta dicendo chiaro il compilatore:

    codice:
    if  ((Prima.charAt(int i)=='a') ||  (Prima.charAt(int i)=='A'))
    Devoi togliere ciò che ho riportato in grassetto... e aggiungere un segno di uguale.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    FUNGE!
    Grazie a entrambi.
    codice:
    import java.io.*;
     import prog.io.*;
    
    public class Esercizio4_1Mio {
    
        public static void main(String[] args) {
        	
        	
        	ConsoleInputManager in =new ConsoleInputManager();
        	ConsoleOutputManager out= new ConsoleOutputManager();
        	
        	String Prima=in.readLine("Inserisci la PRIMA FRASE: ");
        	String Seconda=in.readLine("Inserisci la SECONDA FRASE:  ");
        	
        	String PrimaPiuSeconda=Prima+Seconda;
        	int TotaleLettere=PrimaPiuSeconda.length();
        	System.out.println("Il Numero Totale di Lettere è: "+TotaleLettere);
        	
        	int LunghezzaPrima=Prima.length();
        	int Lunghezzaseconda=Seconda.length();
        	
        	if (LunghezzaPrima>Lunghezzaseconda){
        	
        		System.out.println("La frase piu lunga è: "+Prima);
        		int ContaLettera=0;
        		for(int i=0; i<(Prima.length()); i++){
        			
        			if 	((Prima.charAt(i)=='a') ||  (Prima.charAt(i)=='A'))
        				ContaLettera=ContaLettera+1;
        			
        			
        		}
        		System.out.println("L'OCCORRENZA DELLA LETTERA E': "+ContaLettera);
        		
        		}
        	else{
        
        		System.out.println("La frase piu lunga è: "+Seconda);
        	
        		int ContaLettera=0;
        		for(int i=0; i<(Seconda.length()); i++){
        			
        			if 	(Seconda.charAt(i)=='a' ||  Seconda.charAt(i)=='A')
        				ContaLettera=ContaLettera+1;
        			
        			
        		      }
        				System.out.println("L'OCCORRENZA DELLA LETTERA E': "+ContaLettera);
        		}
        	
        	
        }
        
        
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.