Visualizzazione dei risultati da 1 a 3 su 3

Discussione: riempire Array

  1. #1

    riempire Array

    Ciao Ragazzi,
    Mi trovo alle prese con un esercizio in Java (sono ancora un super novizio)

    In sostanza io ho una parola e un array di tipo int, di lunghezza pari all'alfabeto. L'indice 0 deve contenere il numero delle lettere 'a', indice 1 delle lettera 'b' etc.

    quindi per far questo ho creato inizialmente questo codice:

    codice:
    public class capSestoProject_2 {
    
    
    	public static void main(String[] args) {
    		
    		
    		String frase = "viaggio";
    		int[] alfabeto = new int[26];
    		
    	
    		for(int i = 0; i < frase.length(); i++) {
    				
    				int indiceCarattere = trovaIndice(frase.charAt(i));
    			
    			}
    			
    	}
    	
    	public static int trovaIndice(char carattere) {
    		
    		char carattereSentinella = 'a';
    		int indice = (int)carattere - (int)carattereSentinella;
    		
    		return indice;
    		
    	}
    	
    }
    Facendo così, ho l'indice corretto di ogni carattere della parola (e funziona).

    Quello che dovrei fare ora è contare quante volte una lettera si ripete e, nell'array alfabeto, mettere il valore/conteggio di quel carattere nella posizione corretta.

    Ma qui mi sono bloccato (ancora ho difficoltà quando devo riempire certi array)

    Sperando di esser stato chiaro, vi ringrazio già in anticipo per ogni aiuto e/o suggerimento

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,137
    Beh, ti stai perdendo davvero in un bicchier d'acqua.
    Hai trovato l'indice: usalo per indicizzare l'array e memorizzare al suo interno il valore corretto.
    Il valore corretto è il valore corrente aumentato di uno (si fa con una sola istruzione).

    Se indiceCarattere è l'indice del carattere all'interno dell'array... alfabeto[indiceCarattere] è il numero di volte in cui quel carattere è comparso durante la scansione della parola.


    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

  3. #3
    Grazie mille per la risposta e per il suggerimento! E si.. hai pienamente ragione sul fatto che (e succede spesso) mi perdo in un bicchier d'acqua, dopo magari aver risolto il problema principale

    Grazie ancora

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 © 2020 vBulletin Solutions, Inc. All rights reserved.