Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
2 / 3 / 3
Регистрация: 02.11.2010
Сообщений: 129

Только операции и функции для работы с символами, строками и целыми числами

17.02.2011, 18:41. Показов 3660. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пусть ЭВМ не умеет работать с вещественными числами, а имеет только операции и функции для работы с символами, строками и целыми числами.
Реализовать функции для:
а) ввода;
б) вывода;
в) сложения;
г) вычитания;
д) умножения.
вещественных чисел. (Числа вводятся как строки, разделяются на целую и дробную части, и над ними, как над целыми числами, с учетом межразрядных переносов, выполняются операции.))

Суть задачи ясна, и как делать в принципе тоже, но мне не понятно как сделать ввод чисел, т.к. вещественные комп "не знает", а без вещественных надо целую часть и дробную вводить отдельно, и над этими частями проводить действия, а если
Целая\дробная часть
...0\5
+
...0\5
=
...0\10
а надо
=
...1\0
как их объеденить?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.02.2011, 18:41
Ответы с готовыми решениями:

Функции библиотеки для работы со строками и символами
С помощью текстового редактора создать файл, содержащий текст, длина кото¬рого не превышает 1000 символов (длина строки текста не должна...

15. Создать класс LongLong для работы с целыми числами. Число должно быть представлено двумя полями.Реализовать арифметические операции
Добрый вечер,вот задание: Создать класс LongLong для работы с целыми числами из 64 бит. Число должно быть представлено двумя полями: long...

Арифметические команды для работы с целыми числами
Результат выведите в шестнадцатеричном и двоичном виде.

6
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
17.02.2011, 23:18
vinternete, можно представить действительное число, как массив из 2-х целых чисел, или как структуру из тех же 2-х целых, или как класс с 2-мя целыми полями данных....

Добавлено через 1 минуту
Написать функцию сложения и т.д или перегрузить операции
0
2 / 3 / 3
Регистрация: 02.11.2010
Сообщений: 129
20.02.2011, 19:10  [ТС]
думал, что простая задача, но начал писать и наткнулся на множество непонятностей. Если у кого есть возможность написать эту задачку хотя бы с парой функций (+ и *) а я по примеру допишу.
0
2 / 3 / 3
Регистрация: 02.11.2010
Сообщений: 129
20.02.2011, 19:38  [ТС]
Пусть ЭВМ не умеет работать с вещественными числами, а имеет только операции и функции для работы с символами, строками и целыми числами.
Реализовать функции для:
а) ввода;
б) вывода;
в) сложения;
г) вычитания;
д) умножения.
вещественных чисел. (Числа вводятся как строки, разделяются на целую и дробную части, и над ними, как над целыми числами, с учетом межразрядных переносов, выполняются операции.))
Если кто может помочь с задачей помогите, т.к. не могу даже представить как её сделать, буду очень благодарен.
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
20.02.2011, 19:57
Мне больше нравятся функции...
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
typedef { int c, d; } Dec;
Dec Add(Dec a, Dec b)
{ Dec r; int la, lb, pw, x;
   r.c = a.c + b.c;
   la = 0;
   x = a.d;
   while (x!=0) { la++; x /=10; } // Подсчет кол-ва цифр
   lb = 0;
   x = b.d;
   while (x!=0) { lb++; x /=10; } // Подсчет кол-ва цифр
   if (la < lb) while(la<lb) { a.d *= 10; la++; } // Выравнивание кол-ва цифр
   else  while(lb<la) { b.d *= 10; lb++ }
   x = r.d = a.d + b.d;
   pw = 1;
   for(i=0; i<la; i++) pw *= 10;
   if (x / pw) > 0)  { r.c++; r.d %= pw; }
   return r;
}
Как-то так. Моделируем работу школьника 3-го класса. Теперь понятно, что школьникам приходится несладко
1
2 / 3 / 3
Регистрация: 02.11.2010
Сообщений: 129
24.02.2011, 17:01  [ТС]
Числа вводятся как строки, разделяются на целую и дробную части, и над ними, как над целыми числами, с учетом межразрядных переносов, выполняются операции.))
как это осуществить? число вводится так
строка: 123(./,)456
получаем:
c1=123
d1=456
строка2: 345(,/.)0321
c2= 345
d2=0321 ???????
или я чего то недопонимаю?
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
07.03.2011, 12:15
Ты прав. Это я недоучел. Придется хранить действительное число в виде трех целых чисел.
Третье указывает кол-во знаков после запятой или кол-во лидирующих нулей в дробной части.
Соответственно и алгоритм несколько усложняется и у нас еще больше оснований пожалеть третьеклассника и изумиться - а как же это ему удается?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.03.2011, 12:15
Помогаю со студенческими работами здесь

DLL для работы с 64-разрядными целыми числами
Подскажите DLL для работы с 64-разрядными целыми числами (интересуют операции сложения и вычитания). Спасибо!

Арифметические команды для работы с целыми числами
Составьте программу, вычисляющую значение арифметического выражения. Результат выведите в шестнадцатеричном и двоичном виде. \huge...

Hex для работы с беззнаковыми целыми шестнадцатеричными числами
Для С#: Создать класс Hex для работы с беззнаковыми целыми шестнадцатеричными числами, используя для представления числа массив из 100...

Вариант задания реализовать в виде функции, использующей для работы со строкой только указатели и операции вида *p++,
Функция производит двоичный поиск места размещения нового элемента в упорядоченном массиве и возвращает указатель на место включения нового...

Создать класс LongLong для работы с целыми числами из 64 бит - C++
Добрый вечер,вот задание: Создать класс LongLong для работы с целыми числами из 64 бит. Число должно быть представлено двумя полями: long —...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru