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

    [C++] Cercare elemento in array

    Devo sapere se un elemento e' contenuto in un array.
    codice:
    int e;
    int a[10];
    bool isContenuto=false;
    for (int i=0;i<10;i++)
    if (a[i]==e)
    isContenuto=true;
    Questo codice legge sempre tutti gli elementi dell'array, anche dopo aver trovato un elemento uguale ad e.
    Vorrei ottimizzare questa cosa, possibilmente senza usare return e break. Possibile?

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    basta che nella for usi la condizione

    codice:
    int e;                 //-> inizializza e
    int a[10];           //-> guarda che l'array è vuoto
    bool isContenuto = false;
    for (int i=0; i<10 && !isContenuto; i++)
    {
        if (a[i]==e)
        {
             isContenuto=true;
        }
    }

  3. #3

    Re: [C++] Cercare elemento in array

    Originariamente inviato da starcraftworld

    Vorrei ottimizzare questa cosa, possibilmente senza usare return e break. Possibile?
    http://www.sgi.com/tech/stl/find.html
    codice:
    #include <algorithm>
    #include <iostream>
    
    int main (void){
    	const int a [10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    	const int e = 6;
    	const int * aFindResult = std::find (a, a + 10, e);
    	const bool aWasFind = (aFindResult != a + 10);
    	std::cout << "aWasFind: " << aWasFind << ";" << std::endl;
    	return 0;
    }

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