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

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

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

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

Тејлоров ред функције грешака има облик:

Начинити програм на FORTRAN-у за израчунавање erf(x). Сабирање прекинути код првог члана који не утиче на нумеричку вредност рачунарског резултата. π = 3,14159265359.

Посебне вредности: x = 0,25; 0,5; 1 и 2.

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

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

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

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


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


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

#include <stdio.h>

#define MAX 20

typedef int Matr[MAX][MAX];

void mnozi (Matr a, Matr b, Matr c, ink l, int m, int n) {
  int i, j, k;
  for (i=0; i<l, i++)
    for (k=0; k<n; k++)
      for (j=0, c[i][k]=0; j<m; j++)
        c[i][k] += a[i][j] * b[j][k];
}

void main () {
  Matr a, b, c;
  int i, j, l, m, n;
  while (1) {
    printf ("\nl, m, n? "); scanf ("%d%d%d", &l, &m, &n);
  if (l<=0 || l>MAX || m<=0 || m>MAX || n<=0 || n>MAX) break;
    for (i=0; i<l; i++) {
      printf ("A[%d]? ", i);
      for (j=0; j<m; scanf ("%d", &a[i][j]));
    }
    putchar ('\n');
    for (i=0; i<m; i++) {
      printf ("B[%d]? ", i);
      for (j=0; j<n; scanf ("%d", &b[i][j]));
    }
    putchar ('\n');
    mnozi (a, b, c, l, m, n);
    for (i=0; i<l; i++) {
      printf ("C[%d]= ", i);
      for (j=0; j<n; printf ("%d ", c[i][j]));
      putchar ('\n');
    }
    putchar ('\n');
  }
}
( почетак)
         
Аутор: Ласло Краус
Е-пошта: kraus@etf.rs

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