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

    [C++]Problema caricamento vettori array bidimensionali con l'uso del do while

    Ciao a tutti, e soprattutto buona domenica!
    Ho un problema con questa codifica:

    codice:
    #include <cstdlib>
    #include <iostream>
    #define max 100
    
    using namespace std;
    
    int main()
    {
        int righe,colonne,i,j,g[max][max];
        righe=4;
        colonne=4;
        i=0;
        j=0;
        do
       {do
       {cout<<"Inserisci l'elemento di riga "<<i<<" e colonna "<<j<<endl;
        cin>>g[i][j];
        i++;}while(i<righe);
        j++;}while(j<colonne);
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    Purtroppo in questo programma devo caricare gli elementi usando l'istruzione do while e non mi funziona bene.Potreste aiutarmi?Vi ringrazio in anticipo

  2. #2
    "Non mi funziona bene" non vuol dire niente... che problemi incontri?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Beh, in teoria i numeri che dovrei introdurre da tastiera dovrebbero essere 16 per via del numero delle colonne e delle righe ma me ne fa inserire solamente 7 e poi il conteggio delle righe e colonne (quindi le variabili j e i ) dovrebbero fermarsi sul 3 visto che partono dallo zero pero quella delle righe va oltre

  4. #4
    i deve essere rimesso a zero ad ogni iterazione del loop più esterno, altrimenti, acquisita la prima colonna, tutte le altre acquisizioni vengono saltate.

    (tra parentesi, cerca di indentare un po' meglio il codice, così risulta più semplice da seguire:
    codice:
    #include <cstdlib>
    #include <iostream>
    #define max 100
    
    using namespace std;
    
    int main()
    {
        int righe,colonne,i,j,g[max][max];
        righe=4;
        colonne=4;
        j=0;
        do
        {
            i=0;
            do
            {
                cout<<"Inserisci l'elemento di riga "<<i<<" e colonna "<<j<<endl;
                cin>>g[i][j];
                i++;
            }
            while(i<righe);
            j++;
        }
        while(j<colonne);
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    )
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Grazie mille per la correzione,(e soprattutto) per la spiegazione e per il consiglio

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.