[ Jcod3r @ 13.01.2008. 17:34 ] @
Pozdrav !

Potrebno mi je da ulazne vrijednosti sortiram po velicini (npr. -9 0 2 5 itd...) u Tabeli[DIM], normalno da ce korisnik unijeti prvo 98 pa -9 zatim 2 itd..

Da li prvo da unesemo vrijednosti a zatim sortiramo ili se to radi odmah pri unosu?


Nesto sam zamutio :)

Code:
void upisTabele(int taTabela[DIM]){
    int Br=0,i=0,mjesto=0;
    
    printf("Unesite br : ");
    scanf("%d", &Br);
    
    for(i=0;i<DIM;i++)
    if(Br=mjesto)
        taTabela[i]=Br;
        if(Br>mjesto)
            taTabela[i+1]=Br;
        if(Br<mjesto)
            taTabela[i-1]=Br;    /*OVO JE PROMASAJ :)*/    
}
[ laki_srt @ 13.01.2008. 18:10 ] @
Evo ti petlja koja radi sortiranje niza od najmanjeg elementa do najveceg:
Code:
for (i=0;i<=n-1;i++) //n je velicina niza
    for(j=i;j<n;j++)
        if(niz[j]<niz[i]){
            temp=niz[i];
            niz[i]=niz[j];
            niz[j]=temp;}

Pozdrav!
[ Jcod3r @ 13.01.2008. 19:26 ] @
Hvala puno laki_srt :)

Evo kompletan source programa, nadam se da ce nekome koristiti :)

Code:
#include <stdio.h>
#include <stdlib.h>
#define DIM 5

void Izlaz(char * poruka){
    printf("Error : %s", poruka);
    system("PAUSE");
    exit(0);    
}

int unesiBr(void){
    
    int Br=0,i=0;
    printf("\nEntrez d'entier : ");
    scanf("%d", &Br);
    if(Br<-9 || Br>99)
    Izlaz("Entrez entiers de -9 a 99\n");
    
    return Br;
}

int nadjiMax(int taTabela[DIM]){
    int i=0,Max=-9,Max1=-9;
    for(i=0;i<DIM;i++){
        if(taTabela[i]>Max){
            Max1=Max;
            Max = taTabela[i];
        }
        else
        if(taTabela[i]>Max1){
            Max1=taTabela[i];
        }
    }
    
    printf("\n\nMax dans cette Tablo est : %d et Max plus grand est : %d\n", Max1, Max);
    return 0;
}

void upisTabele(int taTabela[DIM]){
    int i=0;
    for(i=0;i<DIM;i++)
    taTabela[i]=unesiBr();
    
}

void ispisTabele(int taTabela[DIM]){
    int i=0,temp=0,j=0;
    for (i=0;i<=DIM-1;i++) //DIM je velicina niza
    for(j=i;j<DIM;j++)
        if(taTabela[j]<taTabela[i]){
            temp=taTabela[i];
            taTabela[i]=taTabela[j];
            taTabela[j]=temp;
            }
    printf("\n\nValeurs sont trie de facon croissante :\n");
    for(i=0;i<DIM;i++)
    printf("%3d",taTabela[i]);
}

int main(void){
    int Tabela[DIM];
    upisTabele(Tabela);
    ispisTabele(Tabela);
    nadjiMax(Tabela);
    
    return 0;
}