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

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

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

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

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

Начинити програм на FORTRAN-у за налажење свих простих бројева мањих од задатог природног броја n.

Посебни подаци: n = 100

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

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

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

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


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


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

#include <stdio.h>

#define MAX 50

void srednje (float a[][MAX], int m, int n, float b[]) {
  int i, j, k; float s;
  for (i=0; i<m; i++) {
    for (s=k=j=0; j<n; j++)
      if (a[i][j] > 0) { s += a[i][j]; k++; }
    b[i] = k ? s/k : 0;
  }
}

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

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