egorkarevyakin
01.10.2022 00:28

Контрольные вопросы № 7 1. Для каких целей служат редакторы текстов (в частности, WordPad)?
2. Какие шрифты используются в Windows-среде?
3. Как по названию шрифта можно определить, содержит ли он буквы русского алфавита?
4. Какие начертания шрифта вы знаете?
5. Каковы максимальный и минимальный размеры шрифтов в Windows?
6. Можно ли задать для фрагмента текста несколько разных шрифтов одновременно?
7. Что понимается под форматированием абзацев?
8. Каковы преимущества работы с линейкой?
9. Как можно разбить текст на страницы?
10. Можно ли избежать сохранения на диске ошибочно сделанных, изменений текста? Сохраняется ли предыдущая версия после записи на диск новой версии текста?
11. Осуществляет ли текстовый редактор перенос отдельных слов, частей слов?
12. Какие маркировки текста вы знаете? Зачем нужно уметь работать с фрагментами текста?
13. Чем отличаются действия пунктов меню Вырезать и Копировать?
14. Как долго хранится фрагмент в Буфере обмена? В каком случае он уничтожается?
15. Как выполнить замену одного слова?
16. Каково назначение программы Таблица символов?
17. Как можно вставлять в текст фрагмент рисунка, новый рисунок, существующий графический файл?
18. Какие параметры можно задать для выводимого на печать документа?

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
23v
15.05.2021 06:04

Алгоритмическая структура (Разветвляющий алгоритм) – это алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.

Во многих случаях требуется, чтобы при одних условиях выполнялась одна последовательность действий, а при других - другая.

Ветвление обеспечивающая выполнение определённой команды (набора команд) только при условии истинности некоторого логического выражения, либо выполнение одной из нескольких команд (наборов команд) в зависимости от значения некоторого выражения.

0,0(0 оценок)
Ответ:
камилла326
10.05.2023 14:59
Код написан ниже. 
Пример ввода:
4
x100+12mamba+11=barry-3
7x100-4barry=4
barry=x100-2mamba
4=2+2
Пример вывода:
barry=6
mamba=-1
x100=4

#include <iostream>
#include <map>
#include <string>
#include <set>
#include <vector>
#define abs(x) ((x)<0 ? -(x) : (x))
using namespace std;
typedef map<string, double> equation;
equation parseLine(const string &str, set<string> &vars) {
   map<string, double> eqn;
   bool left_part = true;
   size_t i = 0;
   while (i < str.length()) {
      double n = 0;
      bool isNeg = !left_part;
      bool isCoeffOmitted = true;
      string var = "";
      if (str[i] == '='){
         left_part = false;
         i++;
         continue;
      }
      if ((str[i] == '-') || (str[i] == '+'))
      {
         if (str[i] == '-') isNeg = !isNeg;
         i += 1;
      }
      while ((i < str.length()) && (str[i] >= '0') && (str[i] <= '9')) {
         n = 10 * n + (str[i] - '0');
         isCoeffOmitted = false;
         i++;
      }
      if ((i < str.length()) && (str[i] == '.')) {
         int exp = 0;
         i++;
         while ((i < str.length()) && (str[i] >= '0') && (str[i] <= '9')){
            n = 10 * n + (str[i] - '0');
            exp++;
            i++;
         }
         for (int j = 0; j < exp; n /= 10., j++);   
      }
      while ((i < str.length()) && (str[i] != '+') && (str[i] != '=') && (str[i] != '-')){
         var += str[i];
         i++;
      }
      if (isCoeffOmitted) n = 1;
      if (isNeg) n = -n;
      eqn[var] += n;
      vars.insert(var);
   }
   return eqn;
}
void GaussJordan(vector<equation> &eqns, const vector<string> &vars) {
   for (size_t i = 0; i < vars.size(); i++) {
      size_t j = i;
      while ((j < eqns.size()) && (eqns[j][vars[i]] == 0))
         j++;
      if (j == eqns.size()) throw "Underdetermined system";
      if (j != i) swap(eqns[i], eqns[j]);
      double elem = eqns[i][vars[i]];
      for (equation::iterator it = eqns[i].begin(); it != eqns[i].end(); it++)
         it->second /= elem;
      for (j = i + 1; j < eqns.size(); j++){
         elem = eqns[j][vars[i]];
         for (equation::iterator it = eqns[i].begin(); it != eqns[i].end(); it++)
            eqns[j][it->first] -= elem * eqns[i][it->first];
      }
   }
   for (size_t i = vars.size(); i < eqns.size(); i++)
      for (equation::iterator it = eqns[i].begin(); it != eqns[i].end(); it++)
         if (abs(it->second) > 1e-12) throw "No solutions";
   for (size_t i = vars.size() - 1; i > 0; i--) {
      for (size_t j = 0; j < i; j++) {
         eqns[j][""] -= eqns[j][vars[i]] * eqns[i][""];
         eqns[j][vars[i]] = 0;
      }
   }
}
void printAnswer(vector<equation> &eqns, vector<string> &vars) {
   for (size_t i = 0; i < vars.size(); i++)
      cout << vars[i] << "=" << -eqns[i][""] << endl;
}
int main() {
   set<string> vars;
   vector<equation> eqns;
   size_t n = 0;
   cin >> n;
   for (size_t i = 0; i < n; i++) {
      string t;
      cin >> t;
      eqns.push_back(parseLine(t, vars));
   }
   vars.erase("");
   vector<string> vars_list(vars.begin(), vars.end());
   try {
      GaussJordan(eqns, vars_list);
   }
   catch (char const *e) {
      cout << e;
      return 1;
   }
   printAnswer(eqns, vars_list);   
   return 0;
}
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота