помогите с вычислением среднего арифметического отрицательных элементо

Тема в разделе "Общие вопросы по С и С++", создана пользователем Nadin85, 20 фев 2008.

  1. Nadin85

    Nadin85 Гость

    алгоритм понимаю, но не могу его закодировать, вот начало моей программы, отрицательные элементы найдены, теперь по столбцам нужно вычислить среднее арифметическое
    Код (Text):
    void main()
    {
    int b;
    int i;
    int j;
    const int iRows = 4;
    const int iColumns = 5;
    float fMatrix[iRows][iColumns] =
    {  { 1, -2, 100, -4,  5},
    {-6, -7, -8, 9, -21},
    { 2, -3, 40, -5,  60},
    {10,  0, 20, 7,  27}    };

    for (i = 0; i < 4; i++)
    {
    for (j = 0; j < 5; j++)
    {
    found = 0;
    for (i = 0; i < n && !found; i++)
    for (j = 0; j < m && !found; j++)
    found = v[j] < 0;
    if (found)
    /* it was at i-1, j-1 */
     
  2. SunSanych

    SunSanych Well-Known Member

    Регистрация:
    28 июн 2006
    Сообщения:
    71
    Симпатии:
    0
    Код (Text):
    void main()
    {
    double b; // среднее арифметическое double a не int!!!
    int i;
    int j;
    int sum = 0; // сумма всех отрицательных элементов
    int count = 0; // количество отрицательных элементов
    const int iRows = 4;
    const int iColumns = 5;
    float fMatrix[iRows][iColumns] =
    {
    { 1, -2, 100, -4,  5},
    {-6, -7, -8, 9, -21},
    { 2, -3, 40, -5,  60},
    {10,  0, 20, 7,  27}
    };

    for (i = 0; i < 4; i++)
    {
    for (j = 0; j < 5; j++)
    {
    if(fMatrix[i][j] < 0)
    {
    sum += fMatrix[i][j];
    cnt++;
    }
    }
    }

    b = sum/cnt;
    }
     
  3. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Для: SunSanych
    Можно покритикую? Лучше уж так тогда:
    Код (Text):
    for (i = 0; i < iRows; i++)
    {
    for (j = 0; j < iColumns; j++)
    {
    .....
    }
    }
    Твой код находит среднее арифметическое отрицательных чисел для всей матрицы, а нужно:
    <!--QuoteBegin-Nadin85+20:02:2008, 12:47 -->
    <span class="vbquote">(Nadin85 @ 20:02:2008, 12:47 )</span><!--QuoteEBegin-->теперь по столбцам нужно вычислить среднее арифметическое
    [snapback]98889" rel="nofollow" target="_blank[/snapback]​
    [/quote]


    Для: Nadin85
    Ладно, тряхну стариной:
    Код (Text):
    #include <iostream>

    int main()
    {
    const int iRows = 4;
    const int iColumns = 5;
    float Matrix[iRows][iColumns] =
    {
    { 1, -2, 100, -4,  5},
    {-6, -7, -8, 9, -21},
    { 2, -3, 40, -5,  60},
    {10,  0, 20, 7,  27}
    };

    for( int j = 0; j < iColumns; j++ )
    {
    double Sum = 0;
    int Count = 0;
    for( int i = 0; i < iRows; i++ )
    {
    if( Matrix[i][j] < 0 )
    {
    Sum += Matrix[i][j];
    Count++;
    }
    }

    double Avr = 0;
    if( Count ) Avr = Sum / Count;
    std::cout << "Column " << j << ", AVR = " << Avr << std::endl;
    }

    return 0;
    }
     
  4. SunSanych

    SunSanych Well-Known Member

    Регистрация:
    28 июн 2006
    Сообщения:
    71
    Симпатии:
    0
    Извиняюсь, посмотрел только на название темы, про столбцы не увидел.
     
  5. Nadin85

    Nadin85 Гость

    Ребята, спасибо огромное за помощь!
     
Загрузка...
Похожие Темы - помогите вычислением среднего
  1. limbra
    Ответов:
    3
    Просмотров:
    44
  2. NylevoiChelovek
    Ответов:
    4
    Просмотров:
    97
  3. Ruska132
    Ответов:
    34
    Просмотров:
    263
  4. gURaBA_N
    Ответов:
    7
    Просмотров:
    145
  5. uxbmw3w
    Ответов:
    0
    Просмотров:
    61

Поделиться этой страницей