Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so dont bother with any of their useless mail servers here and just use oauth login instead. Thank the nice Russians for causing that. :)
Paste
Pasted as C by ijozic1 ( 3 years ago )
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
void ubaci(int *niz) {
int *p = niz;
int vel = 10, *i, j, suma = 0, broj;
while (p < niz + vel) {
broj = abs(*p);
suma = 0;
do {
suma = suma + broj % 10;
broj = broj / 10;
} while (broj != 0);
for (i = niz + vel; i > p + 1; i--) {
*i = *(i - 1);
}
*(p + 1) = suma;
vel++;
p = p + 2;
}
*i = suma;
/*p = niz;
printf("\n");
while (p < niz + vel) {
printf("%d ", *p);
p++;
}*/
}
int izbaci(int *niz) {
int *p = niz, *j;
int vel = 20; /*Znamo da je velicina 20, s obzirom da iza svakog clana imamo
njegovu sumu*/
int broj = 0, i = 1, fibonaccijev = 0, proslijedjeni, Fibonacci, temp;
while (p < niz + vel) {
broj = 0;
i = 1;
fibonaccijev = 0;
Fibonacci = 1;
proslijedjeni = *p;
/*U sljedecoj while petlji cemo kreirati Fibonnacijev niz dok ne dodjemo do
* broja iz niza*/
while (Fibonacci < proslijedjeni) {
Fibonacci = broj + i;
temp = i;
broj = i;
i = broj + temp;
/*Ako je broj iz niza jednak Fibbonacijevom, varijabla fibonaccijev
* postaje 1 i ukazuje da treba vrsiti prepisivanje*/
if (Fibonacci == proslijedjeni)
fibonaccijev = 1;
}
/*Izbacimo element iz niza i izvrsimo prepisivanje ostalih*/
if (fibonaccijev == 1) {
for (j = p; j < niz + vel - 1; j++) {
*j = *(j + 1);
}
vel--;
if (p != niz)
p--;
}
if (p == niz) {
p++;
p--;
}
p++;
}
return vel;
}
int main() {
int niz[10], i, vel;
printf("Unesite niz od 10 brojeva: ");
for (i = 0; i < 10; i++) {
scanf("%d", &niz[i]);
}
ubaci(niz);
vel = izbaci(niz);
if(vel==0) printf("Prazan niz.");
else{
printf("Modificirani niz glasi: ");
for (i = 0; i < vel; i++) {
printf("%d", niz[i]);
if (i < vel - 1)
printf(", ");
else
printf(".");
}
}
return 0;
}
Revise this Paste
Parent: 20726