Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка Программирование C++ 2014n.docx
Скачиваний:
7
Добавлен:
01.07.2025
Размер:
886.86 Кб
Скачать

Контрольные вопросы

  1. Дайте определение массива.

  2. Какие типы данных не допустимы для компонентов массива?

  3. Может ли левая граница индексов массива быть отрицательной?

  4. Какой массив называется двумерным?

  5. Правила описания двумерного массива.

  6. Как осуществляется доступ к элементам двумерного массива?

  7. Как осуществляется ввод двумерного массива?

  8. Какие способы ввода двумерного массива вы знаете?

  9. Размещение массива в памяти ЭВМ.

  10. Вывод двумерного массива.

  11. Может ли процедура read(x) ввести массив х целиком?

Пример выполнения лабораторной работы

Задание. Программа, которая для целочисленной матрицы 3 х 4 определяет среднее арифметическое ее элементов и количество положительных элементов в каждой строке.

Решение

  1. Математическая модель

Для нахождения среднего арифметического элементов массива требуется найти их общую сумму, после чего разделить ее на количество элементов. Порядок перебора элементов массива (по строкам или по столбцам) роли не играет. Нахождение количества положительных элементов каждой строки требует просмотра матрицы по строкам.

Аргументы: целочисленный массив a; целочисленные m и n – количество строк и столбцов.

Результаты: среднее арифметическое элементов sred (вещественного типа); количество положительных элементов в каждой строке n_pos_el (целого типа).

Промежуточные величины: счетчики i, j (целого типа).

2. Алгоритм

3. Программа

#include <iostream>

#include <conio.h>

#include <math.h>

const int m = 3, n = 4;

using namespace std;

int main()

{

int a[m][n];

cout<<" Введите элементы массива "<<endl;

for(int i=0; i<m; i++)

{

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

{

cin>>a[i][j];

}

}

double sred = 0;

int n_pos_el;

for(int i=0; i<m; i++)

{

n_pos_el = 0;

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

{

sred += a[i][j];

if(a[i][j]>0) n_pos_el++;

}

cout<<" В "<<i+1<<"-ой строке "<<n_pos_el<<" положительных элементов. "<<endl;

}

sred = sred/m/n;

cout<<" Среднее арифметическое: "<<sred<<endl;

_getch();

return 0;

}

4. Результат работы программы:

Введите элементы массива

1 2 3 4 -2 0 -3 -1 1 1 1 0

B 1-й строке 4 положительных элементов

B 2-й строке 0 положительных элементов

B 3-й строке 3 положительных элементов

Среднее арифметическое: 0.58