Programma con array di contatori

di il
4 risposte

Programma con array di contatori

Buongiorno,
Devo registrare in due array paralleli un massimo di 100 lanci di una coppia di dadi con facce numerate da 1 a 6, e visualizzare in una tabella la distribuzione delle somme ottenute (cioè valori
2, 3, 4, … 12).
Uso le funzioni carica(), visualizza(), distrib(), ma non capisco come fare 2 array.
Non sono molto esperta, aiutatemi gentilmente, per favore..

4 Risposte

  • Re: Programma con array di contatori

    Da non molto esperta cosa hai scritto fino ad adesso? Possiamo proseguire da lì.
  • Re: Programma con array di contatori

    Dunque, ecco cosa ho pensato(mancano molte parti, non so bene come completarlo): (spero sia decente)
    #include <iostream>
    #include  <cmath>
    using namespace std;
    #define DIM 100 // dimensione fisica dell’array 
    
    //prototipo delle funzioni 
    void carica(int v1[],int v2[], int n);
    void visualizza(int v1[],int v2[], int n);
    void distrib(int v2[],int v1[], int n);
    
    
    int main()
    {
    	int v1[DIM]; // array di 100 elementi di tipo intero 
    	int v2[DIM];
    	int contatori[13]; //per la tabella delle distribuzioni dei lanci
    	int n; // numero di elementi effettivamente caricati nell’array 
      
        system ("pause");
        return 0;
    }
    
    //funzione che carica un array con massimo 100 elementi
    //parametri: array, numero di elementi da caricare  
    void carica(int v1[],int v2[], int n) {
    	int i;
    	for (i=0; i < n; i++) {
    		cout <<"Lancio numero " << i <<": ";
    		cin >> v1[i];
    	}
    		for (i=0; i < n; i++) {
    		cout <<"Lancio numero " << i <<": ";
    		cin >> v2[i];
    	}
    	cout << endl;
    }
    
    
    //funzione che visualizza un array con massimo 100 elementi
    //parametri: array, numero di elementi contenuti nell'array  
    void visualizza(int v1[],int v2[], int n){
    	int i;
    	cout << "Contenuto dell'array" << endl;
    	for (i=0; i < n; i++) {
    		cout << "Elemento " << i << "   " << v[i] << endl;
        }
        cout << endl;
    }
    
    //prendo 2 valori degli array casuali
    void distrib(int v1[],int v2[], int n){
    for (i=0; i < n; i++){
    v1[i]= rand() % 6 + 1;
    v2[i]= rand() % 6 + 1;
    }
    }
    
    
  • Re: Programma con array di contatori

    Adesso devi chiedere in input il numero di lanci e assegnarlo ad n (magari controllando che non siano più di 100) e poi devi chiamare le funzioni che hai già scritto ...
  • Re: Programma con array di contatori

    Ok...?
    #include <iostream>
    #include  <cmath>
    using namespace std;
    #define DIM 100 // dimensione fisica dell’array
    
    //prototipo delle funzioni
    void carica(int v1[],int v2[], int n);
    void visualizza(int v1[],int v2[], int n);
    void distrib(int v2[],int v1[], int n);
    
    
    int main()
    {
       int v1[DIM]; // array di 100 elementi di tipo intero
       int v2[DIM];
       int contatori[13]; //per la tabella delle distribuzioni dei lanci
       int n; // numero di elementi effettivamente caricati nell’array
      
    //Caricamento di n elementi nell'array
    	do {
    		cout <<"quanti elementi vuoi caricare? " << "Massimo " << DIM << ": ";
    		cin >>n;
    	}  while (n <= 0 || n > DIM);
        carica(v1, v2, n);
    
        //Visualizzare il contenuto dell'array
        visualizza (v1, v2, n);
        distrib = distrib(v1, v2, n);
    
        system ("pause");
        return 0;
    }
    
    //funzione che carica un array con massimo 100 elementi
    //parametri: array, numero di elementi da caricare 
    void carica(int v1[],int v2[], int n) {
       int i;
       for (i=0; i < n; i++) {
          cout <<"Lancio numero " << i <<": ";
          cin >> v1[i];
       }
          for (i=0; i < n; i++) {
          cout <<"Lancio numero " << i <<": ";
          cin >> v2[i];
       }
       cout << endl;
    }
    
    
    //funzione che visualizza un array con massimo 100 elementi
    //parametri: array, numero di elementi contenuti nell'array 
    void visualizza(int v1[],int v2[], int n){
       int i;
       cout << "Contenuto dell'array" << endl;
       for (i=0; i < n; i++) {
          cout << "Elemento " << i << "   " << v[i] << endl;
        }
        cout << endl;
    }
    
    //prendo 2 valori degli array casuali
    void distrib(int v1[],int v2[], int n){
    for (i=0; i < n; i++){
    v1[i]= rand() % 6 + 1;
    v2[i]= rand() % 6 + 1;
    }
    }
Devi accedere o registrarti per scrivere nel forum
4 risposte