Elektrotehnicki fakultet, Beograd  Ласло Краус Програмски језици (ЕГ)
Испит
22. 9. 2000.

Аутори: Зоран Аврамовић (задатак 1) и Ласло Краус (задатак 2 са решењем)

Задаци: 1 2 | Напомене | Решења: 2

Поставка задатка 1 (45 поена) ( почетак)

Начинити потпрограм типа FUNCTION на FORTRAN-у којим ће се израчунавати вредност функције:

где је:

Начинити главни програм у коме треба учитати ред верижног разломка n и m различитих вредности аргумента x. После сваког уношења вредности арумента x позвати наведени потпрограм. Штампати учитане податке (n и x) и израчунату вредност функције (arctg(x,n)). На крају штампати име и презиме, регистарски број и одсек кандидата.

Алгоритам реализовати у општем облику а посебне податке унети на почетку главног програма.

Посебни подаци: ред верижног разломка n=11, број различитих вредности аргумента x m=5, а за вредности аргумента x унети следеће износе: –1032, –0.75, 0, 2.5*10–18, 3.

Поставка задатка 2 (35 поена) ( решење | почетак)

Саставити на језику C потпрограм за одређивање броја елемената низа реалних бројева чије вредности су изнад просечне вредности свих елемената низа.

Саставити на језику C главни програм који прочита низ реалних бројева, позове горњи потпрограм, испише добијени резултат и понавља претходне кораке све док за дужину низа не прочита недозвољену вредност.


Напомене ( почетак)


Решење задатка 2 ( поставка | почетак)

#include <stdio.h>

#define MAX 20

int veliki(double a[], int n) {
  int i, k; double s;
  for (i=s=0; i<n; s+=a[i++]);
  if (n) s /= n;
  for (i=k=0; i<n; i++) if (a[i] > s) k++;
  return k;
}

void main () {
  double a[MAX}; int i, n;
  while (1) {
    printf ("n? "); scanf ("%d", &n);
  if (n < 0 || n > MAX) break;
    printf ("A? "); for (i=0; i<n; scanf ("%lf", &a[i++]));
    printf ("Broj natprosecnih = %d\n", veliki(a,n));
  }
}
( почетак)
         
Аутор: Ласло Краус
Е-пошта: kraus@etf.rs

Copyright © 2000, Laslo Kraus
Последња ревизија: 26.10.2000.