Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _CRT_SECURE_NO_WARNINGS
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- typedef int NIZ[100];
- void unos(NIZ niz, int *brEl){
- int i;
- int element;
- printf("Koliko elemenata zelite?");
- scanf("%d", &(*brEl));
- for (i = 0; i < *brEl; i++){
- printf("Unesite element koji zelite da unesete\t");
- scanf("%d", &element);
- niz[i] = element;
- }
- }
- void prikaz(NIZ niz,int brEl){
- int i;
- printf("Clanovi Vaseg niza su:\t");
- for (i = 0; i < brEl; i++){
- printf("%d\t", niz[i]);
- }
- printf("\n\n");
- }
- void unosNeParnihElemenata(NIZ niz, int *brEl){
- int i;
- int element;
- printf("Koliko elemenata zelite?\t");
- scanf("%d", &(*brEl));
- for (i = 0; i < *brEl; i++){
- printf("Unesite element koji zelite da unesete\t");
- scanf("%d", &element);
- if (element % 2 != 0){
- niz[i] = element;
- }
- else{
- i--;
- }
- }
- }
- void prikazParnihPozicija(NIZ niz, int brEl){
- int i;
- printf("Clanovi Vaseg niza su:\t");
- for (i = 0; i < brEl; i++){
- if (i % 2 == 1){
- printf("%d\t", niz[i]);
- }
- }
- printf("\n\n");
- }
- int sumaSvihClanova(NIZ niz,int brEl){
- int suma = 0;
- int i;
- for ( i = 0; i < brEl; i++)
- {
- suma = suma + niz[i];
- }
- return suma;
- }
- //PROIZVOD DOMACI!!!
- //FAKTORIJAL PARNIH CLANOVA!!!
- double aritmetickaSredina(NIZ niz, int brEl){
- double as;
- int suma;
- suma = sumaSvihClanova(niz,brEl);
- as = suma / (double)brEl;
- return as;
- }
- void unosNaKraj(NIZ niz,int *brEl){
- int element;
- printf("Koji element zelite da unesete na kraj:\t");
- scanf("%d", &element);
- niz[*brEl] = element;
- (*brEl)++;
- }
- void unosNaPocetak(NIZ niz, int *brEl){
- int i;
- for (i = *brEl; i > 0; i--){
- niz[i] = niz[i - 1];
- }
- printf("Koji element zelite da unesete na pocetak:\t");
- scanf("%d",&niz[0]);
- }
- void unosNaZeljenuPoziciju(NIZ niz, int *brEl, int pozicija){
- int i;
- if (pozicija > *brEl){
- return;
- }
- for (i = *brEl; i > pozicija; i--){
- niz[i] = niz[i-1];
- }
- printf("Koji element zelite da unesete na %d. poziciju:\t",pozicija);
- scanf("%d", &niz[pozicija]);
- }
- void frekvencija(NIZ niz, int brEl){
- int i, j, k;
- int broj;
- int brojac;
- int radjen;
- for (i = 0; i < brEl; i++){
- broj = niz[i];
- brojac = 0;
- radjen = 0;
- for (k = 0; k < i; k++){
- if (broj == niz[k]){
- radjen = 1;
- }
- }
- if (radjen == 0){
- for (j = 0; j < brEl; j++){
- if (broj == niz[j]){
- brojac++;
- }
- }
- printf("Broj %d se nalazi %dx\n", broj, brojac);
- }
- }
- }
- void frekvencijaNoviNiz(NIZ niz, int brEl,NIZ novi,int *brEl1){
- int i, j, k;
- int broj;
- int brojac;
- int radjen;
- for (i = 0; i < brEl; i++){
- broj = niz[i];
- brojac = 0;
- radjen = 0;
- for (k = 0; k < i; k++){
- if (broj == niz[k]){
- radjen = 1;
- }
- }
- if (radjen == 0){
- for (j = 0; j < brEl; j++){
- if (broj == niz[j]){
- brojac++;
- }
- }
- if (brojac>1){
- novi[*brEl1] = broj;
- (*brEl1)++;
- }
- }
- }
- }
- void daLiJeNizPalindrom(NIZ niz, int brEl){
- int i;
- for (i = 0; i < brEl / 2; i++){
- if (niz[i] != niz[brEl - i - 1]){
- printf("NIZ NIJE PALINDROM!!!\n");
- return;
- }
- }
- printf("NIZ JE PALINDROM!!!\n");
- }
- int postoji(NIZ niz, int brEl, int broj){
- int i;
- for (i = 0; i < brEl; i++){
- if (niz[i] == broj){
- return 1;
- }
- }
- return 0;
- }
- void unijaDvaNiza(NIZ A, NIZ B, NIZ unija, int brEl1, int brEl2, int *brEl3){
- int i, j;
- int p;
- for (i = 0; i < brEl1; i++){
- p = postoji(unija, *brEl3, A[i]);
- if (p == 0){
- unija[*brEl3] = A[i];
- (*brEl3)++;
- }
- }
- for (j = 0; j < brEl2; j++){
- p = postoji(unija, *brEl3, A[i]);
- if (p == 0){
- unija[*brEl3] = B[j];
- (*brEl3)++;
- }
- }
- }
- void presekDvaNiza(NIZ A, NIZ B, NIZ presek, int brEl1, int brEl2, int *brEl3){
- int i;
- for (i = 0; i < brEl1; i++){
- if (postoji(B, brEl2, A[i]) == 1){
- if (postoji(presek, *brEl3, A[i]) == 0){
- presek[*brEl3] = A[i];
- (*brEl3)++;
- }
- }
- }
- }
- void sortiranjeNiza(NIZ niz, int brEl){
- int i, j;
- int pom;
- int dosloJeDoPromene;
- do{
- dosloJeDoPromene = 0;
- for (i = 0; i < brEl; i++){
- if (niz[i]>niz[i + 1]){
- pom = niz[i];
- niz[i] = niz[i + 1];
- niz[i + 1] = pom;
- dosloJeDoPromene = 1;
- }
- }
- } while (dosloJeDoPromene == 1);
- }
- //UBACITI 3 NAJVECA CLANA U NOVI NIZ!!!2
- int main(void){
- NIZ x;
- int brEl=0;
- double as;
- unos(x,&brEl);
- prikaz(x, brEl);
- as = aritmetickaSredina(x, brEl);
- frekvencija(x, brEl);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement