Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zapis elementow do nowej tabliccy

Ostatnio zmodyfikowano 2017-11-26 19:29
Autor Wiadomość
adam98
Temat założony przez niniejszego użytkownika
Zapis elementow do nowej tabliccy
» 2017-11-26 16:54:22
W jaki sposób  ilość elementów , które są większe od średniej zapisać do nowej tablicy?

C/C++
#include <stdio.h>
#include <stdlib.h>

int main()
{
    float x[ 10 ];
    int i, n, w, w2, min, max, p, p1;
    float srednia;
    printf( "podaj rozmiar\n" );
    scanf( "%i", & n );
    printf( "podaj %i liczb\n", n );
    for( i = 0; i < n; i = i + 1 ) {
        printf( "x[%i]=", i );
        scanf( "%f", & x[ i ] );
    }
    printf( "wczytano tablice\n" );
    for( i = 0; i < n; i = i + 1 ) {
        printf( "\n[%i]=%.1f", i, x[ i ] );
       
    }
    w = 0;
    w2 = 0;
    srednia = 0;
   
    for( i = 0; i < n; i = i + 1 ) {
        //liczy srednia
        w += x[ i ];
       
        srednia = w / n;
    }
    printf( "\n wynik srednia %f", srednia );
   
    for( i = 0; i < n; i = i + 1 )
    {
       
        if( x[ i ] > srednia )
             w2 = w2 + 1;
        // ilość elementów , które są większe od średniej
       
    }
   
    printf( "\n wynik %i  ", w2 );
   
    return 0;
}
P-167209
nanoant20
» 2017-11-26 18:02:52
skorzystaj z tablicy dynamicznej

kopiowanie tablic wyglada tak
newtab[ i ] = x[ i ];

EDIT
de facto @pekfos ma rację (przerost formy nad trescią)
zamiast tablicy dynamicznej zadeklaruj jeszcze jedną tablice, przekopiuj wartosci z x[i] do newtab[i] i wypisz w pętelce wartości z tablicy newtab[ i ]. Nie zapomnij o postawienu tam warunku
if( x[ i ] > srednia )
, który już wcześniej napisałeś.

P-167211
pekfos
» 2017-11-26 19:29:21
Tych liczb nie będzie więcej niż 10. Alokacja nie ma tu żadnego sensu.
P-167213
« 1 »
  Strona 1 z 1