///////////////////////////////////////////////////////////////////////
// ITS – Visoka Škola Strukovnih Studija Za Informacione Tehnologije
// https://www.its.edu.rs/
// Predmet: Osnovi Programiranja – Programski jezik C
//
// Primer: Program koji proverava da li ucitani niz brojeva
// odgovara fibonacijevom nizu.
// Niz brojeva (koji se unosi sa tastature) moze imati najmanje 3 elementa.
///////////////////////////////////////////////////////////////////////
#include <stdio.h>
#define N 100
main()
{
int niz[N]; // duzina niza jednaka je konstanti N
//pomocna promenljiva temp postavljena je na dva
int i, duzina, temp=2, j;
// poruka korisniku
printf("Unesite duzinu niza, koja moze biti najmanje 3, a najvise %d:
", N);
scanf("%d", &duzina); // unos duzine niza
while(duzina>=3 && duzina<=N) // provera da li je uneta duzina niza u opsegu od 3 do N
// ako nije, onda program nece ni ulaziti u while petlju
{
for(i=1; i<=duzina; i++)
{
printf("Unesite clan niza x[%d]:", i-1); // poruka korisniku
scanf("%d", &j); // unos clanova niza, a vrednosti se dodeljuju pomocnoj promenljivoj 'j'
niz[i-1]=j; // dodela vrednosti odgovarajucem clanu niza
}
for(i=2; i<duzina; i++)
{
if(niz[i]==(niz[i-1]+niz[i-2]))
{
temp+=1; // temp se inkrementira uvek kada je niz[i]=niz[i-1]+niz[i-2]
}
else
{
printf("Dati niz brojeva ne odgovara fibonacijevom nizu.
"); // poruka korisniku
break; // izlaz iz programa
}
}
if(temp==duzina)
// poruka korisniku, koja se stampa ako je temp=duzina
printf("Dati niz brojeva odgovara fibonacijevom nizu.
");
break; // izlaz iz programa
}
}