Prikaz jedne poruke
Stara 15.3.2019, 18:52   #394
Remedy
Veteran
 
Član od: 5.11.2005.
Poruke: 826
Zahvalnice: 177
Zahvaljeno 199 puta na 154 poruka
Određen forumom Re: How to... C++

Kod:
#include <stdio.h>

int main()
{

    int n=1; 
    int i; 
    int max;
    int o[14] = { 3,6,6,6,7,10,10,8,10,9,9,10,6,7 }; 

    max = o[0];

    for (i = o; i <= 14; i++)
    // i = nula, a ne slovo O
    // nizovi se indeksiraju od 0, maksimalni index je 13, tj o[13] je 7; znaci i < 14
    {
        if (o[i + 1] > o[i])
        // Ovo ne moze: kada je i = 13, o[i + 1] je o[14], ko zna sta je na toj adresi u memoriji
        // posto je i <= 14, ocitace se i o[15] kada je i = 14, takodje ko zna sta je na toj adresi
        // Ako si stigao do pointera trebalo bi da razumes zasto
        {
             max = o[i + 1];
             n = 1;
	}
        else if (o[i+1] < o[i])
	{
             continue;
	}
        else
        {
             n++;
	}

	printf("%d\n", n); // Ovo je u for petlji, stampace 15 puta

    }

    return 0;
}
Kod:
#include <stdio.h>

int main()
{

    int n = 0; 
    int i; 
    int max;
    int o[14] = { 3,6,6,6,7,10,10,8,10,9,9,10,6,7 }; 
    
    max = 1; // Ovo bih inicijalizovao na vrednost najmanje ocene, pretpostavljam 1

    for (i = 0; i < 14; i++)
    {
        if (o[i] > max)
        {
            max = o[i];
            n = 1;
        }
        else if (o[i] == max)
        {
            n++;
        }
        
    }

    printf("Max ocena: %i, broj studenata sa max ocenom: %i.\n", max, n);

    return 0;
}

// => Max ocena: 10, broj studenata sa max ocenom: 4.
Remedy je offline   Odgovor sa citatom ove poruke