rechnen mit zeiger
Verfasst: So Dez 14, 2014 10:03 am
Hallo liebes Forum Team
Ich komme nicht weiter, velleich könnt ihr mir helfen. Meine problem das berechnung in schleife zupacken.
weitere variable nicht zulasig
Edit by Xin: Code-Tage hinzugefügt
Ich komme nicht weiter, velleich könnt ihr mir helfen. Meine problem das berechnung in schleife zupacken.

weitere variable nicht zulasig
Code: Alles auswählen
#include <stdio.h>
#define ZEILEN 4
#define SPALTEN 5
int main(void)
{
int i, j;
int matrix_a[ZEILEN][SPALTEN] = { { 3, 15, 10, 30, 14 },
{ 16, 12, 12, 24, 8 },
{ 8, 5, 15, 20, 20 },
{ 10, 8, 14, 10, 25 } };
int matrix_b[5] = { 3, 2, 1, 2, 3 };
int ges_pkt[4] = { 0, 0, 0, 0, };
int *z_matrix_a;
int *z_matrix_b;
int *z_ges_pkt;
z_matrix_a = &matrix_a[0][0];
z_matrix_b = &matrix_b[0];
z_ges_pkt = &ges_pkt[0];
/*************************************************************************************************/
/* gesamtberechnung */
/**********************************************************************************************/
*(z_ges_pkt) = (*(z_matrix_a) * *(z_matrix_b)) +
(*(z_matrix_a+1) * *(z_matrix_b+1))+
(*(z_matrix_a+2) * *(z_matrix_b+2))+
(*(z_matrix_a+3) * *(z_matrix_b+3))+
(*(z_matrix_a+4) * *(z_matrix_b+4));
*(z_ges_pkt+1) = (*(z_matrix_a+5) * *(z_matrix_b) ) +
(*(z_matrix_a+6) * *(z_matrix_b+1))+
(*(z_matrix_a+7) * *(z_matrix_b+2))+
(*(z_matrix_a+8) * *(z_matrix_b+3))+
(*(z_matrix_a+9) * *(z_matrix_b+4));
*(z_ges_pkt+2) = (*(z_matrix_a+10) * *(z_matrix_b)) +
(*(z_matrix_a+11) * *(z_matrix_b+1))+
(*(z_matrix_a+12) * *(z_matrix_b+2))+
(*(z_matrix_a+13) * *(z_matrix_b+3))+
(*(z_matrix_a+14) * *(z_matrix_b+4));
*(z_ges_pkt+3) = (*(z_matrix_a+15) * *(z_matrix_b))+
(*(z_matrix_a+16) * *(z_matrix_b+1))+
(*(z_matrix_a+17) * *(z_matrix_b+2))+
(*(z_matrix_a+18) * *(z_matrix_b+3))+
(*(z_matrix_a+19) * *(z_matrix_b+4));
/***********************************************************************************************************************/
printf("\n\n\n");
printf("\n\tDie Punktdarstellung fuer 4 Klassen: ");
printf("\n\tNr der Aufg. 1 2 3 4 5 Gesamt Pkt.");
printf("\n\tKlasse 8a: %d ! %d ! %d ! %d ! %d ! %d",
matrix_a[0][0],matrix_a[0][1],matrix_a[0][2],matrix_a[0][3],matrix_a[0][4],ges_pkt[0]);
printf("\n\tKlasse 8b: %d ! %d ! %d ! %d ! %d ! %d",
matrix_a[1][0],matrix_a[1][1],matrix_a[1][2],matrix_a[1][3],matrix_a[1][4],ges_pkt[1]);
printf("\n\tKlasse 8c: %d ! %d ! %d ! %d ! %d ! %d",
matrix_a[2][0],matrix_a[2][1],matrix_a[2][2],matrix_a[2][3],matrix_a[2][4],ges_pkt[2]);
printf("\n\tKlasse 8d: %d ! %d ! %d ! %d ! %d ! %d",
matrix_a[3][0],matrix_a[3][1],matrix_a[3][2],matrix_a[3][3],matrix_a[3][4],ges_pkt[3]);
printf("\n\tPkt/Aufg.: %d ! %d ! %d ! %d ! %d !",
matrix_b[0],matrix_b[1],matrix_b[2],matrix_b[3],matrix_b[4]);
printf("\n\n\n\n");
}