| 
                                         Zad. Napišite program koji učitava 9 realnih brojeva, te ispisuje umnožak broja koji ima najveću apsolutnu vrijednost s brojem koji ima najmanju apsolutnu vrijednost. Ako dva broja imaju jednaku apsolutnu vrijednost, za većeg/manjeg uzimate onog koji je prije učitan.
 Mislim da mi je kod tocan..
 Kako se ovaj kod može skratiti? Znam samo osnovnu if else i for petlju, jer nikad prije nisam ucio prog. I oce li ovo proc na kolokviju. Ili rjesenje mora biti elegancija i savrsenstvo?
 
 [code:1]#include <stdio.h>
 int main ()
 {
 double a,b,c,d,e,f,g,h,i,m,n;
 scanf ("%lf %lf %lf %lf %lf %lf %lf %lf %lf", &a,&b,&c,&d,&e,&f,&g,&h,&i);
 if (a<0)
     a=-a;
 if (b<0)
     b=-b;
 if (c<0)
     c=-c;
 if (d<0)
     d=-d;
 if (e<0)
     e=-e;
 if (f<0)
     f=-f;
 if (g<0)
     g=-g;
 if (h<0)
     h=-h;
 if (i<0)
     i=-i;
 if (a>=b && a>=c && a>=d && a>=e && a>=f && a>=g && a>=h && a>=i)
     m=a;
 else if (b>=c && b>=d && b>=e && b>=f && b>=g && b>=h && b>=i)
     m=b;
 else if (c>=d && c>=e && c>=f && c>=g && c>=h && c>=i)
     m=c;
 else if (d>=e && d>=f && d>=g && d>=h && d>=i)
     m=d;
 else if (e>=f && e>=g && e>=h && e>=i)
     m=e;
 else if (f>=g && f>=h && f>=i)
     m=f;
 else if (g>=h && g>=i)
     m=g;
 else if (h>=i)
     m=h;
 else
     m=i;
 if (a<=b && a<=c && a<=d && a<=e && a<=f && a<=g && a<=h && a<=i)
     n=a;
 else if (b<=c && b<=d && b<=e && b<=f && b<=g && b<=h && b<=i)
     n=b;
 else if (c<=d && c<=e && c<=f && c<=g && c<=h && c<=i)
     n=c;
 else if (d<=e && d<=f && d<=g && d<=h && d<=i)
     n=d;
 else if (e<=f && e<=g && e<=h && e<=i)
     n=e;
 else if (f<=g && f<=h && f<=i)
     n=f;
 else if (g<=h && g<=i)
     n=g;
 else if (h<=i)
     n=h;
 else
     n=i;
 printf ("%f", m*n);
 return 0;
 }
 [/code:1] 
					
					Zad. Napišite program koji učitava 9 realnih brojeva, te ispisuje umnožak broja koji ima najveću apsolutnu vrijednost s brojem koji ima najmanju apsolutnu vrijednost. Ako dva broja imaju jednaku apsolutnu vrijednost, za većeg/manjeg uzimate onog koji je prije učitan.
 
Mislim da mi je kod tocan..
 
Kako se ovaj kod može skratiti? Znam samo osnovnu if else i for petlju, jer nikad prije nisam ucio prog. I oce li ovo proc na kolokviju. Ili rjesenje mora biti elegancija i savrsenstvo?
 
 
 	  | Kod: | 	 		  #include <stdio.h>
 
int main ()
 
{
 
double a,b,c,d,e,f,g,h,i,m,n;
 
scanf ("%lf %lf %lf %lf %lf %lf %lf %lf %lf", &a,&b,&c,&d,&e,&f,&g,&h,&i);
 
if (a<0)
 
    a=-a;
 
if (b<0)
 
    b=-b;
 
if (c<0)
 
    c=-c;
 
if (d<0)
 
    d=-d;
 
if (e<0)
 
    e=-e;
 
if (f<0)
 
    f=-f;
 
if (g<0)
 
    g=-g;
 
if (h<0)
 
    h=-h;
 
if (i<0)
 
    i=-i;
 
if (a>=b && a>=c && a>=d && a>=e && a>=f && a>=g && a>=h && a>=i)
 
    m=a;
 
else if (b>=c && b>=d && b>=e && b>=f && b>=g && b>=h && b>=i)
 
    m=b;
 
else if (c>=d && c>=e && c>=f && c>=g && c>=h && c>=i)
 
    m=c;
 
else if (d>=e && d>=f && d>=g && d>=h && d>=i)
 
    m=d;
 
else if (e>=f && e>=g && e>=h && e>=i)
 
    m=e;
 
else if (f>=g && f>=h && f>=i)
 
    m=f;
 
else if (g>=h && g>=i)
 
    m=g;
 
else if (h>=i)
 
    m=h;
 
else
 
    m=i;
 
if (a<=b && a<=c && a<=d && a<=e && a<=f && a<=g && a<=h && a<=i)
 
    n=a;
 
else if (b<=c && b<=d && b<=e && b<=f && b<=g && b<=h && b<=i)
 
    n=b;
 
else if (c<=d && c<=e && c<=f && c<=g && c<=h && c<=i)
 
    n=c;
 
else if (d<=e && d<=f && d<=g && d<=h && d<=i)
 
    n=d;
 
else if (e<=f && e<=g && e<=h && e<=i)
 
    n=e;
 
else if (f<=g && f<=h && f<=i)
 
    n=f;
 
else if (g<=h && g<=i)
 
    n=g;
 
else if (h<=i)
 
    n=h;
 
else
 
    n=i;
 
printf ("%f", m*n);
 
return 0;
 
}
 
 | 	  
					
 
  
					
					
					
				 |