Jimitapark8
22.05.2023 02:33

Здравствуйте, программисты. Я написал "Калькулятор дробный", и у меня не работает, если я хочу сложить дроби с разными знаменателями Если что, язык C++.
#include
#include
using namespace std;
struct fraction {
int ch, zn;
char dir;
};
int Add_n(int n1, int n2, int m1, int m2);
int Add_m(int n1, int n2, int m1, int m2);

int main()
{

fraction f1, f2;
string str1;
int m, n;
cout << "Введите числитель 1 дроби ";
cin >> f1.ch;
cout << "Введите знаменатель 1 дроби ";
cin >> f1.zn;
cout << "Введите знак: (Addition, Subtraction, Multiplication, Division) ";
cin >> f1.dir;
cout << "Введите числитель 2 дроби ";
cin >> f2.ch;
cout << "Введите знаменатель 2 дроби ";
cin >> f2.zn;
// switch(f1.dir)
//{
//case '+':
m = Add_m(f1.zn, f2.zn, f1.ch, f2.ch);
n = Add_n(f1.zn, f2.zn, f1.ch, f2.ch);
str1 = "Выражение равно: ";
//break;
//}
cout << str1; '\n';
cout << "Числитель " << m << '\n';
cout << "Знаменатель " << n;
}

int Add_n(int n1, int n2, int m1, int m2) {
int ret;
if (n1 = n2) {
ret = n1;
}
else {
ret = n1 * n2;
}
return ret;
}

int Add_m(int n1, int n2, int m1, int m2) {
int ret;
if (n1 = n2)
ret = m1 + m2;
else if (n1 != n2)
ret = m1 * n2 + m2 * n1;

return ret;
}

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
marktopskiy34567
04.07.2022 06:15
// PascalABC.NET 3.3, сборка 1590 от 03.12.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('n=');
  var a:=ArrRandom(n,-50,50); a.Println;
  var m:=n-1;
  var found:=false;
  for var i:=0 to m do begin
    for var j:=0 to m do
      if i=j then continue
      else begin
        for var k:=0 to m do
          if (k=i) or (k=j) then continue
          else
            if a[i]+a[j]+a[k]=0 then begin
              Println('Решение:',a[i],a[j],a[k]);
              found:=true;
              break
              end;
        if found then break
        end;
    if found then break
    end;
  if not found then Writeln('Нет нужной тройки чисел')
end.

Примеры
n= 13
-25 -29 41 -19 -9 50 -23 36 33 23 48 -6 -5
Решение: -25 -23 48

n= 8
-33 -23 -3 -5 -5 -20 -22 34
Нет нужной тройки чисел
0,0(0 оценок)
Ответ:
FenrisYT
04.07.2022 06:15
Var i,j,k,n,sum:integer;
 input,output:text;
a:array[1..100] of integer;
flag:boolean;
begin flag:=false;
Assign(Input,'d.in');
reset(input);
readln(input,n);
assign(output, 'd.out');
rewrite(output);
writeln('Input elements');
readln (n);
for i:=1 to n do read(a[i]);
for i:=1 to n do 
for j:=1 to n do 
for k:=1 to n do 
if (i<>j) and (j<>k) and (i<>k) then
 if a[i]+a[j]+a[k]=0 
then
begin
writeln (output,'Yes');
flag:=true;
halt;
end;
if flag=false then writeln(output,'No');
close(input);
close(output);
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота