Sarzhanovaperuza
03.09.2020 15:36

Составьте программу вычисления корней квадратного уравнения по данным значениям его коэффициентов Сделать нужно ещё блок-схему , программу, трассировочную таблицу

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
sanie777velieva
13.05.2022 20:59

Объяснение:

#include <iostream>

#include <ctime>

#include <string>

using namespace std;

int main()

{

   srand(time(NULL));

   int N, M; // Розміри матриці

   cout << "Enter n: ";

   cin >> N;

   cout << "Enter m: ";

   cin >> M;

   if (N != M) // Перевірка на не квадратну матрицю

   {

       cout << "n should be equal to m" << endl;

       return 0;

   }

   int a, b; // Межі випадкових чисел масиву

   cout << "Enter a: ";

   cin >> a;

   cout << "Enter b: ";

   cin >> b;

   int Width = max(to_string(a).length(), to_string(b).length()) + 1; // Ширина для cout

   int** arr = new int* [N]; // Виділення пам'яті для динамічного масиву

   int** result = new int* [N]; // Виділення пам'яті для динамічного масиву (результат)

   for (int i = 0; i < N; i++)

   {

       arr[i] = new int[M];

       result[i] = new int[M];

   }

   cout << "n = " << N << endl

       << "m = " << M << endl

       << "Interval - [" << a << ";" << b << "]" << endl << endl

       << "Our matrix: " << endl;

   for (int i = 0; i < N; i++)

   {

       for (int j = 0; j < M; j++)

       {

           arr[i][j] = a + rand() % (b - a + 1);

           cout.width(Width); // Щоб було красиво

           cout << arr[i][j];

       }

       cout << endl;

   }

   for (int i = 0; i < N; i++)

   {

       for (int j = 0; j < M; j++)

       {

           if (j == 0 && i != N - 1)

           {

               result[N - 1][i + 1] = arr[i][j];

           }

           else if (i == N - 1 && j != 0)

           {

               result[j - 1][0] = arr[i][j];

           }

           else

           {

               result[i][j] = arr[i][j];

           }

       }

   }

   cout << endl << "Result matrix:" << endl;

   for (int i = 0; i < N; i++)

   {

       for (int j = 0; j < M; j++)

       {

           cout.width(Width); // Щоб було красиво

           cout << result[i][j];

       }

       cout << endl;

   }

   for (int i = 0; i < N; i++) // Звільнення пам'яті відведеної під динамічні масиви

   {

       delete[] result[i];

       delete[] arr[i];

   }

   delete[] result;

   delete[] arr;

}

0,0(0 оценок)
Ответ:
sasa26597
29.01.2021 05:04
Классическая задача про рыцарей, лжецов и нормальных людей. Есть шесть высказываний, три пары по два. Следовательно, у нас 6 вариантов развития событий, т.к. каждый из них может быть либо лжецом, либо рыцарем (всегда говорящим правду), либо нормальным (который и так и так). Перейдем к символьным обозначениям.
A: A невиновен, С виновен
B: С невиновен, A виновен
С: С невиновен, B невиновен
Для начала, С не может быть лжецом, т.к. в противном случае он бы утверждал, что и В и С виновны.
Далее, если С говорит правду, то А виновен, и В придется ему противоречить, т.к. если В лжец, то С виновен, а мы знаем, что виновен А, а если В нормальный, либо А и С виновный, чего быть не может, либо А и С невиновны, что противоречит С. 
Получаем, что С нормальный.
Тогда либо В правда, тогда А виновен, и лжец, и это вызовет противоречие с С (из его слов выходит, что либо В, либо С виновен).
Либо А правда, тогда С виновен, и В лжец, что противоречий не вызывает. ответ таков - А сказал правду оба раза, В лжец, а С один раз соврал и один раз сказал правду. И при этом С утаил клад. Тогда можно спокойно отпускать Смита и Джона.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота