Array neuen Wert zuweisen



  • Hallo Leute!

    Es geht um mein Programm welches eine 4x4 Matrix um 90 Grad dreht und das ganze 4 mal.

    Ich habe es nun geschafft

    .....

    Zuerst wird die original Matrix ausgegeben:

    for(counter = 0; counter < 4; counter++)
         {
          for(counter_1 = 0; counter_1 < 4; counter_1++) 
            {
              printf("%c ",matrix1[counter][counter_1]);
            }
    	  printf("  ");
    
          for(counter_1 = 0; counter_1 < 4; counter_1++) 
            {
              printf("%c ",matrix2[counter][counter_1]);
            }
          printf("  ");
    
          for(counter_1 = 0; counter_1 < 4; counter_1++) 
            {
              printf("%c ",matrix3[counter][counter_1]);
            }
          printf("  ");
    
          for(counter_1 = 0; counter_1 < 4; counter_1++) 
            {
              printf("%c ",matrix4[counter][counter_1]);
            }
          printf("  ");
          printf("\n");
        }
    

    Danach die Drehung:

    for (round = 1; round <=4; round++)
        {
          for(counter = 0; counter < 4; counter++) 
            {
    
              for(counter_1 = 0; counter_1 < 4; counter_1++)
                {
                  printf("%c ",matrix1[3-counter_1][counter]);
                  matrix1_neu[counter][counter_1] = matrix1[3-counter_1][counter];
                }
              printf("  ");
    
               for(counter_1 = 0; counter_1 < 4; counter_1++)
                {
                  printf("%c ",matrix2[3-counter_1][counter]);
                  matrix2_neu[counter][counter_1] = matrix2[3-counter_1][counter];
                }
              printf("  ");
    
               for(counter_1 = 0; counter_1 < 4; counter_1++)
                {
                  printf("%c ",matrix3[3-counter_1][counter]);
                  matrix3_neu[counter][counter_1] = matrix3[3-counter_1][counter];
                }
              printf("  ");
    
               for(counter_1 = 0; counter_1 < 4; counter_1++)
                {
                  printf("%c ",matrix4[3-counter_1][counter]);
                  matrix4_neu[counter][counter_1] = matrix4[3-counter_1][counter];
                }
              printf("  ");
              printf("\n");
            }
    

    // HIER SOLLTE DIE MATRIX1 den "Wert" von MATRIX 1 neu annehmen -.-

    jetzt zu meinem Problem: an dieser Stelle würde ich meinen zwischengespeicherten Wert (matrix1,2,3,4_neu ist mein buffer) gern wieder als originalmatrix hernehmen sprich den bufferwert wieder zurückkopieren:

    aber es will nicht funktionieren 😞

    matrix1[counter_1][counter] = matrix1_neu[counter][counter_1];
            matrix2[counter_1][counter] = matrix2_neu[counter][counter_1];
            matrix3[counter_1][counter] = matrix3_neu[counter][counter_1];
            matrix4[counter_1][counter] = matrix4_neu[counter][counter_1];
    

    Kann mir bitte jemand helfen damit ich meinen Code nicht 4 mal kopieren muss was echt sehr ineffizient wäre.

    Vielen Dank !!!
    Lg



  • Du müsstest im ersten Schritt einmal den Unterschied zwischen "C#" und "C" verstehen, du bist im falschen Unterforum (Zudem stellt sich die Frage warum deine Code-Tags Probleme bereiten - vielleicht solltest du ihnen jeweils eine eigene Zeile spendieren).

    Ein Admin wird dich sicherlich verschieben.


Anmelden zum Antworten