Вопрос задан 05.07.2023 в 17:02. Предмет Другие предметы. Спрашивает Станько Настя.

Помогите с программированием С++ Разработать программу на языке C++ для решения следующей задачи.

Заданы два числа — A и B , первое в системе счисления с основанием p , второе в системе счисления с основанием q . Вычислить значение по указанной формуле и вывести его на экран в десятичной системе счисления и системе счисления с основанием r. p=7 q=4 r=5 Нужно написать программу именно на С++
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Ганичев Игнат.

#include <iostream>

#include <cmath>

#include <vector>

using namespace std;

int to_10(int num, int syst){

   int res = 0,cnt = 0;

   while(num > 0){

       res += num % 10 * pow(syst,cnt);

       cnt++;

       num /= 10;

   }

   return res;

}

int to_r(int num,int r){

   string s;

   while(num > 0){

       s += num % r + '0';

       num /= r;

   }

   reverse(s.begin(),s.end());

   return stoi(s);

}

signed main() {

   int a,b,p=7,q=4,r=5;

   cin >> a >> b;

   a = to_10(a,p);

   b = to_10(b,q);

   int ans = pow(a,2) + 2 * a + pow(b,2);

   cout << ans << "(10)\n";

   ans = to_r(ans,r);

   cout << ans << "(" << r << ")\n";

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, вот пример программы на C++, которая решает данную задачу:

cpp
#include <iostream> #include <cmath> int convertToDecimal(int number, int base) { int decimalNumber = 0; int multiplier = 1; while (number > 0) { int digit = number % 10; decimalNumber += digit * multiplier; multiplier *= base; number /= 10; } return decimalNumber; } int main() { int p = 7; int q = 4; int r = 5; int A, B; std::cout << "Enter the value of A in base " << p << ": "; std::cin >> A; std::cout << "Enter the value of B in base " << q << ": "; std::cin >> B; int decimalA = convertToDecimal(A, p); int decimalB = convertToDecimal(B, q); int result = abs(decimalA - decimalB); std::cout << "Result in decimal: " << result << std::endl; // Convert the result to base r std::string resultInBaseR = ""; while (result > 0) { int remainder = result % r; resultInBaseR = std::to_string(remainder) + resultInBaseR; result /= r; } std::cout << "Result in base " << r << ": " << resultInBaseR << std::endl; return 0; }

Программа принимает значения A и B в исходных системах счисления, преобразует их в десятичную систему счисления, вычисляет разницу и выводит результат как в десятичной, так и в системе счисления с основанием r.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Другие предметы

Последние заданные вопросы в категории Другие предметы

Задать вопрос