Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Motorola razr fold, dalla conchiglia al formato a libro. La recensione
Motorola razr fold, dalla conchiglia al formato a libro. La recensione
Abbiamo provato Motorola razr fold, il pieghevole a libro con display interno LTPO da 8,09 pollici, Snapdragon 8 Gen 5 e batteria da 6000 mAh in 243 grammi. Pennino e custodia sopno già nella confezione, per un foldable che si caratterizza per il pannello luminoso, l'autonomia ottima per la categoria e le fotocamere coerenti e ben sfruttabili. Il listino è di 1999 euro, ma in vendita si trova già a molto meno
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente
Google Pixel Watch 5 ha affinato una formula già convincente con hardware più veloce, Gemini offline e nuovi strumenti per sport e benessere. Abbiamo provato la versione LTE da 41 mm, comoda anche di notte e ben proporzionata sui polsi piccoli. Il design resta un punto di forza, ma l'autonomia premia ancora il 45 mm e alcune funzioni AI non sono disponibili in Italia: ecco che cosa cambia rispetto a Watch 4 e quale formato conviene scegliere oggi
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Politica, accademia e industria a confronto su mercato unico, sicurezza e competitività. Nei laboratori di Vimercate, Nokia ha mostrato le nuove generazioni di chip ottici e i test che ogni prodotto deve superare prima di arrivare sul mercato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 05-01-2009, 18:53   #1
Spanaccio
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 13
[C++] Consiglio per le occorrenze!

Salve a tutti! Per cercare le occorrenze in un file ho trovato questo programma (che funziona perfettamente):


Codice:
char nome[30];
char contenuto[100000];
char sequenza_da_cercare[100];
bool trovata;

bool sotto_sequenze(char v[], int m, char s[], int n)
{
  for(int i=0; i <= (m-n); i++)
  {
      int j=0;
      while(s[j]==v[i] && j<n)
      {
         j++;
         i++;
      }
      
      if(j==n)
      {
         cout << "Stringa trovata in posizione " << i-n << '\n';
         trovata=true;
      }
  }
  return trovata;
}

int main()
{
    char s,r;
    int caratteri=0,seq=0;
    ifstream file;

    do
    {
      
        cout<<"OCCORRENZE:\n";
        cout<<"Inserisci il nome del file:\n";
        cin>>nome;
        cin.get(s);
        file.open(nome,ios::in);
        if(!file)
        {
            cerr<<"*ERRORE* File non trovato\n";
        }
        
        while(file.get(contenuto[caratteri]) && caratteri<100000) caratteri++;//Prendo i singoli caratteri dal file e li copio nell'array
        cout<<"Quale occorrenza vuoi cercare??\n";
        
        while(cin.get(sequenza_da_cercare[seq]) && sequenza_da_cercare[seq]!='\n' && seq<100) seq++;
        if ( sotto_sequenze(contenuto, caratteri, sequenza_da_cercare, seq) );
        else  cout << "sequenza non trovata. \n";
        
        file.clear();
        file.close();
        cout<<"Vuoi analizzare un altro file?(y|n)";
        cin>>r;
    }while(r!='n');

Solo che trovo difficile comprendere il meccanismo. Ci sarebbe un metodo piu semplice??

Ultima modifica di cionci : 06-01-2009 alle 09:38.
Spanaccio è offline   Rispondi citando il messaggio o parte di esso
Old 06-01-2009, 09:39   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Puoi usare la find di string per cercare una stringa all'interno di un'altra stringa: http://www.cplusplus.com/reference/s...ring/find.html
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 06-01-2009, 17:40   #3
Vincenzo1968
Bannato
 
Iscritto dal: Mar 2008
Città: Villabate(PA)
Messaggi: 2515
Qui trovi un bel po' di algoritmi:

http://www-igm.univ-mlv.fr/~lecroq/string/string.pdf

http://www-igm.univ-mlv.fr/~lecroq/string/node1.html
Vincenzo1968 è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2009, 19:32   #4
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Se ti serve solo un risultato
se non e' un problema di programmazione
se non devi quindi includere il codice da nessuna parte
e stai usando Windows

(un po' di constraint...)
allora puoi usare il comando FIND, gia' pronto
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2009, 19:51   #5
Vincenzo1968
Bannato
 
Iscritto dal: Mar 2008
Città: Villabate(PA)
Messaggi: 2515
Quote:
Se riesci a conservare il controllo quando tutti
Intorno a te lo perdono e te ne fanno una colpa;
Se riesci ad aver fiducia in te quando tutti
Ne dubitano, ma anche a tener conto del dubbio;
Se riesci ad aspettare e non stancarti di aspettare,
O se mentono a tuo riguardo, a non ricambiare in menzogne,
O se ti odiano, a non lasciarti prendere dall'odio,
E tuttavia a non sembrare troppo buono e a non parlare troppo saggio;

Se riesci a sognare e a non fare del sogno il tuo padrone;
Se riesci a pensare e a non fare del pensiero il tuo scopo;
Se riesci a far fronte al Trionfo e alla Rovina
E trattare allo stesso modo quei due impostori;
Se riesci a sopportare di udire la verità che hai detto
Distorta da furfanti per ingannare gli sciocchi
O a contemplare le cose cui hai dedicato la vita, infrante,
E piegarti a ricostruirle con strumenti logori;

Se riesci a fare un mucchio di tutte le tue vincite
E rischiarle in un colpo solo a testa e croce,
E perdere e ricominciare di nuovo dal principio
E non dire una parola sulla perdita;
Se riesci a costringere cuore, tendini e nervi
A servire al tuo scopo quando sono da tempo sfiniti,
E a tener duro quando in te non resta altro
Tranne la Volontà che dice loro: "Tieni duro!".

Se riesci a parlare con la folla e a conservare la tua virtù,
E a camminare con i Re senza perdere il contatto con la gente,
Se non riesce a ferirti il nemico né l'amico più caro,
Se tutti contano per te, ma nessuno troppo;
Se riesci a occupare il minuto inesorabile
Dando valore a ogni minuto che passa,
Tua è la Terra e tutto ciò che è in essa,
E - quel che è di più - sei un Uomo, figlio mio!

Rudyard Kipling
Vincenzo1968 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Motorola razr fold, dalla conchiglia al formato a libro. La recensione Motorola razr fold, dalla conchiglia al formato ...
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente Recensione Google Pixel Watch 5: sembra lo stess...
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo Nokia Innovation Day 2026: la sovranità e...
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi In sella alla Fiido Nomads Pro: e-bike con motor...
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto ASUS Zenbook 14 (UX3480AA): tanta autonomia con ...
Starship: SpaceX potrebbe tentare di rec...
Federico Veronesi vince i Wildlife Photo...
Samsung Galaxy bloccati dopo l'aggiornam...
L'UE prolunga il periodo di test del pro...
Offerte Amazon di oggi: e-bike da 616€, ...
La missione cino-europea ESA Smile ha in...
Cisco sulle tracce dell’IA nei malware: ...
Nuovo Codice della strada: stop alla PEC...
Blue Origin Constellation Park: un nuovo...
E-bike da 615€ su Amazon: Bodywel F20PRO...
Windows 11 24H2, stop al supporto per Ho...
Gemini 4 Argon disponibile per tutti: co...
Sony avrebbe chiuso Overdrive, lo store ...
Abbiamo scattato con OPPO Find X10 Pro M...
Fino a 21 miliardi per i chip americani:...
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: 05:04.


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