Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Многомерные массивы. Разобраться в коде. 
:(
    Опции темы
Hqw33
Дата 26.3.2012, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 25.3.2012

Репутация: нет
Всего: нет



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

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

Решение:
Код

#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[i][j]=rand()%(13-4)+4; 
        cout<<arr[i][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[i][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[i][j];

    srSumma=summaTemp_2/row;

    cout<<srSumma<<"\t";
}
}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1817 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.