Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 5.292 pregleda

Najnovija ↓

[Zadatak] Unos N elemenata niza, maksimum i prosek 06.04.2009. u 20:11 · pre 214 meseci #1
nemogu nikako da shvatim ove nizove
Napisati kod za program koji omogucava unos n clanova niza te pronalazi i ispusuje najveci clan i prosjek svih brojeva!
moze pomoc samo kako da pocnem. hvala.
Re: [Zadatak] Unos N elemenata niza, maksimum i prosek 06.04.2009. u 20:43 · pre 214 meseci
izmenjeno 1 put, poslednji put X Files 07.04.2009. u 19:35
  1. X Files07.04.2009. u 19:35zapis iz teksta poruke
#2
// NETESTIRANO
Code:

/*
    Napisati kod za program koji omogucava unos n clanova niza
    te pronalazi i ispusuje najveci clan i prosjek svih brojeva!
    moze pomoc samo kako da pocnem. hvala.
*/

#include <stdio.h>
#include <stdlib.h>

#define MAX_ELEMENATA 100

int main(void)
{
    int A[MAX_ELEMENATA], n, max, i, suma=0;

    /* unos broja clanova niza, uz proveru dozvoljenih granica */
    do
    {
        printf( "Unesite broj clanova niza N: " );
        scanf( "%d", &n );
    } while ( n<1 || n>MAX_ELEMENATA );

    for ( i=0; i<n; i++ )
    {
        /* unesi trenutni element */
        printf( "Unesite %d. element niza, A[%d]=", i+1, i );
        scanf( "%d", &A[i] );

        /* inicijalizuj MAX samo u prvom prolazu, kasnije se ovo ne izvrsava */
        if ( i == 0 )
            max = A[i];

        /* odredjuj max */
        if ( A[i] > max )
            max = A[i];

        /* racunaj sumu, zbog proseka */
        suma += A[i];
    }

    printf( "PROSEK UNETIH BROJEVA JE %d/%d=%.2f\n", suma, n, (float)suma/(float)n );
    printf( "NAJVECI JE BROJ %d\n", max );

    return 0;
}


Inace, max se moze racunati i na druge nacine.

Na primer, moze se ukljuciti biblioteka #include "limits.h" u kojoj su pored ostalog definisani INT_MIN, i INT_MAX.
Onda se max inicijalizuje sa INT_MIN (pesimisticki), van petlje naravno:
Code:

max = INT_MIN;

... nakon cega nije potreban ovaj deo u petlji:
Code:

/* inicijalizuj MAX samo u prvom prolazu, kasnije se ovo ne izvrsava */
if ( i == 0 )
    max = A[i];



itd...
Re: [Zadatak] Unos N elemenata niza, maksimum i prosek 20.04.2009. u 19:02 · pre 213 meseci #7
To bi vec trebao i sam da zakljucis.

Dakle:

- fiksirati broj elemenata:
Umesto:
Code:

#define MAX_ELEMENATA 100

Stavi:
Code:

#define BROJ_ELEMENATA 10


- izbaciti promenljivu n iz deklaracije i korigovati define konstantu:
Umesto:
Code:

int A[MAX_ELEMENATA], n, max, i, suma=0;

Treba da stoji:
Code:

int A[BROJ_ELEMENATA], max, i, suma=0;


- potpuno izbaciti unos:
Code:

/* unos broja clanova niza, uz proveru dozvoljenih granica */
do
{
    printf( "Unesite broj clanova niza N: " );
    scanf( "%d", &n );
} 

- Dole, gde god vidis promenljivu n, zameni je konstantom BROJ_ELEMENATA





Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme