
Что это такое – египетская система счисления? Чтобы написать какое-либо число, использовали иероглифы, обозначавшие определенные числа, сумма которых равнялась нужному значению. Специальные обозначения имелись для чисел 1, 10, 100, 1000, 10000, 100000, 1000000. При написании нужного числа каждое обозначение использовалось до 9 раз. Запись в египетской системе счисления шла по возрастанию: вначале единицы, потом десятки, сотни и так далее. Причем писали, как правило, справа налево, но можно было и слева направо, сумма от этого не менялась. Использовалось и вертикальное написание, но тогда отсчет шел сверху вниз.
Объяснение:Использовалось два написания: Иероглифический, в котором употреблялись принятые иероглифы. Иератический, который являлся более схематичным и удобным на практике
#include <iostream>
#include <time.h>
using namespace std;
double ssummaf(double array2[5][5], size_t m, size_t i, size_t j)
{
double s = 0;
for (size_t k = 0; k < m; k++)
s += array2[i][k] * array2[j][k];
return s;
}
bool proverka(double array1[5][5], size_t n, size_t m)
{
double s = 0;
for (size_t i = 0; i < n; i++) {
size_t j = i;
s = ssummaf(array1, m, i, j);
if (s != 1)
return false;
for (size_t j = i + 1; j < n; j++) {
s = ssummaf(array1, m, i, j);
if (s != 0)
return false;
}
}
return true;
}
int main() {
srand(time(0));
setlocale(LC_ALL, "Russian");
double A[5][5], B[5][5], C[5][5];
double D[5][5]{ {1,0,0,0,0},{0,1,0,0,0},{0,0,1,0,0},{0,0,0,1,0},{0,0,0,0,1} };
for (size_t i = 0; i < 5; i++) {
for (size_t j = 0; j < 5; j++)
A[i][j] = rand() % 2;
}
for (size_t i = 0; i < 5; i++) {
for (size_t j = 0; j < 5; j++)
B[i][j] = A[j][i];
}
for (size_t i = 0; i < 5; i++) {
for (size_t j = 0; j < 5; j++)
cout << " " << A[i][j];
cout << endl;
}
cout << endl;
for (size_t i = 0; i < 5; i++) {
for (size_t j = 0; j < 5; j++)
cout << " " << B[i][j];
cout << endl;
}
bool answer1 = proverka(A, 5, 5);
bool answer2 = proverka(D, 5, 5);
if (answer1)
cout << "Ортонормирована\n";
else
cout << "Не ортонормирована\n";
if (answer2)
cout << "Ортонормирована\n";
else
cout << "Не ортонормирована\n";
return 3;
}