Var a,b,c,d: integer; begin writeln('введите числа a,b,c,d); readln(a,b,c,d); if (a=b) and (b=c) and (c=d) then writeln('все числа равны'); else if (a=b) or (b=c) or (c=d) or (a=d) then begin write ('только'); writweln('два три числа равны'); end else writeln('все числа разные'); end.
Boss5519
29.07.2020
Const n=5; var m: array[1..n] of byte; function itog(): real; var i,max,min,s: byte; begin s: =m[1]; max: =s; min: =s; for i: =2 to n do begin s: =s+m[i]; if max< m[i] then max: =m[i] else if min> m[i] then min: =m[i] end; s: =s-max-min; itog: =s/(n-2) end; var i: byte; begin writeln('введите экспертные оценки'); for i: =1 to n do read(m[i]); writeln('итоговый равен ',itog: 4: 2) end. тестовое решение: введите экспертные оценки 4 4 5 3 5 итоговый равен 4.33
Ушакова1902
29.07.2020
Код написан ниже. пример ввода: 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. { 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. & & (str[i] > = '0') & & (str[i] < = '9')) { n = 10 * n + (str[i] - '0'); iscoeffomitted = false; i++; } if ((i < str. & & (str[i] == '.')) { int exp = 0; i++; while ((i < str. & & (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. & & (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. & & (eqns[j][vars[i]] == 0)) j++; if (j == eqns. 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; { 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. vars.; try { gaussjordan(eqns, vars_list); } catch (char const *e) { cout < < e; return 1; } printanswer(eqns, vars_list); return 0; }
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Найти максимальное из четырех чисел .составить программу на языке паскаль