la traccia dell esercizio è
Testo nascosto, fai click qui per vederlo
Sia assegnato da file contenente una sequenza di numeri interi molto lunga.
Scrivere un programma che rischiesto il nome del file da tastiera e l'immissione di una sequenza di numeri di cui viene preventivamente fornita la lunghezza(maggiore di 1), verifichi non solo la presenza della sequenza all'interno del file ma anche quante volte essa ricorre nel caso fosse presente.
Ad esempio con il file miofile.txt contenente:
23 45 21 33 12 33 22 44 66 45 21 33 12 11 876 11 45 21 33 12 13
E la sequenza di 4 numeri
45 21 33 12
Il programma deve fornire in uscita un messaggio del tipo:
La sequenza è presente 3 volte.
Il programma deve essere scritto in C, modulare e documentato.
Scrivere un programma che rischiesto il nome del file da tastiera e l'immissione di una sequenza di numeri di cui viene preventivamente fornita la lunghezza(maggiore di 1), verifichi non solo la presenza della sequenza all'interno del file ma anche quante volte essa ricorre nel caso fosse presente.
Ad esempio con il file miofile.txt contenente:
23 45 21 33 12 33 22 44 66 45 21 33 12 11 876 11 45 21 33 12 13
E la sequenza di 4 numeri
45 21 33 12
Il programma deve fornire in uscita un messaggio del tipo:
La sequenza è presente 3 volte.
Il programma deve essere scritto in C, modulare e documentato.
mi sono bloccato qui. Qualcuno gentilmente saprebbe aiutarmi?
#include<iostream>
#include<cstdlib>
#include<fstream>
using namespace std;
#define MAX 50
fstream file;
char nome[MAX];
void apri_file (int &m , int vet[MAX]);
void sequenza(int vet1[MAX]);
int main (){
int m,n;
int vet[MAX];
int vet1[MAX];
apri_file (m , vet);
sequenza(vet1);
return 0;
}
void apri_file (int &m , int vet[MAX])
{
cout<<"Inserire il nome del file: ";
cin.getline(nome, MAX, '\n');
file.open(nome,ios::in);
if(!file){
cout<<"\nIl file non esiste.";
exit(1);
}
file>>m;
for (int i=0; i<m; i++)
{
file>>vet[i];
}
file.close();
}
void sequenza(int vet1[MAX]) {
int n;
cout<<"Quanti elementi vuoi inserire: ";
cin>>n;
for (int i=0;i<n;i++){
cout<<"inserisci l'elemento di posizione "<<i<<" nel vettore: ";
cin>>vet1[i];
}
}