Информация о росте учащихся одного класса задана в виде массива - C (СИ) (155330)
Формулировка задачи:
Информация о росте учащихся одного класса задана в виде массива. Рост девочек кодируется знаком "+" (плюс), рост мальчиков - знаком "-" (минус). Определите и выведите на экран средний рост мальчиков.
Решение задачи: «Информация о росте учащихся одного класса задана в виде массива»
textual
Листинг программы
#include <cstdlib> #include <iostream> using namespace std; int main() { char growth[5][4] = { "+10", "-5", "+20", "-15", "-16" }; double av = 0; for (int i = 0; i < 5; ++i) { if (growth[i][0] == '-') av += atoi(growth[i]); } cout << (av / 5) << endl; }
Объяснение кода листинга программы
- Объявлен массив growth типа char размером 5x4, содержащий информацию о росте учащихся одного класса.
- Значения массива growth представляют собой строки, где знак
+
означает рост ученика в сантиметрах, а знак-
- уменьшение роста в сантиметрах. - Переменная av инициализирована значением 0 и используется для хранения суммы всех уменьшений роста.
- В цикле for перебираются все элементы массива growth.
- Если первый символ элемента массива growth[i] равен
-
, то это уменьшение роста, и его значение добавляется к переменной av. - После окончания цикла, значение переменной av равно сумме всех уменьшений роста.
- Выводится средняя величина уменьшения роста, равная (av / 5).