←
↑
⇑
↓
→
Ласло Краус |
Програмски језици (ЕГ)
Испит
14. 9. 2001.
|
Скреће се пажња студентима да домаћи задатак треба да буде одштампан на рачунару, по могућству у облику извештаја преводиоца и са приложеним примером извршавања програма.
Аутори: Зоран Аврамовић (задатак 1) и
Ласло Краус (задатак 2 са решењем)
Задаци: 1
2
| Напомене
| Решења: 2
Поставка задатка 1 (45 поена)
(⇒ почетак)
Начинити програм на FORTRAN-у за налажење свих простих бројева мањих од задатог природног броја n.
Посебни подаци: n = 100
Потребно је штампати учитане податке, добијени резултат, потребне описне текстове, име и презиме, регистарски број и назив факултета.
Поставка задатка 2 (35 поена)
(⇒ решење | почетак)
Саставити потпрограм на језику C за формирање низа од средњих вредности елемената већих од нуле по врстама задате реалне правоугаоне матрице.
Саставити главни програм на језику C који прочита матрицу реалних бројева, нађе збир средњих вредности елемената већих од нуле по врстама те матрице, испише добијени резултат и понавља претходне кораке све док за једну од димензија матрице не прочита недозвољену вредност.
- Испит траје 3 сата. У току првих 60 минута није дозвољено
напуштање сале.
- Рад се предаје искључиво у вежбанци за испит. Није дозвољено
имати поред себе друге листове папира.
- Коришћење литературе на испиту није дозвољено. Обратити пажњу на
форму рада: читљивост, уредност, коментарисање програма и опис
алгоритма утичу на оцену. Препоручује се рад обичном графитном
оловком.
- За позивање на практични део испита неопходно је добити више од
50% поена на оба задатка.
- Тачно урађени домаћи задатак донoси 5 поена.
- Практични део испита доноси 15 поена. На практичном делу
испита кандидати ће уносити своја решења задатка 1) у
рачунар и после ће вршити потребне исправке да би ти програми
исправно радили. Време одржавања као и распоред кандидата по
групама за практични део испита биће накнадно објављен.
#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.