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

    c++ funzione ricorsiva su file

    salve, ho dei problemi con questo programma
    leggo da file i caratteri uno alla volta,
    ma ho difficoltà nel fare il controllo
    dopo aver risolto dovrei passarla in procedura ricorsiva.

    aiuti?

    grazie


    codice:
    /*
    Testo : Assegnato un file di testo con stringhe lunghe N per ogni rigo, 
    determinare quante sono le occorrenze di un carattere preassegnato 
    con una funzione ricorsiva.
    */
    
    
    #include<iostream>
    #include<cstdlib>
    #include<fstream>
    
    using namespace std;
    int main () { 
        int occorrenze=0;
        char occ;
    
        char tmp[1];
        char vispa[400];
        ifstream file;
        cout << "Nome File : ";
        cin >> vispa; // nome file esterno conservato nella memoria secondaria
        file.open("vispa.txt"); // collegamento tra file (logico) e Nomefile(fisico)
                  if (!file){
                             cerr<<"Non si puo’ aprire il file"<<endl;
                             system("pause");
                             return -1; // esce dal main con errore
                             }
      
      char ch;
      while(file.get(ch)){
                          cout.put(ch);
                          
    // difficoltà
                          if((file.put(ch))=='e')
                                     occ++;
                          }
                          
      file.close();                    
      cout<<endl;    
      cout<<occ;    
      cout<<endl;    
      system("pause");
    }

  2. #2
    con get(ch) prelevi il carattere ch dal file e sposti di un carattere il file pointer, che punta al successivo.
    Prelevato il caratte è sufficiente fare il controllo
    if (ch == carattere_da_controllare) togliendo i vari put che non si capisce cosa ti servano.
    ciao

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.