Академический Документы
Профессиональный Документы
Культура Документы
Передача массивов
внутрь функции
Домашнее задание 2
Задание 1. Написать перегруженные функции (int, double,
char) для выполнения следующих задач:
■ Инициализация квадратной матрицы;
■ Вывод матрицы на экран;
■ Определение максимального и минимального элемента
на главной диагонали матрицы;
■ Сортировка элементов по возрастанию отдельно для
каждой строки матрицы.
#include<iostream>
#include<time.h>
using namespace std;
int massive(int ms[][10], int raw, int col, int max, int min);
int massive(int ms[][10], int raw,int col, int max, int min)
{
min = ms[0][0];
max = ms[0][0];
if (ms[i][j] < min) min = ms[i][j];
if (ms[i][j] > max) max = ms[i][j];
cout << " \n";
cout << " " << ms[i][j] << " ";
cout << "\n";
}
}
}
int buf;
for (int i = 0;i < raw;i++)
{
for (int j = col - 1;j > i;j--)
{
}
}
return (int)massive( ms[][10], raw, col, max, min);
}
int main()
{
const int n = 10;
int ms1[n][n], ma, mi, i, j, raw1, col1;
srand(time(NULL));
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
ms1[i][j] = rand() % 100;
cout << ms1[i][j] << " ";
}
cout << "\n";
}
cout << "\n";
massive(ms1[n][10],raw1,col1,ma,mi);
cout << "Max = " << ma << "\t" << "Min = " << mi << endl;
return 0;
#include <iostream>
using namespace std;
int NOD (int a, int b)
{
if (b == 0)
return a;
if (a > b)
return NOD (b, a % b);
else
return NOD (a, b % a);
}
int main ()
{
setlocale (0, "");
int a, b;
cout << "Введите 2 числа: " << endl;
cin >> a >> b;
cout << "Наибольльший общий делитель равен: " << NOD (b, a % b) << endl;
cin.get();
cin.get();
return 0;
}
#include <iostream>
#include <time.h>
using namespace std;
int *m=new int [4];
int *q=new int [4];
static int sproba=0;
int *randNumber()
{
for (int i = 0; i < 4; i++)
*(m+i) = rand()%10;
return m;
}
int *digits(int n)
{
for (int i=3; i>=0; i--)
{
*(q+i)=n%10;
n/=10;
}
return q;
}
void Count(int *x, int *y, int n, int *bull, int *cow)
{
*bull = *cow = 0;
for (int i = 0; i < n; i++)
if (*(x+i) == *(y+i))
(*bull)++;
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++)
if ((*(x+i) == *(y+j)) && (i!=j))
(*cow)++;
}
void game(int *r, int *N)
{
*N=sproba;
cout << "Input your number: ";
int number;
cin >> number;
int *b=digits(number);
int bull, cow;
Count(r, b, 4, &bull, &cow);
cout << "Bulls = " << bull << ", cows = " << cow << endl;
sproba++;
if (bull == 4) cout << "OK!\n";
else game(r, N);
}
void main()
{
int m = 0;
srand(time(NULL));
int *a=randNumber();
game(a, &m);
cout << "Winning in " << m << " moves!\n";
}