Hier mein Code. Wie bereits erwähnt komme ich in den Schleifen an sich nicht weiter. Die Verschachtelung macht mir Probleme.
Ich habe heute unseren Dozenten nach der Aufgabe gefragt und dieser war genau so ratlos, wie ich das komplette Wochenende.
Code:
#include <stdio.h>
#include <math.h>
main()
{
int a[3]={}, b[3]={}, c[3]={}, n, i=0, A=0;
printf("Wieviele solche Dreiecke soll das Programm suchen? ");
scanf("%d", &n);
do{
i++;
a[0]=0; a[1]=0; a[2]=0;
b[0]=0; b[1]=0; b[2]=0;
c[0]=0; c[1]=0; c[2]=0;
do{
A++;
c[0]=A;
do{
a[0]=a[0]+1;
c[0]=c[0]-1;
if((a[0]*c[0])/2==A)
{
a[1]=a[0];
c[1]=c[0];
do{
a[1]=a[1]+1;
c[1]=c[1]-1;
if((a[1]*c[1])/2==A)
{
a[2]=a[1];
c[2]=c[1];
do{
a[2]=a[2]+1;
c[2]=c[2]-1;
if((a[2]*c[2])/2==A)
{
goto b;
}
}while(c[2]>0);
}
}while(c[1]>0);
}
}while(c[0]>0);
}while((a[0]*c[0])/2!=A && (a[2]*c[1])/2!=A && (a[2]*c[2])/2!=A);
b:;
b[0]=sqrt(pow(c[0],2)-pow(a[0],2));
b[1]=sqrt(pow(c[1],2)-pow(a[1],2));
b[2]=sqrt(pow(c[2],2)-pow(a[2],2));
printf("--%d-------------", i);
printf("Flaeche: %d", A);
printf("%d %d %d", a[0], b[0], c[0]);
printf("%d %d %d", a[1], b[1], c[1]);
printf("%d %d %d", a[2], b[2], c[2]);
}while(i!=n);
getch();
}
Lesezeichen