1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программировании. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление

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

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

  1. Nadin85

    Nadin85 Гость

    Репутация:
    0
    алгоритм понимаю, но не могу его закодировать, вот начало моей программы, отрицательные элементы найдены, теперь по столбцам нужно вычислить среднее арифметическое
    Код:
    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

    Репутация:
    0
    Регистрация:
    28 июн 2006
    Сообщения:
    71
    Симпатии:
    0
    Код:
    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

    Репутация:
    0
    Регистрация:
    4 сен 2006
    Сообщения:
    2.566
    Симпатии:
    2
    Для: SunSanych
    Можно покритикую? Лучше уж так тогда:
    Код:
    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
    Ладно, тряхну стариной:
    Код:
    #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

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

    Nadin85 Гость

    Репутация:
    0
    Ребята, спасибо огромное за помощь!
     
Загрузка...
Похожие Темы - помогите вычислением среднего
  1. citizenfour
    Ответов:
    1
    Просмотров:
    67
  2. Tayrus
    Ответов:
    1
    Просмотров:
    77
  3. Lcf11
    Ответов:
    2
    Просмотров:
    82
  4. Tayrus
    Ответов:
    3
    Просмотров:
    107
  5. KanycTa
    Ответов:
    1
    Просмотров:
    78

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