- •Фгб оу впо «московский государственный университет
- •Файлы последовательного доступа
- •Файлы произвольного доступа
- •Операции над файлами
- •Задача 1.1
- •Задача 1.2
- •Задача 1.3.
- •Задача 2.3.
- •Задача 3.1.
- •Задача 2.1.
- •Задача 2.2.
- •Задача 3.2.
- •Задача 3.3.
- •Задача 3.4.
- •Задача 3.5
- •Задача 4.1
- •Задача 4.2
- •Задача 4.3
- •Задача 4.4
- •Задача 5.1
- •Задача 5.2
- •Задача 5.3
- •Задача 5.5
- •Задача 6.1
- •Задача 6.2
- •Задача 6.3
- •Задача 6.4
- •Задача 7.1
- •Задача 7.3
- •Задача 7.4
- •Задача 8.1
Задача 4.4
Дан одномерный массив из 10 целых чисел. Подсчитайте наибольшее число одинаковых идущих подряд в нём чисел.
Блок-схема.
начало

A[i]

i=0; i<9; i++





A[i]==A[i+1]
+ -




kol=kol+1
max<kol

-




-
max=kol



kol=0





kol

конец
Программный код.
#include "iostream"
using namespace std;
void main()
{setlocale(LC_ALL,"Russian");
const int n=10;
int i,k=0;
int A[n];
int kol=0;
int max=0;
for(i=0;i<10;i++)
{cout<<"A["<<i<<"]=";//Ввод массива
cin>>A[i];//Ввод массива с клавиатуры
}
for(i=0;i<9;i++)//Цикл
if (A[i]==A[i+1]) {kol=kol+1;}
else {if (max<kol) max=kol; kol=0;} {kol=kol+1;}
if (kol>max) {max=kol;}
if (max!=0) {cout<<max;}//Вывод максимального элемента
else {cout<<"Нет повторяющихся элементов ";}
}
Скриншот.

Задача 5.1
Дана матрица размера 10х10. В каждом столбце найти количество элементов, меньших среднего арифметического всех элементов соответствующей строки.
Блок-схема.
начало

a[n][n]

g=0;n;1
+ -







s=0

i=0;n;1
+ -




s=s+a[i][g]

b[g]=s/10.




b[g]

i=0;n;1
+ -





k=0

g=0;n;1

+ -



1
2
3
44
5
1
a[i][g]>b[g]
2
3
44
5

+ -




k++






c[i]=k




c[i]

конец
Программный код.
#include "iostream"
#include "iomanip"
#include <time.h>
using namespace std;
void main()
{setlocale(0, "");
int const n=10;
double b[n];
int c[n];
int a[n][n],i,g,s,k;
srand(time(NULL));
for(i=0;i<n;i++)
for(g=0;g<n;g++){
a[i][g]=1+rand()%2;}
//вывели массив
cout<<"Введённый массив имеет вид:";
cout<<endl;
for(i=0;i<n;i++){
cout<<endl;
for(g=0;g<n;g++){
cout<<setw(5)<<a[i][g];}}
//среднее арифметическое столбцов
cout<<endl;
for(g=0;g<n;g++){
s=0;
for(i=0;i<n;i++)
s=s+a[i][g];
b[g]=s/10.;
}
cout<<"Среднее арифметическое элементов столбцов:"<<endl;
for(g=0;g<n;g++)
cout<<setw(6)<<b[g];
cout<<endl;
//сравним соответствующие переменные строк со средним арифметическим столбцов
for(i=0;i<n;i++){
k=0;
for(g=0;g<n;g++){
if(a[i][g]<b[g])k++;}
c[i]=k;
}
cout<<"Количество элементов строки, которые меньше среднего арифметического:"<<endl;
for(i=0;i<n;i++)
cout<<setw(6)<<c[i];
cout<<endl;
}
Скриншот.

