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

    [C#] Controllo di stringhe

    Ho un array di stringhe che vengono inserite dall'utente. Se la stringa è già stata inserita, stampa un messaggio e chiede di inserirne un'altra.
    Il seguente codice mi funziona:


    string[] elenco = new string[5];
    for (int i = 0; i < elenco.Length; i++)
    {
    Console.WriteLine("\nInserisci il " + (i + 1) + "° nominativo.");
    elenco[i] = Console.ReadLine();
    Console.WriteLine("\nIl " + (i+1) + "° nominativo è " + elenco[i]);
    if (i > 0)
    {
    int j = i - 1;
    while (elenco[i].CompareTo(elenco[j]) != 0 && j > 0)
    {
    j--;
    if (elenco[i].CompareTo(elenco[j]) == 0)
    {
    Console.WriteLine("\nNominativo già inserito.");
    i = i - 1;
    }
    }

    }
    }
    Console.ReadLine();


    Se all'interno del ciclo while, scrivo:

    while (elenco[i].CompareTo(elenco[j]) != 0 && j > 0)
    {
    j--;
    if (elenco[i].CompareTo(elenco[j]) == 0)
    {
    Console.WriteLine("\nNominativo già inserito.");
    i = i - 1;
    }
    else
    Console.WriteLine("\nIl nominativo è " + elenco[i]);
    }


    non viene eseguito correttamente.
    Qualcuno potrebbe indicarmi quale errore commetto?
    grazie.

  2. #2
    Nessuno mi può aiutare?

  3. #3
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    non si capisce cosa vuoi sapere ?
    in ogni caso qui siamo proprio alle basi della programmazione...se non capisci devi leggere e studiare un pochino di più
    I got the remedy

  4. #4
    Scusa ma perchè usi il compare?Hai provato con Contains?

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.