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

    [C++]Scrivere un metodo che prenda come parametri formali un array di stringhe A e restituisca in output un array B di m stringhe

    Ciao a tutti , ho alcuni problemi con questo esercizio e non riesco a venirne a capo . In pratica , quando alla fine cerco di stampare l'intero array di stringhe B ,stampa solamente un asterisco .
    Qualcuno potrebbe aiutarmi a capire cosa ho sbagliato?
    Ecco il testo completo:
    Scrivere un metodo che prenda come parametri formali un array di stringhe A e restituisca in outputun array B di m stringhe, dove:
    • m è la lunghezza media delle stringhe in A di lunghezza maggiore di 5, e
    • la i-esima stringa di B è ottenuta concatenando (m*i) asterischi.

    codice:
    #include<iostream>
    #include<string>
    using namespace std;
    
    
    string* output (string strA[], int size){
    int cont=0;
    int c=0;
    int m;
    for(int i=0;i<size;i++)
        {
        if(strA[i].length()>=5) { cont++; c+=strA[i].length();}
        }
    m=c/cont;
    string *B=new string[m];
    string word;
    for(int i=0;i<m;i++)
        {
        for(int j=0;j<=(m*i);j++){ word+='*'; }
        B[i]=word;
        }
    return B;
    }
    
    
    
    
    int main(){
    int size;
    
    
        cout<< "Quanto deve essere lungo l'array di stringhe?" <<endl;
        cin >> size;
    string strA[size];
    cout<<"Scegli le stringhe che devono comporre l'array:"<<endl;
    for(int i=0; i<size;i++)
        cin>> strA[i];
    
    
    cout<< "Array di stringhe"<<endl;
    for(int i=0; i<size;i++)
        cout <<strA[i]<<endl;
    string *B =output(strA,size);
    cout<<"Array di stringhe in output:"<<endl;
    for(int i=0;i<B->size();i++)
        cout<<B[i]<<endl;
    }
    Ultima modifica di TTTuRiddo; 14-06-2015 a 16:04

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