DOMANDA [java] Esercizio

C

computer7

Ospite
Salve mi sto districando da ore in questo esercizio ma non mi viene in mente una soluzione....
Consegna:

Scrivere un programma che dato in input righe e colonne di un array multidimensionale(di caratteri) stampa la seguente cosa:

Es: righe =5, colonne=5;

+++++
+###+
+#+#+
+###+
+++++
(Ovviamente devono essere allineate...)

In soldoni una serie di cornici dentro l altra...io sono riuscito a creare la cornice esterna così:
Codice:
for(int i=0;i<r;i++){
        
         for(int k=0;k<c;k++){
      
          if(i==0 || k==0 || k==c-1 || i==r-1){
          a[i][k]='+';
          }
           
          }
        }
Non so però che condizione utilizzare per la cornice interna....qualcuno puo darmi una mano?

- - - Updated - - -

Ecco, ho risolto in parte il problema così(ho sostituito gli # con %):

Codice:
       for(int i=0;i<r;i++){
         
         for(int k=0;k<c;k++){
          
          if(i==0 || k==0 || k==c-1 || i==r-1){
          a[i][k]='%';
           
          }        
          else if(i==1 || k==1){
          a[i][k]='+';
          }
           else if ( i==r-2||  k==c-2 ){
           a[i][k]='+';
         }
             else{
              a[i][k]='%';
            }

          
        }
        }

(Potevo mettere i 2 else if insieme)
Ora l'unico problema è che se inserisco per esempio r=11 e c=12(in generale r e c > 10) il programma non funziona come dovrebbe....suggerimenti?:boh:
 
Ultima modifica da un moderatore:

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili