![](/user_photo/_userpic.png)
- •Пример№3
- •Продолжение примера №3
- •Пример№4 программы с использованием массива.
- •• Алгоритм
- •Модифицируем алгоритм для нахождения индекса минимального элемента Пример №5.
- •• Алгоритм
- •Программа
- •Пример №6.
- •Введём следующие обозначения.
- •Пример №7.
- •Ввод n,m,A
- •это полная
- •Кратные циклы
- •Ввод –вывод матриц
- •Пример.
- •В матрице найти произведение элементов каждого столбца, записать результат в одномерный массив
- •В каждом столбце матрицы искать произведение, записать в одномерный массив(обход по столбцам)
- •Найти среднее арифметическое отрицательных элементов матрицы
- •Искать и выводить в каждой строке матрицы количество нулей (обход по строкам)
Пример№3
Дан целочисленный массив, содержащий не более 10 элементов. Найти номер первого нулевого элемента в массиве.
#include <iostream> using namespace std; int main() {
int a[10], n,k; do {
cout << " array size " << endl;
cin>> n;//реальный размер массива
}
while (n<1 || n>10);//ввод размера массива с проверкой диапазона, заданного в описании массива
Продолжение примера №3
//ввод элементов массива for (int i=0; i<n; i++) { cout<<i<<" array element "; cin>>a[i];
}
int i=0;
while (i<n && a[i]!=0) i++;
if (i== n)cout<<" no zeros \n"; else
cout<<" number of the first zero = "<<i; return 0;}
![](/html/75257/141/html_PYSq2vRDJC.MdcY/htmlconvd-nwDMJX4x1.jpg)
Пример№4 программы с использованием массива.
•Пусть задан x - массив из n чисел.
•Надо найти максимальное значение в массиве.
X
Xmax
Xmax-ячейка для хранения максимального элемента
![](/html/75257/141/html_PYSq2vRDJC.MdcY/htmlconvd-nwDMJX5x1.jpg)
• Алгоритм |
начало |
|
Ввод X,n |
||
|
||
|
Xmax = X[0] |
|
|
i= 1 |
|
да |
нет |
|
|
Xmax<X[i] |
Xmax =X[i]
i= i+1
да |
нет |
i < n Вывод Xmax
конец
#include <iostream> using namespace std; int main(void)
{ int x[10]; /* резервирует место для 10 целочисленных элементов */
int i, Xmax,n; cin>>n;
//ввод реального числа элементов массива for (int i=0; i<n; i++) {
cout<<i<<" array element "; cin>>x[i];}
Xmax = x[ 0 ]; //подготовка цикла
i=1; do
if (x[ i ] > Xmax )Xmax = x[ i ]; i= i + 1;
while (i < n); cout<< Xmax; return 0;}
Модифицируем алгоритм для нахождения индекса минимального элемента Пример №5.
![](/html/75257/141/html_PYSq2vRDJC.MdcY/htmlconvd-nwDMJX8x1.jpg)
• Алгоритм
Ввод X,n
Nmin = 0
i= 1
да X[Nmin]>X[i] нет
Nmin = i
i= i+1
да |
нет |
i < n Вывод Nmin
stop
Программа
#include <iostream> using namespace std; int main(void)
{int x[10]; /* резервирует место для 10 целочисленных элементов */ int i, Nmin,n; cout<<“n=?”; cin>>n; If(n<1||n>10){cout<<“NZD”;exit(1);}
else{
//ввод элементов массива for (int i=0; i<n; i++) { cout<<i<<" array element "; cin>>x[i];}
Nmin =0; //подготовка цикла i=1;
do
if (x[ i ] < x[Nmin] )Nmin = i ; i= i + 1;
while (i < n); cout<<“Nmin=“<<Nmin;} return 0;}
Пример №6.
Водномерном массиве найти, под каким номером стоит первый чётный по значению элемент.
Введём следующие обозначения.
x - исходный массив
n - реальное число элементов x nom - искомая переменная(флаг)
i – номер исследуемого элемента массива x
![](/html/75257/141/html_PYSq2vRDJC.MdcY/htmlconvd-nwDMJX12x1.jpg)
Ввод x,n Nom = -1
i=0
нет |
да |
X[i] % 2==0 |
Nom = i
|
i = i+1 |
|
|
да |
i<n && Nom<0 нет |
|
|
|
нет |
Nom== -1 |
да |
|
|
|
|
|
вывод Nom |
|
Вывод «нет чётных» |
stop
#include <iostream> using namespace std;
const int n=8;//длина массива, когда массив описывается //статически, то адрес памяти выдан транслятором и его
//изменять нельзя
int main(void) {int x[n];int Nom,i;
for (i=0;i<n; i++)//цикл для ввода всего массива {cout<<“x[“<< i << “]=“;
cin>>x[i];}
Nom=-1; //определение флажка (результата) i=0;
do
if (x[i] %2 = =0) Nom=i; //анализ эл-та i=i+1;
while ((i < n) &&(Nom == -1));
// печать результата if (Nom == -1) cout<<“net chetnix”;
else cout<<“nom=“<< Nom<<endl; return 0;
}