Заполните пропуски на месте звездочек(*) в примерах на сложение и вычитание в двоичной системе счисления: ———————————————————
1. 1*01 + 1** = 10100
2. 10111**011 + *0*011**1 = 100*1*00010
3. 11*0*11*1* + 11*1*11*1 = 10*1100*010
4. *0*0 - *** = *1*
5. 11*0*00*1* + 10*0*11*1 = 10*0011*010
6. **10 - **1 = *0*
#include <iomanip>
#include <ctime>
int main()
{
setlocale(LC_ALL, "RUSSIAN");
const int N = 5;
int matrix[N][N];
int A[(N*N) / 2], B[(N*N)/2];
int k = 0;
srand(time(NULL));
for (int i = 0; i < N; i++)
{
std::cout << std::endl;
for (int j = 0; j < N; j++)
{
matrix[i][j] = rand() % 100;
std::cout << std::setw(3) << matrix[i][j] << " ";
}
}
for (int i = 0; i < N; i++)
for (int j = 0; j < N; j++)
if (i >= j)
{
A[k] = matrix[i][j];
k++;
}
std::cout << std::endl;
std::cout << "Массив, содержащий элементы, лежащие на главной диагонали и ниже ее:" << std::endl;
for (int i = 0; i < k; i++)
std::cout << A[i] << " ";
k = 0;
std::cout << std::endl;
for(int i=0; i<N; i++)
for (int j = N - i-1; j < N; j++)
{
B[k] = matrix[i][j];
k++;
}
std::cout << "Массив, содержащий элементы, лежащие на побочной диагонали и ниже ее:" << std::endl;
for (int i = 0; i < k; i++)
std::cout << B[i] << " ";
std::cout << std::endl;
system("pause");
}
#include <math.h>
struct prm {
float a, b, c;
};
struct tch {
float x, y;
};
void Peres2(struct prm a, struct prm b, struct tch *t) {
t->x = (b.c*a.b-a.c*b.b)/(a.a*b.b-a.b*b.a);
t->y = (b.a*a.c-a.a*b.c)/(a.a*b.b-a.b*b.a);
}
int Prov(struct prm a, struct prm b) {
return a.a*b.b-a.b*b.a!=0;
}
void Vvod(struct prm *a, int k) {
do {
printf("Введите коэффициенты прямой %i\n", k);
scanf("%f%f%f", &a->a, &a->b, &a->c);
if ((a->a == 0) && (a->b == 0))
printf("Это не прямая, повторите ввод\n");
} while ((a->a == 0) && (a->b == 0));
a->c = -a->c;
}
struct prm a, b, c;
struct tch m12, m13, m23;
float s;
int main() {
Vvod(&a, 1);
Vvod(&b, 2);
Vvod(&c, 3);
if (!Prov(a, b) || !Prov(a, c) || !Prov(b, c)) {
printf("Прямые попарно не пересекаются");
return 0;
}
Peres2(a,b,&m12);
Peres2(a,c,&m13);
Peres2(b,c,&m23);
printf("Точка пересечения 1-2: %5.2f; %5.2f\n", m12.x, m12.y);
printf("Точка пересечения 1-3: %5.2f; %5.2f\n", m13.x, m13.y);
printf("Точка пересечения 2-3: %5.2f; %5.2f\n", m23.x, m23.y);
s = fabs(m12.x*(m23.y-m13.y)+m23.x*(m13.y-m12.y)+m13.x*(m13.y-m23.y))/2;
printf("Площадь треугольника пересечений=%.2f", s);
return 0;
}