Многомерные Массивы. Разобраться В Коде.

Тема в разделе "C/C++/C#", создана пользователем Hqw33, 26 мар 2012.

  1. Hqw33

    Hqw33 Гость

    Пишу в Microsoft Visual Studio ->Win32 Console application ->C++.
    Условие задачи:
    Создать программу, которая реализует журнал с оценками в виде двумерного массива (студенты - строки, оценки за контрольные - столбцы). Предположить, что в группе 9 студентов и 8 контрольных. Заполнить журнал случайными оценками от 4 до 12, показать его на экран. Найти лучшего студента, худшего студента (сумма всех оценок максимальна, минимальна). Средние оценки по каждой контрольной занести в отдельный одномерный массив.

    имеются вопросы по решению, все вопросы выделены "!//!"
    Заранее большое спасибо за помощь!

    Решение:
    Код (C++):
     
    #include <iostream>
    #include <ctime>
    using namespace std;

    void main()
    { setlocale(LC_ALL, "Russian");
    const int row=9;
    const int col=8;
    float arr[row][col];
    int maxSumma;
    int minSumma;
    srand(unsigned(time(NULL)));
    for (int i=0; i<row; i++)
    {
    for (int j=0; j<col; j++)
    {
    arr[j]=rand()%(13-4)+4;
    cout<<arr[j]<<"\t";
    }
    cout<<"\n";
    }
    cout<<"\n";
    int IndexMaxStr = -1; //Индекс строки с макс. суммой элементов !//! Почему именно -1 и 0?
    int IndexMinStr = 0; //Индекс строки с миним. суммой элементов
    maxSumma = 0;
    minSumma = 12*row;

    for (int i=0; i<row; i++) !//! Нахождение лучшего и худшего ученика, что на каком шаге происходит? Объясните пожалуйста по подробней!
    {
    int summaTemp_1 = 0;

    for (int j=0; j<col; j++)

    summaTemp_1 +=arr[j];

    if (summaTemp_1 > maxSumma)
    {
    maxSumma = summaTemp_1;
    IndexMaxStr = i;
    }
    else if (summaTemp_1 < minSumma)
    {
    minSumma = summaTemp_1;
    IndexMinStr = i;
    }
    cout<<summaTemp_1<<"\t";
    }
    cout<<endl;
    cout<<"Лучший ученик:"<<IndexMaxStr+1<<"\n";
    cout<<"Худший ученик:"<<IndexMinStr+1<<"\n";
    float srSumma=0;
    for (int j=0; j<col; j++)
    {
    float summaTemp_2 = 0;

    for (int i=0; i<row; i++) !//! Что здесь делает for?

    summaTemp_2 +=arr[j];

    srSumma=summaTemp_2/row;

    cout<<srSumma<<"\t";
    }
    }[/CODE]
     
Загрузка...
Похожие Темы - Многомерные Массивы Разобраться
  1. lmike
    Ответов:
    7
    Просмотров:
    2.142
  2. Искушенный
    Ответов:
    0
    Просмотров:
    428
  3. Искушенный
    Ответов:
    1
    Просмотров:
    416
  4. Искушенный
    Ответов:
    1
    Просмотров:
    383
  5. Rpp
    Ответов:
    1
    Просмотров:
    809

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