Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Boobear
0 / 0 / 0
Регистрация: 18.11.2013
Сообщений: 3
#1

Калькулятор, складывающий восьмеричные числа - C++

09.12.2013, 01:48. Просмотров 481. Ответов 2
Метки нет (Все метки)

Задание звучит так: Написать калькулятор, складывающий восьмеричные числа.
Восьмеричные числа – не более трех разрядов, все разряды задаются обязательно: 007+015=024. У
пользователя запрашивается пара чисел, печатается ответ.


Не могу понять как записать перевод из десятичной обратно в восьмеричную. По идее, нужно считывать каждую цифру, а вот как это сделать не пойму. Помогите кому не сложно. Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2013, 01:48     Калькулятор, складывающий восьмеричные числа
Посмотрите здесь:

Класс, складывающий комплексные числа - C++
Всем привет!) недавно начал пытаться программировать в СИ++ такая задача.Нужно создать класс,который складывает 2 комплексных числа. ...

Создать класс, который запоминает целые восьмеричные числа в виде строк - C++
Всем доброго времени суток. Столкнулся с проблемой,что не могу создать класс, который запоминает целые восьмеричные числа в виде строк! В...

Как написать программу-калькулятор чтобы было можно додавать 2 числа, 3 числа, 4 числа, n чисел? - C++
Как написать программу-калькулятор чтобы было можно додавать 2 числа, 3 числа, 4 числа, n чисел?

Вывести на экран содержимое файла с программой на С, подсвечива другим цветом все восьмеричные константы. - C++
Вывести на экран содержимое файла с программой на С, подсвечива другим цветом все восьмеричные константы. Имею представление об алгоритме...

Разработать программу используя класс калькулятор с полями x, y - целые числа и методы +, -, /, *) и вывода ре - C++
Разработать программу используя класс калькулятор с полями x, y - целые числа и методы +, -, /, *) и вывода результата.

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

Ввести в программу строку (числа, латиница), считать только числа, записать числа в массив - C++
Нужна помощь! Срочно! Нужно ввести в программу строку (числа, латиница), считать только числа, записать числа в массив. Помогите,...

Даны два числа. Если квадратный корень из второго числа меньше первого числа, то увличить второе число в пять раз с++ - C++
Даны два числа. Если квадратный корень из второго числа меньше первого числа, то увличить второе число в пять раз с++ Добавлено через...

калькулятор - C++
делаю калькулятор...столкнулся с проблемкой...при вычислении чисел с плавающей точкой...как можно реализовать

Калькулятор - C++
#include "stdafx.h" #include <stdio.h> #include <iostream> #include <conio.h> using namespace std; int main() { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 1,996
09.12.2013, 08:28     Калькулятор, складывающий восьмеричные числа #2
ну либо перевестив char и считывать как символы либо просто с помощью x%10^(1...n)
Boobear
0 / 0 / 0
Регистрация: 18.11.2013
Сообщений: 3
15.12.2013, 23:29  [ТС]     Калькулятор, складывающий восьмеричные числа #3
я пытался сделать, у меня вот получилось это. она не работает, мне кажется здесь какой-то бред написан((
Подскажите как переделать



/*calculator*/
#include <stdio.h>

int main()
{
char s1[10] = {0};
char s2[10] = {0};
char out3 = 0;
char out2 = 0;
char out1 = 0;
int a = 0;
int b = 0;
printf ("Vvedite znacheniya s1\n");
scanf_s ("%s", s1);
printf ("Vvedite znacheniya s2\n");
scanf_s ("%s", s2);

if (s1[1] == '\0')
{

if(('0' <= s1[0]) && (s1[0]<= '9'))
{
a += s1[0] - '0';
}
}
else
{

if(('0'<= s1[0]) && (s1[0] <= '9'))
{
a += (s1[0] - '0') * 8;
}

if(('0'<= s1[1]) && (s1[1] <= '9'))
{
a += s1[1] - '0';
}
}
if (s2[1] == '\0')
{

if (('0' <= s2[0]) && (s2[0] <= '9'))
{
b += s2[0] - '0';
}
}
else
{

if(('0' <= s2[0]) && (s2[0] <= '9'))
{
b += (s2[0] - '0') * 8;
}

if(('0'<= s2[1]) && (s2[1] <= '9'))
{
b += s2[1] - '0';
}
}
a = a + b;
out3=a%8;
a=a/8;
out2=a%8;
a=a/8;
out1=a;

if(out1 != '0') printf("%c%c%c\n", out1, out2, out3);
else if(out2 != '0') printf("%c%c\n", out2, out3);
else printf ("%c\n", out3);
getchar();
getchar();
return 0;
getchar();
}
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru